看板 Linux 關於我們 聯絡資訊
※ 引述《[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