看板Linux
标 题Re: D-LINK DFE-530 Rev.B 如何支援RedHat6.2
发信站台大电机 Maxwell BBS (Mon May 15 11:08:22 2000)
转信站Ptt!bbs.ee.ntu!Maxwell
※ 引述《[email protected] (不爽是你家的事,爽啥)》之铭言:
: ※ 引述《"Hunter Lai" <[email protected]>, 看板: Linux》之铭言:
: : 请寄给我
: : [email protected]
: : "善意王" <[email protected]> 撰写於邮件
: : news:[email protected]...
: 我也要,我的是D_LINK 530TX rev b....
: [email protected] 谢谢
引一篇我在找到的文章:
发信人:
[email protected] (啥!! 说啥), 看板: Linux
标 题: 我在 slackware 7.0 下使用 D-Link DFE-530TX 的安装经验
发信站: 中山计中美丽之岛 (Tue Apr 11 13:25:34 2000) bbs.nsysu.edu.tw
转信站: Maxwell!bbs.ee.ntu!freebsd.ntu!news.cs.nthu!newsfeed.nthu!ctu-gate!new
DFE-530TX 使用的是 VIA 公司出品的 VIA 86C100A 晶片。
在 Slackware 7.0 安装後,在目录 /usr/src/linux/drivers/net/ 中有 via-rhine.c ,
这就是 DFE-530TX 的驱动程式了。
而最新的 DFE-530TX 驱动程式请到
http://cesdis.gsfc.nasa.gov/linux/drivers/via-rhine.html 下载
开始安装:
1,修改原来的 via-rhine.c
这一点比较奇怪!!
我在网路上看到大家都说 VIA 86C100A 这个晶片是 Vendor id=1106 Device id=3043 。
可是我的电脑上看到的却是 Vendor id=1106 , Device id=3065 ,
所以我就尝试的去修改 /usr/src/linux/drivers/net/via-rhine.c !!
我新增了两行(其实是从 VIA VT86C100A Rhine-II 复制过来的),
并把原来的 0x6100 改为 0x3065
(以 3043 做为关键字寻找就可以找到了!!)
【修改前】==============================================================================
static struct pci_id_info pci_tbl[] = {
{ "VIA VT86C100A Rhine-II", 0x1106, 0x6100, 0xffff,
RHINE_IOTYPE | PCI_USES_MASTER, 128, via_probe1},
{ "VIA VT3043 Rhine", 0x1106, 0x3043, 0xffff,
RHINE_IOTYPE | PCI_USES_MASTER, 128, via_probe1},
{0,}, /* 0 terminated list. */
};
【修改後】==============================================================================
static struct pci_id_info pci_tbl[] = {
{ "VIA VT86C100A DFE-530TX", 0x1106, 0x3065, 0xffff, /* <--新增这两行 */
RHINE_IOTYPE | PCI_USES_MASTER, 128, via_probe1}, /* <--新增这两行 */
{ "VIA VT86C100A Rhine-II", 0x1106, 0x6100, 0xffff,
RHINE_IOTYPE | PCI_USES_MASTER, 128, via_probe1},
{ "VIA VT3043 Rhine", 0x1106, 0x3043, 0xffff,
RHINE_IOTYPE | PCI_USES_MASTER, 128, via_probe1},
{0,}, /* 0 terminated list. */
};
2,compile & install
在目录 /usr/src/linux/drivers/net/ 中,编译修改过的 via-rhine.c
(这一行指令可以在 via-rhine.c 的最後几行中找到!!)
#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`
安装 via-rhine.o
(从
http://cesdis.gsfc.nasa.gov/linux/misc/modules.html 看来的)
#install -m 644 via-rhine.o /lib/modules/`uname -r`/net/
3,使用 cat /proc/pci 看一下电脑中 pci 装置的 io 与 irq 。
把它们记下来,然後加到 /etc/lilo.conf 中。
依我使用的电脑为例(我的电脑有装两片网路卡):
# cat /proc/pci
:
:
Bus 0, device 17, function 0:
Ethernet controller: VIA Technologies Unknown device (rev 66).
Vendor id=1106. Device id=3065.
Medium devsel. IRQ 11. Master Capable. Latency=64. Min Gnt=3.Max Lat=8.
I/O at 0x6000 [0x6001].
Non-prefetchable 32 bit memory at 0xe4000000 [0xe4000000].
Bus 0, device 18, function 0:
Ethernet controller: Realtek 8029 (rev 0).
Medium devsel. IRQ 10.
I/O at 0x6100 [0x6101].
:
:
这表示 DFE-530TX 这块卡现在在我的电脑中占了 irq=11 , io=0x6000
而另一块 RealTek 8029 的网路卡则是占了 irq=10 , io=0x6100
那我就要在我的 /etc/lilo.conf 中加入一行
append="ether=0x6000,11,eth0 ether=0x6100,10,eth1"
4,重新开机,让kernel知道该为网路卡保留哪些系统资源。
然後打 modprobe via-rhine 就可以把 DFE-530TX 挂上去了,
然後剩下的就是设定网路卡了。
例如(我的 Linux 是拿来做 router !!):
#ifconfig eth1 192.168.1.254 broadcast 192.168.1.255 netmask 255.255.255.0
--
平生无大志 但求六十分
--
※ Origin: 台大电机 Maxwell 站 ◆ From: linux6.hyweb.com.tw