打印
[应用方案]

Nuvoton NUC970 uBoot的介绍和使用

[复制链接]
996|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Nuvoton NUC970 uBoot的介绍和使用

使用特权

评论回复
沙发
carefull3357dc|  楼主 | 2021-12-24 08:40 | 只看该作者

1.U-Boot介绍
  U-Boot是一个主要用于嵌入式系统的开机加载程序,可以支持多种不同的计算机系统结构,包括ARM、MIPS、x86与68K。这也是一套在GNU通用公共许可证之下发布的自由软件。U-Boot支持下列功能:

网络下载:TFTP,BOOTP,DHCP
串口下载:s-record,binary(via Kermit)
Flash管理:抹除,读,写
Flash型别:SPI flash,NAND flash
內存工具:读,写,复制,比对
交互式shell:命令,脚本

NUC970/N9H30 U-Boot的版本是v2016.11从下面连接下载

http://www.denx.de/wiki/U-Boot/SourceCode

U-Boot官网上对各项功能有更详尽的介绍

http://www.denx.de/wiki/view/DULG/UBoot

使用特权

评论回复
板凳
carefull3357dc|  楼主 | 2021-12-24 08:41 | 只看该作者
2.目录构架

U-Boot的目录结构如下图



api:提供开发应用程序所需的API.
arch:包含CPU相关的源代码
NUC970/N9H30 CPU相关的源代码放在arch/arm/cpu/arm926ejs/nuc970.
board:包含板子相关的源代码
NUC970/N9H30板子相关的源代码放在board/nuvoton/nuc970_evb.
common:包含U-Boot命令以及一些各平台共同的源代码.
configs:各厂商提供的默认配置档
disk:磁盘分割相关源代码
doc:放置各式各样的README文件.
drivers:放置驱动程序源代码.
NUC970/N9H30的驱动程序源代码也是放在drivers目录下,例如Ethernet驱动程序就放在drivers/net/nuc900_eth.c
examples:放置一些示例.例如mips.lds就是MIPS的连接脚本
fs:存放各种档案文件系统.例如:FAT,yaffs2.
include:存放头文件以及配置档.NUC970/N9H30的配置档就放在include/configs/nuc970_evb.h
lib:放置各种函式库.
Licenses:存放GPL相关文件
net:存放网络相关的源代码.例如:tftp.c,ping.c,
post:针对没有提供hotkey的平台,提供post_hotkeys_pressed()的默认实作方法
scripts:提供编译与配置时可用到的脚本
test:存放一些测试程序,细节请参考test/README这份文件
tools:存放一些工具,例如mkimage就是一个产生图像档的工具。

使用特权

评论回复
地板
carefull3357dc|  楼主 | 2021-12-24 08:41 | 只看该作者
3.编译uBoot

清除所有的object code:# make distclean
产生默认配置(选择NUC970或N9H30默认配置,二择一):# make nuc970_defconfig (for NUC970)
编译uBoot:# make
4.编译产生的档案
编译成功后会产生Main U-Boot和SPL U-Boot:
Main U-Boot:完整功能的U-Boot
SPL U-Boot:将Main U-Boot从NAND flash搬到DDR执行
SPL U-Boot只有NAND boot时,才会用到;如果是SPI boot或eMMC boot只需要Main U-Boot
Main U-Boot和SPL U-Boot会分别产生在根目录以及子目录spl中:
Main U-Boot的档案会产生在根目录
u-boot - Elf执行档(可透过GDB或IDE下载)
u-boot.bin- binary file(可透过Nu-Writer刻录到NAND/SPI flash、eMMC中)
u-boot.map–连接对应档
SPL U-Boot的档案会产生在根目录底下的子目录spl中
u-boot-spl - Elf执行档(可透过GDB或IDE下载)
u-boot-spl.bin- binary file(可透过Nu-Writer刻录到NAND flash中)
u-boot-spl.map–连接对应档

使用特权

评论回复
5
carefull3357dc|  楼主 | 2021-12-24 08:42 | 只看该作者
4.烧录SPL U-Boot
烧录uBoot要使用到新唐的烧录工具Nu Writer。在Choose type处选择“NAND”,如下图。

使用特权

评论回复
6
carefull3357dc|  楼主 | 2021-12-24 08:43 | 只看该作者
接着设定Parameters,如下图,
Image Name:提取u-boot-spl.bin,
Image Type:提取uBoot,
Image encrypt:勾选Enable
Image executeaddress:0x填写200



使用特权

评论回复
7
carefull3357dc|  楼主 | 2021-12-24 08:43 | 只看该作者

然后按“Burn”键,如下图


使用特权

评论回复
8
carefull3357dc|  楼主 | 2021-12-24 08:44 | 只看该作者

出现一个刻录成功的视窗,如下图,

烧录完成后,接下来再烧录Linux的内核镜像。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

17

主题

384

帖子

3

粉丝