EM770W无线网卡移植方法
应客户要求在原来的路由器方案上移植华为的3g无线网卡,搞了好几天,最终交付,这里贴出来供大家交流参考以共勉
说明:本文档包括内核的配置以及3g网卡的测试方法
一、原来的SDK需要做的改动如下:
改文件:/AR7240/linux/kernels/mips-linux-2.6.15/arch/mips/ar7240/platform.c
第113行&ar7240_usb_ehci_device,改为&ar7240_usb_ohci_device,即(ehci改为ohci)
二、内核编译
A、为udev添加sysfs和tmpfs文件系统
File systems--->
Pseudo filesystems--->
[*] /proc file system support
[*] sysfs file system support
[*] Virtual memory file system support (former shm fs)
B、Generic Driver Options--->
[*] Select only drivers that don't need compile-time external firmware
[*] Prevent firmware from being built Hotplug firmware loading support
SCSI device support--->
[*]legacy /proc/scsi/ support
SCSI disk support
Network device support--->
PPP (point-to-point protocol) support
[*]PPP multilink support (EXPERIMENTAL)
[*]PPP filtering
PPP support for async serial ports
PPP support for sync tty ports
PPP Deflate compression
PPP BSD-Compress compression
PPP MPPE compression (encryption) (EXPERIMENTAL)
PPP over Ethernet (EXPERIMENTAL)
SLIP (serial line) support
[*]CSLIP compressed headers
USB support--->
Support for Host-side USB
[*]USB verbose debug messages
[*]USB device filesystem
OHCI HCD support
[*] USB OHCI support for AR7240
USB Mass Storage support
[*] USB Monitor
USB Serial Converter support--->
USB Serial Converter support
[*]USB Generic Serial Driver
保存退出后编译,得到新的内核和文件系统,文件系统要继续更改,具体参考下面的提示。
新的内核所在路径:/AR7240/images/ap91fus/下的vmlinux.lzma.uImage。
新的文件系统目录:/AR7240/ rootfs-ap91fus.optbuild/,需要再配置。
三、配置文件系统
1、解压bak.tar压缩包
2、进入SDK的路径:/AR7240
拷贝文件系统目录到/ AR7240/build/util/目录下:
cp-rrootfs-ap91fus.optbuild/build/util/
3、到/AR7240/build/util/rootfs-ap91fus.optbuild/路径下,对其下文件做如下更新:
注意:以下的改动都是针对/AR7240/build/util/rootfs-ap91fus.optbuild/路径下的目录及文件
1、chat文件放到/usr/sbin下面
2、pppd文件放到/bin下面
3、usbserial.ko放到/usr下面
4、udevd和udevstart放到/sbin下面
5、把ppp文件夹和udev文件夹放到/etc下面
6、在/etc/rc.d/rcS文件中最后加入以下语句
echo "Starting udevd..."
/sbin/udevd --daemon
/sbin/udevstart
7、vi etc/resolv.conf在文件中添加一行nameserver 210.21.196.6
以上改动做完后,就可以利用/AR7240/build/util/下面的mkfs.jffs2工具制作文件系统,命令如下:
./mkfs.jffs2 --root=./rootfs-ap91fus.optbuild/ --eraseblock=0x10000 -b -D ../scripts/ap91fus/dev.txt --squash -o ap91fus-jffs2 --pad=0x600000
这样就在当前目录下生成了文件系统:ap91fus-jffs2
四、Uboot参数变化
set bootargs console=ttyS0,115200 root=31:02 rootfstype=jffs2 init=/sbin/init mtdparts=ar7240-nor0:320k(uboot),1728k(kernel),6144k(rootfs)
set burnk tftp 80300000 vmlinux.lzma.uImage \;erase 9f050000 +1B0000 \;cp.b 80300000 9f050000 1B0000
set burnfs tftp 80300000 ap91fus-jffs2 \;erase 9f200000 +600000 \;cp.b 80300000 9f200000 600000
set burnall run burnk\;run burnfs\;
save
run burnall
五、3G网卡测试方法(天线接网卡模块的M端口)
1、cd /usr
2、insmod usbserial.ko vendor=0x12d1 product=0x1404
3、mknod /dev/ppp c 108 0
4、mkdir -p /var/lock
5、拨号:pppd call wcdma&
6、ping
六、看门狗测试
mknod /dev/watchdog c 10 130
echo“1” > /dev/watchdog