[分享]Marvell 88E8040T网卡不能识别的解决方法

包含网卡/无线网的网络问题和ADSL/校园网/宽带拨号支持及代理/共享等网络使用问题
回复
phoenix_wjx
帖子: 30
注册时间: 2008-05-14 9:44

[分享]Marvell 88E8040T网卡不能识别的解决方法

#1

帖子 phoenix_wjx » 2008-07-05 20:25

People on ubuntuforums suggest to recompile the kernel, but I found a much simpler workaround, which should be enough until we get it from the official source.

The solution is to simply patch the binary kernel driver sky2.ko to recognize the problematic PCI ID. You can get the list of known PCI IDs with "modinfo sky2".

Here's how to patch the driver:
# rmmod sky2
# cd /lib/modules/2.6.24-16-generic/kernel/drivers/net
# cp -p sky2.ko{,.orig}
# perl -pe 's/\0\0\x6c\x43/\0\0\x55\x43/g' sky2.ko.orig > sky2.ko

In my case, I sacrificed the PCI ID of 436c and replaced it with 4355 (which is the 88E8040T). You can compare the original and the new file with hexdump -- they should only differ in one place, in my case it's at the offset 0x7170.

Now run "modprobe sky2" and check with dmesg if your network card has been recognized.
------------------------------------------------------------------------

这是老外发现的,ms是ubuntu8.04的一个bug

rmmod sky2这步可以不做,除非你已经加载了sky2的模块,其它照做,完成后用lspci还是只能显示网卡为未知设备,但ifconfig下已经可以看到eth0了,于是世界就和谐了
:D

还有另外一种方法,需要重编译内核,比较麻烦,还有声卡失效的后遗症,所以不推荐(我已经尝试过,不需要再验证了)~

这次的经验说明,要想学好linux,还是先学好英语吧 :shock:
yanite
帖子: 44
注册时间: 2005-11-13 14:33

Re: [分享]Marvell 88E8040T网卡不能识别的解决方法

#2

帖子 yanite » 2009-08-31 20:34

嗯,正在解决这个问题,直接PPP是可以的,但网络是断掉的,直接用网线连不行。郁闷的。
回复