百问网(100ask)提供的烧写工具的原理
具体的实现原理见链接 http://wiki.100ask.org/100ask_imx6ull_tool
为了防止上面这个链接失效,我还对上面这个链接指向的页面保存成了mhtml
文件,这个mhtml
文件的百度网盘下载链接:
https://pan.baidu.com/s/1DCNVMu5hjsedasyMGM35gA?pwd=t6sx
视频讲解链接 https://www.bilibili.com/video/BV1zV411U7H9/?p=14&vd_source=8fb767d1739ea6b35c7177ba909eed36
大致的实现原理我梳理一下如下:
NXP公司给IMX6ULL提供的烧写工具mfgtools缺点多:既不能单独烧写bootloader、内核、设备树,烧写速度还慢,所以有必要另外开发一个烧写工具。
百问网开发的烧写工具的原理概括如下:
借助IMX6ULL本身支持USB启动的特点,将IMX6ULL设置为USB启动后,首先它会运行固化在芯片内部的程序imx6ull boot ROM
,我们可以借助这个程序通过SDP(Serial Downloader Mode)【串行下载模式】把某个特制的u-boot程序发送到RAM(内存)中,然后开始运行这个特制的u-boot,这个特制的u-boot运行后会进入Fastboot模式,进入Fastboot模式后就能接收来自PC端的各种Fastboot命令,进而就可以通过Fastboot(FB)协议实现我们理想中的烧写工具的各种功能,示意图如下:
关于Fastboot(FB)协议以及u-boot如何进入Fastboot模式的详细介绍见我的另一篇博文 https://blog.youkuaiyun.com/wenhao_ir/article/details/145985144
关于Fastboot(FB)协议以及u-boot如何进入Fastboot模式的详细介绍见我的另一篇博文 https://blog.youkuaiyun.com/wenhao_ir/article/details/145985144
NXP官方已经