在这里,小编和大家分享一下如何用arm-6410实现u-boot的移植,希望能够帮助更多的初学者朋友。(小编在这里是烧写到开发板的nand flash中,这点大家要注意)
在编译之前,我们要准备以下几个文件:
u-boot_nand-ram256.bin zImage dnw2 dnw2.c
把文件准备好之后,放到自己选择的文件夹(小编这里是放在主目录下),下面我们将来进行相应的操作:
1.首先我们把开发板打到sd卡的位置,打开两个终端(终端1是用来运行串口程序,终端2选择要等待USB下载的选项)
终端2:
$ sudo minicom
然后把开发板拨到nand flash的位置,按一下复位按钮,按下之后要在3秒之内按下任意键,否则u-boot会直接加载,结果就不能得到我们想要的。实现以下操作会在终端现实以下内容:
<pre name="code" class="html">##### FriendlyARM U-Boot(2011-10, NAND) for 6410 #####
[f] Format the nand flash
[v] Download u-boot.bin
[k] Download Linux/Android kernel
[y] Download root yaffs2 image
[u] Download root ubifs image
[a] Download Absolute User Application
[n] Download Nboot.nb0 for WinCE
[w] Download WinCE NK.nb0
[s] Set the boot parameter of Linux
[b] Boot Linux
[q] Quit to shell
NAND(SLC): 256 MiB, RAM: 256 MiB
LCD type, firmware version: 3 1426
Enter your Selection:
按k键 (进行内核的烧写)
NAND(SLC): 256 MiB, RAM: 256 MiB
LCD type, firmware version: 3 1426
Enter your Selection:k
Downloading Linux/Android Kernel from USB...
OTG cable Connected!
Download address 0xc0000000
等待USB的烧写
终端1:
在进行编译之前我们需要下载usb.h头文件
$ sudo apt-get install libusb-dev
$ gcc -o dnw dnw2.c -lusb
$ sudo ./dnw zImage 0 有时候会执行失败,要重新对USB线插拔,再操作
终端2:
按Y或U键
终端1:
$ sudo ./dnw rootfs_rtm_6410.img 0 同理,有时候会失败,要重新对USB线插拔,再操作
终端2:
按b键,启动Linux
在遇到卡住的地方再对开发板进行复位即可
这样我们就实现了u-boot的移植了