• «
  • 1
  • 2
  • »
  • Pages: 1/2     Go
主题 : 旧部复活(3)--QQ2440Linux篇 复制链接 | 浏览器收藏 | 打印
级别: 侠客
UID: 81082
精华: 4
发帖: 32
金钱: 360 两
威望: 72 点
贡献值: 4 点
综合积分: 144 分
注册时间: 2012-11-04
最后登录: 2017-01-04
楼主  发表于: 2012-12-23 12:20

 旧部复活(3)--QQ2440Linux篇

管理提醒: 本帖被 xoom 执行加亮操作(2012-12-23)
在开始linux安装之前,我们已经知道一个简单的事情。就是linux需要烧入板子里面三段程序,分别是:
1. bootloader--负责板子初始化,并提供启动入口地址 (如supervivi, uboot)
2. kernel --启动linux核心,分配系统资源 (如zImage, uImage)
3. rootfs -- linux中的各种文件 (如rootfs)
在qq2440这板子上,nor明显是不够装linux的,所以我们会把linux放到nand上去。事先我们会对nand进行分区,然后把上述三个文件,烧写到对应的三个分区上去。理论上就是这么简单。可实际上有点点麻烦。



如果你手头刚好有QQ2440的全套linux镜像文件,你可以按qq2440用户手册上办法,一步步烧写程序,这时太不仔细讲了。
要注意的是,你的nor与nand中的supervivi最好用qq2440原来的老板本,然后用supervivi对nand进行默认分区。

顺利的话,你的板子跑起了linux, 只是版本有点点老,内容有点点旧,功能有点点单薄,想在上面搞点什么事情,必须自己编译。

好了,今天要讲的重点来了。
如何把别人做好的镜像烧进来。如果你仔细找找,2440的现成linux镜像文件很容易获得的,而且硬件资源大同小异,最大的区别可能就是CS8900与DM9000二种网卡。QQ2440是CS8900网卡,mini2440是DM9000网卡,好在有很多通用镜像,同时集成了二种网卡的驱动。
但是要把现成的镜像烧进QQ2440中,还是会失败,因为nand的分区不一致。

首先我们看linux启动顺序。
bootloader从系统首位开始加载,加载完后,引出第kernel启动地址,kernel启动完后,引出rootfs启动地址。而linux系统编译好后,nand分区地址的入口端也在内核中指定了。所以要让我们的QQ2440板子能跑起别人的镜像,就要先按镜像包中的分区地址先行分区。
好在我们有一个简单办法知道分区地址。


于是我们可以这么来做:
1.  想办法在板子的RAM中先跑出分区信息来:
      a. 可以用tftp, win版的cisco tftp其实也很好用的,或者nfs, 或者bootloader加载。
      b. 顺利的话,你可以加载并跑起kernel的部份,通常是zImage文件。
      c. 在终端观察启动信息,仔细找其中nand分区信息。

2. 分区表信息有二种形式表示,
      一种是首地址加结束地址,如:0x00060000  0x00080000
      另一种是首地址加长度,如:    0x00060000  0x00020000
      上述二个例子,表达的是相同一段分区,具体还是看启动信息中的相关英文说明了。(offset,size, end, 之类的,总是能猜一下的)

3. 在supervivi中,把原有的分区删掉,按你找到的新分区表重建,建完后记得存一下。

4. 把kernel , rootfs 烧录到正确的位置。
     这里也有个问题,就是直接用bootloader菜单上的烧写,依然会有点问题。于是我们用手动的来做,在supervivi中执行命令如下(uboot会在openwrt介绍中讨论).
     a. 按Q进入命令行模式
     b. 划定烧写分区,如:
          part add kernel 0x00060000 0x00080000
          load flash kernel usb
          之后把kernel通过usb上传。
          rootfs也是一样做法。
      c. 必要时,需要修改supervivi启动菜单中的linux启动参数,这里就不仔细讨论了。

祝成功。
[ 此帖被fdai2004在2012-12-23 16:29重新编辑 ]
自由,自强,共享,共创。
级别: 论坛版主
UID: 12573
精华: 27
发帖: 8881
金钱: 46490 两
威望: 9298 点
贡献值: 27 点
综合积分: 18302 分
注册时间: 2010-01-09
最后登录: 2016-03-18
1楼  发表于: 2012-12-23 13:53
不错,多谢分享

不过不明白啥叫"旧部复活"
新手如何向我们反馈有效的信息,以便解决问题,见此贴:
http://www.arm9home.net/read.php?tid-14431.html

[注]: 此处签名链接仅为指引方向,而非解答问题本身.
级别: 风云使者
UID: 36096
精华: 3
发帖: 2536
金钱: 14075 两
威望: 2815 点
贡献值: 3 点
综合积分: 5132 分
注册时间: 2011-01-11
最后登录: 2015-11-15
2楼  发表于: 2012-12-23 15:00
好像有个旧友善官网有资料,不过具体域名我也忘了,不知还在不在
极度缺钱,求捐赠……支付宝兼邮箱:huming2207@qq.com
级别: 新手上路
UID: 122660
精华: 0
发帖: 8
金钱: 40 两
威望: 8 点
贡献值: 0 点
综合积分: 16 分
注册时间: 2016-02-01
最后登录: 2016-02-29
3楼  发表于: 2016-02-03 14:08
嘻嘻
级别: 风云使者
UID: 133552
精华: 0
发帖: 2682
金钱: 13410 两
威望: 2682 点
贡献值: 0 点
综合积分: 5364 分
注册时间: 2017-07-06
最后登录: 2017-07-11
4楼  发表于: 2017-07-06 23:57
每天早上起床都要看一遍“福布斯”富翁排行榜,如果上面没有我的名字,我就去上班……
级别: 风云使者
UID: 133554
精华: 0
发帖: 2702
金钱: 13510 两
威望: 2702 点
贡献值: 0 点
综合积分: 5404 分
注册时间: 2017-07-06
最后登录: 2017-09-30
5楼  发表于: 2017-07-07 03:48
牛牛牛牛
级别: 风云使者
UID: 133552
精华: 0
发帖: 2682
金钱: 13410 两
威望: 2682 点
贡献值: 0 点
综合积分: 5364 分
注册时间: 2017-07-06
最后登录: 2017-07-11
6楼  发表于: 2017-07-07 08:26
每天早上起床都要看一遍“福布斯”富翁排行榜,如果上面没有我的名字,我就去上班……
级别: 风云使者
UID: 133552
精华: 0
发帖: 2682
金钱: 13410 两
威望: 2682 点
贡献值: 0 点
综合积分: 5364 分
注册时间: 2017-07-06
最后登录: 2017-07-11
7楼  发表于: 2017-07-07 09:48
人生伟业的建立 ,不在能知,乃在能行。sn
级别: 风云使者
UID: 133551
精华: 0
发帖: 2689
金钱: 13445 两
威望: 2689 点
贡献值: 0 点
综合积分: 5378 分
注册时间: 2017-07-06
最后登录: 2017-07-08
8楼  发表于: 2017-07-07 14:23
挺好啊
级别: 风云使者
UID: 39598
精华: 0
发帖: 2713
金钱: 84685 两
威望: 16937 点
贡献值: 0 点
综合积分: 5426 分
注册时间: 2011-03-10
最后登录: 2017-07-08
9楼  发表于: 2017-07-07 20:57
让我们将事前的忧虑,换为事前的思考和计划吧!响商
  • «
  • 1
  • 2
  • »
  • Pages: 1/2     Go