Orangepi 3 全志H6 uboot的编译与烧写

环境:Ubuntu18.04 设备:OrangePi 3 16G存储卡

OrangePi_SDK : https://github.com/orangepi-xunlong/OrangePi_Build


使用OrangePi_SDK中shell脚本编译uboot

1)从githun上克隆OrangePi_Build,运行其中的Build_OrangePi.sh按提示选择板型、系统等信息之后会开始从git克隆所需要的源码。

2)为了处理github克隆30多k的速度,把https://github.com/orangepi-xunlong上相关仓库全部Fork一下,然后导入到码云中。接下来修改H6SDK_BuildEnvironment.sh:
把最后一行的ORANGEPI_GIT更改为我自己的码云链接

ORANGEPI_GIT="https://gitee.com/liu_haoqian"

重新运行Build_OrangePi.sh,此时下载速度从30K提高到了800k左右。

3)完成下载后,进入到OrangePiH6_Linux4.9或OrangePiH6_mainline中运行build.sh,在图形化界面中完成配置。

在这里插入图片描述在这里插入图片描述
在这里插入图片描述4)编译成功后,再次运行build.sh 选择“Updata uboot”就可以把编译文件烧写到SD卡中。

5)测试uboot:用USB2TTL连上板子的调试串口,可以看到uboot启动信息。
在这里插入图片描述在这里插入图片描述


不使用OrangePi_SDK中shell脚本编译uboot

为了方便以后移殖uboot,把OrangePi_SDK中的uboot拿出来单独进行编译,不使用它提供的shell脚本。

1)把OrangePi_SDK中的uboot源码和工具链复制到新的文件夹下。
在这里插入图片描述2)打开终端,cd到uboot目录下,清理工程:

make -j4 ARCH=arm CROSS_COMPILE=/home/lhq/projects/H6_uboot/toolchain/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu- distclean

交叉编译器根据自己路径修改

3)编译生成.config文件

make -j4 ARCH=arm CROSS_COMPILE=/home/lhq/projects/H6_uboot/toolchain/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu- orangepi_3_defconfig

在这里插入图片描述4)编译uboot

make -j4 ARCH=arm CROSS_COMPILE=/home/lhq/projects/H6_uboot/toolchain/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu- V=1

去调V=1可以关闭详细编译信息。

在这里插入图片描述编译完成后,生成了烧写到SD卡的文件:spl/sunxi-spl.bin和u-boot.itb。

5)烧写uboot:使用以下指令将spl/sunxi-spl.bin和u-boot.itb依次烧写到SD中:

sudo dd if=spl/sunxi-spl.bin of=/dev/sdb bs=1024 seek=8
sudo dd if=u-boot.itb of=/dev/sdb bs=1024 seek=40

6)测试:将SD卡插入OrangePi3,连接调试串口,输出正常。成功从emmc启动内核。

在这里插入图片描述

  • 3
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
全志H3 Uboot是一种嵌入式开源引导加载程序,被广泛应用于全志H3系列芯片的启动过程中。它的主要功能是在开机时加载操作系统并进行一系列初始化配置。 全志H3芯片是一款低功耗高性能的嵌入式处理器,常用于智能电视盒子、车载导航和物联网设备等领域。而Uboot作为引导加载程序,是首个被加载到处理器的主要程序,它负责引导系统启动和设备初始化过程。 Ubboot主要的执行流程包括硬件初始化、设备配置、文件系统加载和操作系统启动。在硬件初始化阶段,它通过设置各个外设的寄存器进行初始化,确保硬件的正常工作。接着,Uboot会根据预设的配置对系统进行初始化,包括网络配置、环境变量设置和设备树加载等。然后,它会尝试从存储设备加载文件系统,如SD卡或闪存驱动器,并解析启动映像文件。最后,Uboot会通过执行操作系统的启动命令将控制权交给操作系统内核,使系统正常启动。 全志H3 Uboot具有丰富的功能和灵活的配置选项,使开发者能够根据实际需求进行各种调试和优化。同时,它还支持网络引导和远程更新等功能,方便了系统的维护和更新。 总之,全志H3 Uboot是一种重要的引导加载程序,为全志H3系列芯片的启动和初始化提供了关键的支持。它的功能丰富,能够为系统开发者提供灵活的配置选项和调试手段,使系统的启动和维护更加方便高效。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值