|
发表于 2003-12-15 14:06:24
|
显示全部楼层
D-link530 RevB1 PCI网卡的安装:
系统支持D-link530 RevA PCI的网卡,但是后来D-link有出了个RevB1,多了WOL,所以原来的驱动via-rhine.o就不灵了,需要我们自己做一个驱动程序,很简单的。
编辑via-rhineB.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,12
8,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. */ };
然后修改 /usr/src/linux/drivers/net/Config.in
tristate \\'PCI NE2000 support\\' CONFIG_NE2K_PCI
tristate \\'TI ThunderLAN support\\' CONFIG_TLAN
tristate \\'VIA Rhine support\\' CONFIG_VIA_RHINE
tristate \\'VIA Rhine RevB support\\' CONFIG_VIA_RHINEB
if [ "$CONFIG_EXPERIMENTAL" = "y" ]; then
然后修改 /usr/src/linux/drivers/net/Makefile
ifeq ($(CONFIG_VIA_RHINE),y)
L_OBJS += via-rhine.o
else
ifeq ($(CONFIG_VIA_RHINE),m)
M_OBJS += via-rhine.o
endif
endif
ifeq ($(CONFIG_VIA_RHINEB),y)
L_OBJS += via-rhineB.o
else
ifeq ($(CONFIG_VIA_RHINEB),m)
M_OBJS += via-rhineB.o
endif
endif
配置kernel: make menuconfig
Networking device support --> Ethernet (10 or 100Mbit)
在新出现的 Via rhine Ver B一项前按 M
退出配置
make dep
make modules
make modules_install
如果/lib/modules/2.2.14-5.0/net/via-rhineB.o存在的话,我们就有戏拉。然后在这个目录下执行insmod via-rhineB.o,如果没有错误提示,就成功拉。 |
|