[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: D-Link TX530(dev B)



: Sorry! 我没叙述清楚.
: 原因是我用Debian2.2安装时
: 安装程式抓不到我的D-Link TX530(dev B)
: 所以我就手动insmod via-rhine.o
: 结果insmod Fail
: 所以我用我之前在Rh6.1 patch过的via-rhine.c
: 想自己Compiler
: 结果还是失败了
: 因为RH6.1的kernerl是2.2.13
: 而Debain kernerl 是2.2.17
: 不知是否2.2.17的via-rhine无法抓到D-Link TX530
: 或是有其他方法能设定D-Link TX530的网路
: 不过我又用Mandrake7.2(kernel 2.2.17)安装
: 安装时仍然无法抓到
: 但我用netconf手动设定就起来了
: Debain是否有相似的工具呢?

这张卡可能目前所有的 kernel 版本都不支援,而且很多人都说 performance
不稳定,如果可能的话,最好换一张。

如果一定要用的话,一个简单的方法是修改 kernel source, 请修改:

/usr/src/linux/drivers/ne/via-rhine.c

找到以下这一段:

static struct pci_id_info pci_tbl[] = {
        { "VIA VT86C100A Rhine-II", 0x1106, 0x6100, 0xffff,
          PCI_USES_MEM|PCI_USES_IO|PCI_USES_MEM|PCI_USES_MASTER, 128, via_probe1},
        { "VIA VT3043 Rhine", 0x1106, 0x3043, 0xffff,
          PCI_USES_IO|PCI_USES_MEM|PCI_USES_MASTER, 128, via_probe1},
        { "VIA VT3043 Rhine RevB1", 0x1106, 0x3065, 0xffff,
          PCI_USES_IO|PCI_USES_MEM|PCI_USES_MASTER, 128, via_probe1},
        {0,},                                           /* 0 terminated list. */
};

注意 "VIA VT3043 Rhine RevB1" 那一行,是您要加入的,同时它的下一行也
下加入。接著,底下:

/* A chip capabilities table, matching the entries in pci_tbl[] above. */
enum chip_capability_flags {CanHaveMII=1, };
struct chip_info {
        int io_size;
        int flags;
} static cap_tbl[] = {
        {128, CanHaveMII, },
        {128, CanHaveMII, },
        {128, CanHaveMII, },
};

最后的那个 {128, CanHaveMII, }, 也是要加入的。最后您要重新编译它,用这个
指令:

gcc -DMODULE -D__KERNEL__ -I/usr/src/linux/net/inet -Wall \
	-Wstrict-prototypes -O6 -c via-rhine.c \
	`[ -f /usr/include/linux/modversions.h ] \
	&& echo -DMODVERSIONS`

完成后,试试 insmod 能不能将它载入?可以的话就将它装到 

	/lib/modules/<version>/net/

下去吧。

T.H.Hsieh

-- 
| This message was re-posted from debian-chinese-big5@lists.debian.org
| and converted from big5 to gb2312 by an automatic gateway.



Reply to: