rt3070驱动的ARM平台移植问题(2)

[root@utu-Linux]\$ ifconfig wlan0 up
rt73usb 1-1:1.0: firmware: requesting rt73.bin
phy0 -> rt2x00lib_request_firmware: Error - Failed to request Firmware.
ifconfig: SIOCSIFFLAGS: No such file or directory


通常情况下,load firmware的动作是通过用户空间的hotplug handler,也就是/proc/sys/kernel/hotplug里设定的执行档,来完成。root_qtopia默认会在/etc/init.d/rcS里将/proc/sys/kernel/hotplug设定为/sbin/mdev,即busybox的mdev模块。它在收到来自内核的请求加载rt73.bin这个firmware消息后,会从/lib/firmware目录下去找rt73.bin,如果能找到就加载。

解决方法:

文件系统的/etc/init.d/rcS加:
“echo /sbin/mdev > /proc/sys/kernel/hotplug”
这样一句。

mdev的hotplug模式

1, busybox 添加mdev支持


2, 在/etc/rc.d/rcS中添加

#mount filesystem

/bin/mount -a

#start mdev

echo /sbin/mdev > /proc/sys/kernel/hotplug    #设置系统的hotplug程序为mdev mdev –s

 

 

/etc/fstab的内容如下:

proc    /proc   proc    defaults    0   0

none    /tmp    ramfs   defaults        0       0

mdev    /dev    ramfs   defaults        0       0

sysfs   /sys    sysfs   defaults        0       0

 

 

执行mdev -s :以‘-s’为参数调用位于 /sbin目录写的mdev(其实是个链接,作用是传递参数给/bin目录下的busybox程序并调用它),mdev扫描 /sys/class 和 /sys/block 中所有的类设备目录,如果在目录中含有名为“dev”的文件,且文件中包含的是设备号,则mdev就利用这些信息为这个设备在/dev 下创建设备节点文件。一般只在启动时才执行一次 “mdev -s”。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wyjjww.html