3网口som9331搭建openwrt问题结语言

Posted 52sunny

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3网口som9331搭建openwrt问题结语言相关的知识,希望对你有一定的参考价值。

项目使用到了串口透传功能,但是传统的IPC只支持单向串口控制,没办法,只能在使用的路由上做文章了

本项目采用的是som9331这个路由模块,原生的openwrt编译出来的fw只有一个网口可用,没办法,只能索要补丁,然后打补丁,编译


过程比较曲折,第一次尝试:

1 patch -p0 < [path]/som9331.patch

2 删除掉原来编译生成的tmp目录

3 make menuconfig选中ar7xx,target选中Openembed som9331

4 make -j4 V=s

生成的som9331的squashfs文件scp到路由板,sysupgrade 

问题出现了,再次重启之后路由板子启动时候内核pannic,启动到跟文件系统模块时,提示找不到rootfs.

幸好uboot还在,可以通过它来修复系统

恢复系统

找一个原来备份的squashfs,重新烧一次(网上有教程,不做赘述)

tftp 0x80000000 som9331_squashfs.bin

erase 0x9f020000 0x7c0000

cp.b 0x80000000 0x9f020000 0x7c0000


第二次尝试开始

多次编译烧录无果之后开始对比正常和panic的内核的启动信息,最终发现pannic内核根本没有识别到mtd的分区,据此猜测可能是编译的是丢失了某些模块,也就是说

虽然显示编译成功了,但实际编译出来的内核是缺失功能的,以此为线索,判断可能openwrt打补丁的时候可能出了问题,导致没有打进去

根据以上线索,不停编译比较patch出来的文件,上网搜索资料,发现,openwrt在打补丁的时候是最好先执行make target/linux/clean,prepare,使内核退回,然后再次patch,然后make。

总结这个你却流程如下:

1 patch -p0 < [path]/som9331.patch

2 make target/linux/clean,prepare,

3 删除掉原来编译生成的tmp目录

4 make menuconfig选中ar7xx,target选中Openembed som9331

5 make -j4 V=s


以上是关于3网口som9331搭建openwrt问题结语言的主要内容,如果未能解决你的问题,请参考以下文章

谁玩AR9331的openwrt固件

OpenWRT AR9331 mjpg-streamer

怎么修改703N源码,使AR9331 openwrt 增加四LAN口支持

物联网OpenWrt编译和修改基础--预科

请教981213大神及各位大神,关于openwrt编译LED网口灯不亮问题

720n刷openwrt后显示升级成功但是无法连接