全志h3linux移植教程,Openwrt1806在全志H3上移植(银杏icore5)

本文详细介绍了如何将OpenWrt 18.06移植到全志H3平台上的icore5板子,包括Linux内核源码的准备、打补丁、配置uboot以及最终的验证过程。在移植过程中,作者强调了源码树的维护、补丁的制作和应用,以及uboot配置的更新。经过一系列步骤,成功启动并运行了系统。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录下的linux内核源码压缩包解压到上述路径,并且将<.>目录内的补丁按照补丁的编号依次打上,如果出错则退出。准备好源码树后,就可以针对icore5,在dts目录下添加自己板子的设备树。直接添加的代码,在运行 make target/linux/clean时会被删除,只建议在测试时使用,测试通过后一定要制作补丁,否则代码丢了就得不偿失。

b. 打补丁添加

由上述步骤可知,编译时,会自动打补丁,也就是我们可以将补丁放到指定目录中,让系统自动打,这样也不会污染源码,更方便后续维护。制作补丁的方法,简单点就是准备好源码树后,进入源码目录,执行quilt new num-new.patch; 然后通过quilt edit 修改代码或者添加代码,最后执行quilt refresh生成补丁,将补丁拷贝至<.>目录内即可。

重新make menuconfig 选择icore5板子,编译;失败,看提示,应该时uboot缺失,因为更改了目标,uboot中还没有添加相应的规则。类似的,uboot 在<.>目录,发现该目录下也有个patch目录,是的,这个目录跟linux源码patch目录的作用时一样的。首先修改Makefile,添加icore5的配置

define U-Boot/icore5

BUILD_SUBTARGET:=cortexa7

NAME:=Icore5

BUILD_DEVICES:=sun8i-h3-icore5

endef

并在下边的UBOOT_TARGETS中添加icore5, 注意定义的名字应该与 **_defconfig 一致,如上述定义,我们应该在uboot源码树中添加icore5_defconfig; 这样在编译uboot时就会自动执行 make icore5_defconfig.

同样的,我们建议在uboot下打补丁修改代码。

最终验证

在目录添加配置 ,当前只有rgmii phy这一路通了,就先配一路, 内容如下:

config interface 'loopback'

option ifname 'lo'

option proto 'static'

option ipaddr '127.0.0.1'

option netmask '255.0.0.0'

config globals 'globals'

option ula_prefix 'fd71:468e:86c5::/48'

config interface 'lan'

option type 'bridge'

option ifname 'eth0'

option proto 'static'

option netmask '255.255.255.0'

option ip6assign '60'

option ipaddr '192.168.10.2'

config device 'lan_eth0_dev'

option name 'eth0'

option macaddr '0c:ef:af:c3:14:9e'

最终在bin目录下生成了 ext4和squashfs两种类型的镜像,我选择ext4镜像,解压到当前目录,使用dd命令下载到sd卡中,插上sd卡,使用dd命令将镜像烧录在sd卡起始位置。系统跑起来了:

U-Boot SPL 2017.11 (Dec 26 2019 - 13:02:32)

DRAM:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值