小米路由内核开发环境搭建
来自Jack's Lab
当前路由刷入的固件版本为 0.4.58
则先从当前版本固件内 mkxqimage -x 解压出 vmlinuz.trx 去除 TRX 头:
comcat@jackslab:/work/openwrt/xiaomi/rom/0.4.58$ dd if=vmlinuz.trx of=vmlinuz bs=1 skip=28 记录了2834404+0 的读入 记录了2834404+0 的写出 2834404字节(2.8 MB)已复制,4.10377 秒,691 kB/秒
得到的 vmlinuz 是一个 LZMA 压缩过的内核+initramfs,Build 日期为 Wed Apr 30 18:03:21 CST 2014 的CFE是可以直接加载后启动的(刷过 0.4.92版本固件的,都是这个版本的CFE)
设置 nvram 参数 flag_tftp_bootup=on,则打开 CFE 首先尝试从 tftp server 加载内核:
root@XiaoQiang:/# nvram get flag_tftp_bootup off root@XiaoQiang:/# nvram set flag_tftp_bootup=on root@XiaoQiang:/# nvram commit