主题 : 旧部复活(4)--QQ2440 OPENWRT 篇 复制链接 | 浏览器收藏 | 打印
级别: 侠客
UID: 81082
精华: 4
发帖: 32
金钱: 360 两
威望: 72 点
综合积分: 144 分
注册时间: 2012-11-04
最后登录: 2017-01-04
楼主  发表于: 2012-12-23 16:05

 旧部复活(4)--QQ2440 OPENWRT 篇

管理提醒: 本帖被 xoom 执行加亮操作(2012-12-23)
图片:
图片:
先挂二个自己做好的图上来[img][/img]


过去做openwrt,编译时,一直很纠结用x-wrt还是luci, 所以后来养成个坏习惯,就是二个全编译进去。经常换着用,呵呵。

个人觉得,QQ2440最适合用的系统,就是openwrt,能装下ubuntu的话,当然是用ubuntu了,毕竟那个资源丰富了。

现在我们就来做QQ2440版本的openwrt了。

1. 主机上安装好tftp server.
2. 编译好全套的openwrt, (其中包括了uboot, uImage, rootfs,zImage)
     a. 用svn 取到www.openwrt.org.cn的源。
     b. make menuconfig中选上QQ2440, Target Images->tar.gz,  boot loaders -->uboot , 其它你爱选什么就选什么好了.
     c. make V=99, 如果你是第一遍编译,就别带 -j ,多核编译会有很多意外发生。
3. 在编译机上,安装mkimage包,其中的mkyaffs2image会需要用到。
4. 把rootfs打包成yaffs2格式:
     a. 把编译好的rootfs.tar.gz(文件前缀有点不同,但就是这文件,自己找吧)文件,解压到任意目录中,但不要把文件自身放到这个目录中(如root_fs)。
     b. 用mkyaffs2image打包这个目录(如mkyaffs2img root_fs rootfs.yaffs)
     c. 这样你就有一个yaffs2格式的rootfs.
5. nor方式启动,进入supervivi命令行格式。
    part add uboot 0x00000000 0x00060000
    load flash uboot usb
    然后用usb上传uboot
6. nand方式启动板子,看看uboot能不能启动。
7. 进入uboot的参数设置设置板子型号为gc2440(因为这是带网卡驱动的)
8. 在uboot菜单中,按c,切换至tftp方式,你也可以看一下uboot的ip设置,象我的就是板子地址192.168.1.2, 指定tftp地址是192.168.1.121
9. 尝试板子通过tftp运行tftp服务器端的zImage,看一下打印出来的执行结果,把nand分区表抄下来。
10. 重新对nand进行分区,并存盘。
11. 用uboot菜单方式烧写uImage(tftp方式)。
12. 用uboot菜单方式烧写YAFFS2格式,执行一次,烧写并不成功,但你会发现uboot把bootargs中的参数给改成YAFFS2了,如果你讨厌用setenv的话,这个是比较简单的办法。
13. 用nand write.yaffs 命令,把刚才做好的yaffs2格式的rootfs烧写到对应的分区中。
      如: tftp 0x30000000 rootfs.yaffs2
               nand erase 0x580000 0x3200000
               nand write.yaffs2 0x30000000 0x580000 0x???? (???? 看刚才下载的长度)
14. 重启

祝成功
[ 此帖被fdai2004在2012-12-23 18:36重新编辑 ]
级别: 新手上路
UID: 90070
精华: 0
发帖: 8
金钱: 40 两
威望: 8 点
综合积分: 16 分
注册时间: 2013-04-10
最后登录: 2013-06-03
1楼  发表于: 2013-04-18 09:38
楼主提个入门级的问题哈;为什么我在编译openwrt的时候总找不到qq2440啊
级别: 新手上路
UID: 152474
精华: 0
发帖: 1
金钱: 5 两
威望: 1 点
综合积分: 2 分
注册时间: 2026-08-27
最后登录: 2026-08-27
2楼  发表于: 26天前
I really appreciate the detailed breakdown of building OpenWrt for the QQ2440. It's fascinating to see the intricate steps involved in setting up an embedded system like this, especially the considerations for x-wrt vs. luci. Speaking of things that require precise timing and careful planning, I've been spending a lot of my downtime playing Geometry Dash lately. There's something incredibly satisfying about clearing rows and keeping the board from filling up; it's a puzzle that really focuses the mind.