在 FreeBSD 安裝 notebook PCMCIA 網路卡
2024-07-26 00:29:22
供稿:網友
1. 原本 FreeBSD (2.2.5 RELEASE) 對 PCMCIA 的支援并不是很完善,
在日本的 FreeBSD user 有發展出一套 PAO 的 package, 能夠讓
FreeBSD 認得多種的 pcmcia 裝置, 所以首先你要去抓
PAO-970201.tar.gz 和 boot-pao.flp (for 2.2.5 Release).
這兩個 file 之前網友 zenlin 和 edwardc 已經 mirror 回來了
你也可到下列位置抓
ftp://turtle.ee.ncku.edu.tw/pub/bsd/mobil/PAO-971201.tar.gz
ftp://turtle.ee.ncku.edu.tw/pub/bsd/mobil/boot-pao.flp
2. 將 boot-pao.flp 做成開機片,開機
我們不用它來裝 bsd, 只是要看看 notebook 上的 PCMCIA bridge 是否有被
support, 如果沒有那下面就沒戲唱了
如果你的 PCMCIA bridge 有被測到, 那麼接著會開始 search 你的 PCMCIA
device, 比如說網路卡, 當初我在裝的時候, 出現的是
"Ethernet(Adapter)" not supported
別擔心, 把這個字串記下來備用.
3. cd /usr/src
tar -xvf PAO-971201.tar.gz
cd /usr/src/PAO-971201/2.2.5-RELEASE
make backup-sys
make patch
make install-include
make devices
cd etc
make install (這個步驟會把你原來的 rc.conf rename 成 rc.conf.orig)
cd ../usr/sbin
make; make install
cd ../sbin
make; make install
cd /sys/i386/conf
修改 PAO 這個 kernel config file 以符合自己的需要,然後 make kernel
以上步驟詳見 /usr/src/PAO-971201/2.2.5-RELEASE/README
4. 接著需要修改的就是 /etc/pccard.conf 了. (請先 man 一下 pccard.conf)
這個 files 其實是一個 database, 記有各種 PCMCIA 的 "辨識字串" 和
硬體組態, 把它叫出來, 在 for unsupported card 區加入
# NE2000 compatible PCMCIA
card "Ethernet" "Adapter" <----這 2 段辨識字串就是是剛記下的那串
config default "ed0" any
insert echo NE2000 inserted
insert /etc/pccard_ether $device
remove echo NE2000 removed
remove /etc/pccard_ether_remove $device
5. 修改 /etc/rc.conf (已經 PAO 被換過的版本)
在最後幾行有一個 ifconfig_common="inet 10.0.0.1 netmask 255.255.255.0"
把它改成你網路卡需要的 ip/mask
還有 defaultroute 要設成你的 default gateway
6. 重新開機, 然後你會看到 (應該啦..:)
Initializing PC-card drivers: ed ep fe sn sio wdc
PRobing for devices on PCI bus 0:
chip0 rev 176
vga0 rev 0 int a irq ?? on pci0:12
chip1 rev 163
pci0:18:1: UMC, device=0x0101, class=storage (ide) [no driver assigned]
pcic0 rev 254 int a irq
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^你的 PCMCIA bridge
還有
crd: ctlr(0) Cirrus Logic PD-6729/6730 (5 mem & 2 I/O windows)
rnel: pcic: controller I/O address 0xfcfc
rnel: pcic: controller irq 9 (shared)
rnel: pcic: controller I/O address 0xfcfc
rnel: Card inserted, slot 0
pccardd[38]: Card "Ethernet"("Adapter") matched "Ethernet" ("Adapter")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^抓到了
ed0: address 00:e0:98:00:bb:bd, type NE2000 (16 bit)
pccardd[38]: pccardd started
7. 在我的 notebook 上, enable apm 會當機, 如果你有當機的情形發生,
試著關掉 apm0 看看.
ps:目前的 apm 并未 support HD (最耗電的部份...)
而且似乎 bios 的 apm 功能仍有效, 我想關掉 bsd apm 應該影響不大