FreeBSD 2.X についての FAQ (よくある質問とその答え) : カーネルコンフィグレーション : マルチポートシリアル関連のコードでの, 割り込みの競合
Previous: _hw_float が無いので, カーネルのコンパイルがうまくいきません.
Next: QIC-40/80 ドライブのサポートを有効にするには?

7.3. マルチポートシリアル関連のコードでの, 割り込みの競合

Q. マルチポートシリアルをサポートするコードを含んだ カーネルをコンパイルしようとすると, 最初のポートだけ検出され, 残りのポートは割り込みの競合のためスキップされたと言われます. どうやったらいいでしょうか?

A. ここでの問題は, FreeBSD にはハードウェアまたは ソフトウェアの競合によってカーネルがクラッシュするのを防ぐ コードが含まれているという点です. 解決するには, 最初のポート にだけ IRQ の設定を書き, 残りは IRQ の設定を削除します. 以下に例を示します.

        #
        # Multiport high-speed serial line - 16550 UARTS
        #
        device sio2 at isa? port 0x2a0 tty irq 5 flags 0x501 vector siointr
        device sio3 at isa? port 0x2a8 tty flags 0x501 vector siointr
        device sio4 at isa? port 0x2b0 tty flags 0x501 vector siointr
        device sio5 at isa? port 0x2b8 tty flags 0x501 vector siointr
      


FreeBSD 2.X についての FAQ (よくある質問とその答え) : カーネルコンフィグレーション : マルチポートシリアル関連のコードでの, 割り込みの競合
Previous: _hw_float が無いので, カーネルのコンパイルがうまくいきません.
Next: QIC-40/80 ドライブのサポートを有効にするには?