2003 年 10 月 21 日 (火) 自宅

先日 RADEON 9600 を突っ込んだキューブマシンの Pandora ですが、 こいつがマザーボードに SiS 651 を使っていて、 4.9-RC には鬼門のチップセットなんですね。 ATA の認識時にハングアップします。 で、こいつにインストールする場合なんですが…。 まずは BIOS Setup を起こします。

[image]

IDE の UltraDMA を Disabled にします。

[image]

こうすると、FreeBSD 4.9 のカーネルは WDMA2 という謎のモードで認識してくれて、 一応ちゃんとブート・インストールできます。

[image] [image]

遅いけどね (^^;。

[image] (動画 2.02Mbytes)

で、インストールしたら /usr/src/sys/dev で、 このパッチを partch -p0 < ata.diff で適用して、 カーネルをコンパイル・インストールします。 こんなインチキパッチだよ。 以前 sos にメールしたのですが、 これはちょっと UDMA のネゴなどの観点からはインチキすぎるそうなので、 正しい実装は ATAng の方を見てくれ、らしい。 でもまあ、とにもかくにも動くので、いいとしよう。

diff -ur ata.orig/ata-dma.c ata/ata-dma.c
--- ata.orig/ata-dma.c	Wed Oct 22 23:43:52 2003
+++ ata/ata-dma.c	Mon Oct 27 10:02:31 2003
@@ -638,6 +638,7 @@
 	    ata_find_dev(parent, 0x06401039, 0) ||	/* SiS 640 */
 	    ata_find_dev(parent, 0x06451039, 0) ||	/* SiS 645 */
 	    ata_find_dev(parent, 0x06501039, 0) ||	/* SiS 650 */
+	    ata_find_dev(parent, 0x06511039, 0) ||	/* SiS 651 */
 	    ata_find_dev(parent, 0x07301039, 0) ||	/* SiS 730 */
 	    ata_find_dev(parent, 0x07331039, 0) ||	/* SiS 733 */
 	    ata_find_dev(parent, 0x07351039, 0) ||	/* SiS 735 */
diff -ur ata.orig/ata-pci.c ata/ata-pci.c
--- ata.orig/ata-pci.c	Wed Oct 22 23:43:52 2003
+++ ata/ata-pci.c	Mon Oct 27 10:02:38 2003
@@ -198,6 +198,7 @@
 	    ata_find_dev(dev, 0x06401039, 0) ||
 	    ata_find_dev(dev, 0x06451039, 0) ||
 	    ata_find_dev(dev, 0x06501039, 0) ||
+	    ata_find_dev(dev, 0x06511039, 0) ||
 	    ata_find_dev(dev, 0x07301039, 0) ||
 	    ata_find_dev(dev, 0x07331039, 0) ||
 	    ata_find_dev(dev, 0x07351039, 0) ||

で、shutdownした後、BIOS の DMA 設定を元に戻して再起動。

[image]

めでたく UDMA100 で認識。本当は UDMA133 までいけるはずなんだけどね。

[image]

ついでに、RADEON 9600 を XFree86 4.3.0 で使うことを、 ダメもとで試みてみるけど…、xf86cfg がそもそもグラフィックモードで上がってこない。 で、テキストモードでやってみるが…。 やっぱりダメくさい。 残念。

[image] [image] [image] [image] [image]


このサイトへのリンクには何ら許可は必要ありません。 ただし、無断で写真をダウンロードして他の場所に掲載したり、 画像加工の素材として利用するなど、再配布に当たる行為はしないようにしてください。 また、このサイトへのリンクであることを明示すること無しに <img src="..."> などで他のページの内部に画像ファイルを取り込むことも、 ご遠慮下さい。