OPENWRT系统移植
文章目录
前言
在这里,我们使用的是新塘官方的opewrt系统版本。本人主要是想用一下新塘自己移植的系统,对比下跟自己之前系统的功能
一、移植准备
这边我建议,自己克隆一份官方的仓库,然后修改下载的地址。不然下载的时候会出问题。
openwrt仓库地址
https://gitee.com/OpenNuvoton/NUC980-OpenWrt.git
内核地址
https://gitee.com/OpenNuvoton/NUC980-linux-4.4.y.git
UBOOT地址
https://gitee.com/OpenNuvoton/NUC970_U-Boot_v2016.11.git
修改下载的路径(以内核举例)
二、参考快速编译手册并执行指令
1.手册路径
Nuvoton/docNUC980 OpenWrt Quick Start Guide(就在官方的工程里面),你们直接参考这个也可以
但是我没有参考太多,我是按照我之前的编译经验来的
2.执行指令
# 拷贝工程
# git clone https://github.com/OpenNuvoton/NUC980-OpenWrt.git
# ./scripts/feeds update -a
# ./scripts/feeds install -a
# 拷贝配置文件
# cp Nuvoton/config/config_nuc980_iot .config
# 自行配置,然后保存
# make menuconfig
3.修改输出串口
修改控制台串口 (make kernel_menuconfig)
修改设备树中flash的时钟频率(这个主要是看你用的flash是哪个,我用的flash是mt29f,所以,我改了这个)
三、编译烧写
1.编译
make -j16 V=s (我是16核编译,你们自行决定)
2.烧写uboot-spl.bin
3.烧写uboot.bin
4.烧写环境变量env
5.烧写设备树文件
6.烧写固件
7补充(修改环境变量)
baudrate=115200
bootdelay=1
stderr=serial
stdin=serial
stdout=serial
setspi=sf probe 0 30000000
loaddtb=sf read 0x1400000 0x180000 0x20000
loadkernel=sf read 0x7fc0 0x200000 0xE00000
bootcmd=run setspi;run loaddtb;run loadkernel;bootm 0x7fc0 - 0x1400000
mtdparts=mtdparts=nand0:0x180000@0x0(u-boot),0x20000@0x180000(dtb),-@0x200000(firmware)
#主要是这个地方修改串口,其它基本不动
bootargs=noinitrd rootfstype=squashfs,ubifs console=ttyS0,115200n8 rdinit=/sbin/init mem=64M mtdparts=nand0:0x180000@0x0(u-boot),0x20000@0x180000(dtb),-@0x200000(firmware)
#一定要完全把flash擦除干净再下载,不然会出现序列号不匹配的问题
四、验证
总结
这一章主要介绍了从官方代码库中拉取代码编译下载。后序更新一些在新版本下的软件和硬件开发。欢迎大家评论,有问题提出来,一定回复。