VT6656移植

来源:互联网 发布:下载美影美视软件 编辑:程序博客网 时间:2024/05/17 01:28

VT6656 移植 收获很大(2010-3-18) 手头上有一个VT6656的无线网卡模块,可是tq2440却只支持TP系列的网卡。上帝,需要移植。开始以为很容易。可到via公司网站下来了最新的1.20的vt6656 linux for x86驱动.简单进行交叉编译,出奇的顺利的通过。接着下载到开发板,可是加载驱动模块的时候老是把错,segment fault。很是郁闷。一点头绪都没有。 网上到处都是arm-wince 的vt6656驱动,可闭口不提arm-linux的驱动。郁闷。 今天突然在网上linux 2.26.34已经发布,而且在driver下面的staging文件夹下居然有vt6656的驱动。哈哈 幸喜一下。我 的内核版本是2.26.30.不想再移植系统,工作量太大 了 。哈哈 ,直接将vt6656文件夹拷贝到/divers/net/wireless下面,修改Kconfig 和makefile文件。打开内核选项菜单,却始终看不到VT6656的选项,问题只有一个,VT6656的选择条件没有满足。再次打开Kconfig,对比其它的外卡发现,depends on USB && MAC80211 && WLAN_80211,而在VT6656中却是depends on USB && MAC80211 && WLAN 。难怪,将WLAN修改为WLAN_82011。再 make menuconfig,出来了,哈哈。选择成模块形式,然后编译内核,然后编译模块。但是遇到了问题,在main_usb.c文件中,引用了一个数据结构: netdev_mc_count(dev),系统报错说声明失败。我找遍了所有的内核,都没有发现这个结构。昏,难道是新版内核的新数据机构,郁闷,还是擦看一下前面下载的1.20版本驱动这个地方是怎么实现的吧。对比发现 1.20版本驱动中引用了这样一个结构: dev->mc_count;哈哈 没有仔细看版本更新说明,估计是新版内核修改的新系统数据结构。不管了,直接替换。模块编译,耶!通过。然后下载新内核,下载模块,insmod,good,成功。模块成功加载。 又一个问题来了 ,无线无法连接。 上网查询,iwconfig。哈哈 需要设置的有这样几个步骤。首先要关闭有线网卡,ifconfig et0 down. 然后,Iwconfig channel,设置无线信号通道,这个需要查询无线路由器的相应配置。接着就是设置ip 和掩码了,使用ifconfig指令,同时启动eth1,使用ifconfig eth1 up。然后设置无线网络的ssid,和密码了。使用iwconfig key,iwconfig essid。 结果是无线网络连接上 ,串口上输出信息已经显示 LINKED WITH AP(SSID):BLGHT. 这里blight是我的路由器网络ssid。可是就是ping不通。后来将路由器的wep密码去掉,可以ping通。这个说明无线网络已经通了,只是wep密码校验部分不对。后来在网上查了一下,一句话提醒了我, HEX模式: iwconfig eth1 key XXXXXX ASCII模式: iwconfig eth1 key s:XXXXXX。看看我的设置,就是这个问题,我的wap密码设置的ascii模式,但是没有加那个小小的s 。昏死。哈哈 。加进去,重启arm,ping,great,哈哈 通了,直接Telnet ,enjoy.。。。。。。。。。 http://xdmalone.blog.163.com/blog/static/85215620102232314558/

原创粉丝点击