openwrt移植过程的问题记录

来源:互联网 发布:淘宝客服常用问候语 编辑:程序博客网 时间:2024/05/23 00:07
1、redboot启动内核
    命令组:
         下载内核
             fis delete zImage
             load -r -v  -b 0x00028888 openwrt-ixp4xx-harddisk-ixdpg425-zImage -m tftp -h 192.168.5.50
             fis create -b 0x00028888 -l 0x200000 -f 0x50060000 zImage
         下载文件系统
            fis delete rootfs
            load -r -v  -b 0x00028888 openwrt-ixp4xx-harddisk-jffs2-128k.img -m tftp -h 192.168.5.50
            fis create -b 0x00028888 -l 0x00800000 -f 0x50260000  rootfs
        ramdisk测试
            fis delete zImage
            load -r -v  -b 0x00028888 openwrt-ixp4xx-harddisk-initramfs-ixdpg425-zImage -m tftp -h 192.168.5.50
注意:第一次使用fis erase <如:fis erase -f 0x50060000 -l 0x200000>命令擦除相应分区

在启动内核挂载文件系统时存在的问题:
      1、开始使用的命令
  kernel:
       fis erase -f 0x50060000 -l 0x200000
       load -r -v  -b 0x00028888 openwrt-ixp4xx-harddisk-ixdpg425-zImage -m tftp -h 192.168.5.50
       fis write –f 0x50060000 -b 0x00028888 –l 0x200000
  rootfs:
       fis erase -f 0x50260000 -l 0x800000
       load openwrt-ixp4xx-harddisk-jffs2-128k.img -b 0x00028888 -r -m tftp -h 192.168.5.50
       fis write -b 0x00028888 –l 0x800000 –f 0x50260000
fis write命令将数据写入Flash时没有写入校验和;(解决办法:查redboot源码)
============================================================================
2、kernel挂载文件系统
      挂载文件系统主要方式:
      1、BootLoader传参
如: Kernel command line: root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200
      2、按照kernel的分区表启动
      3、kernel读取配置文件内的配置参数;
配置:make kernel_menuconfig      boot options----->
      4、在redboot选择了MTD,所以CMDLINE命令行首选redboot的启动方式,找fis 目录分区内的配置。

遇到的问题:
      挂载文件系统时出错,kernel到(0x1FE0000)处找fis 目录分区:
      找不到fis 目录分区位置(实际位置:0xFE0000);
解决办法:
      现在使用的aruba的nandflash一块大小为128k
      make kernel_menuconfig  device driver----->  memory technology device (MTD) support --->  location of redboot partition table 设置为127
============================================================================
3、网卡驱动
问题:网卡驱动不起来,显示的信息
     libphy: IXP4xx MII Bus: probed
     change npe-b phy to 1for new eth
     libphy: PHY ixp4xx-eth-0:00 not found
     eth%d: Could not attach to PHY
经查找npe-b在linux-ixp4xx_harddisk/linux-3.18.29/drivers/net/ethernet/xscale/ixp4xx_eth.c:1590驱动与网卡编号无法匹配,在此处直接将网卡编号指定后,显示正常;
但是aruba有两块网卡,现在编号为1 的网卡识别了。另一块扔未识别。
怀疑是内部使用集线器,如何设置需要研究一下。

注意:在内核启动前网卡会打印消息,提示当前网卡的设备真实编号,对应写入驱动即可。
============================================================================
4、LUCI
在make menuconfig后找不到LUCI选项、
此选项是openwrt自带的界面
在初次编译时要将LUCI先更新进去,进行选择即可;
============================================================================

再续。。。。