documents:freebsd:freebsd-001
目次
FreeBSDのサウンドドライバ判定
2008年07月01日 09時20分23秒
どのサウンドドライバを使えばよいのかわからない場合の簡単な判定方法。 FreeBSD6.2 かつ GENERICカーネル の場合の例で説明する。
snd_driver.ko モジュールと /dev/sndstat デバイスを使った判定
サウンドデバイスが有効ではないことの確認
まずはサウンドドライバがロードされておらずサウンドデバイスが有効ではないことの確認。
marryrush# kldstat ← サウンドドライバはロードされていない Id Refs Address Size Name 1 10 0xc0400000 6f6544 kernel 2 1 0xc0af7000 59f20 acpi.ko 3 1 0xc3584000 16000 linux.ko 4 1 0xc3727000 2000 dragon_saver.ko 5 1 0xc392f000 3000 speaker.ko marryrush# cat /dev/sndstat cat: /dev/sndstat: No such file or directory ← サウンドデバイスは有効になっていない marryrush#
snd_driverモジュールのロード
snd_driver.ko モジュールは、kernelが持っているサウンドドライバを全てロードする。 このモジュールをロードする。
marryrush# kldload snd_driver marryrush# kldstat ← サウンドドライバが全てロードされた Id Refs Address Size Name 1 36 0xc0400000 6f6544 kernel 2 1 0xc0af7000 59f20 acpi.ko 3 1 0xc3584000 16000 linux.ko 4 1 0xc3727000 2000 dragon_saver.ko 5 1 0xc392f000 3000 speaker.ko 57 1 0xc393e000 2000 snd_driver.ko 58 1 0xc3940000 5000 snd_vibes.ko 59 29 0xc3945000 1c000 sound.ko 60 1 0xc3980000 4000 snd_via82c686.ko 61 1 0xc3984000 5000 snd_via8233.ko 62 1 0xc398b000 4000 snd_t4dwave.ko 63 1 0xc398f000 5000 snd_solo.ko 64 4 0xc3994000 4000 snd_sbc.ko 65 1 0xc399e000 4000 snd_sb8.ko 66 1 0xc39a2000 4000 snd_sb16.ko 67 1 0xc39a6000 10000 snd_neomagic.ko 68 2 0xc39b6000 9000 snd_mss.ko 69 1 0xc39c1000 8000 snd_maestro3.ko 70 1 0xc39e5000 a000 snd_maestro.ko 71 1 0xc39d8000 5000 snd_ich.ko 72 1 0xc39f7000 4000 snd_fm801.ko 73 2 0xc39fb000 4000 snd_ess.ko 74 1 0xc39ff000 6000 snd_es137x.ko 75 1 0xc3a05000 6000 snd_emu10k1.ko 76 1 0xc3a4a000 b000 snd_ds1.ko 77 2 0xc3a0b000 6000 snd_csa.ko 78 1 0xc3a22000 5000 snd_cs4281.ko 79 1 0xc3a27000 4000 snd_cmi.ko 80 1 0xc3a2d000 5000 snd_atiixp.ko 81 1 0xc3a3a000 4000 snd_als4000.ko 82 1 0xc3a3f000 4000 snd_ad1816.ko marryrush# cat /dev/sndstat ← サウンドデバイスが有効になっている FreeBSD Audio Driver (newpcm) Installed devices: pcm0: <Intel ICH4 (82801DB)> at io 0xee000000, 0xed800000 irq 17 bufsz16384 kld snd_ich (1p/1r/0v channels duplex default) marryrush#
サウンドドライバが有効となり、ドライバとして snd_ich が使われたことが判る。 ※/dev/sndstat の出力に注目。“ kld snd_ich ” がそれ。
ターゲットのドライバをロードしなおす
marryrush# kldunload snd_driver ← snd_driverモジュールをアンロードする marryrush# kldload snd_ich ← snd_ich ドライバをロードする marryrush# kldstat Id Refs Address Size Name 1 12 0xc0400000 6f6544 kernel 2 1 0xc0af7000 59f20 acpi.ko 3 1 0xc3584000 16000 linux.ko 4 1 0xc3727000 2000 dragon_saver.ko 5 1 0xc392f000 3000 speaker.ko 82 1 0xc393e000 5000 snd_ich.ko ← snd_ich ドライバがロードされている 83 1 0xc3943000 1c000 sound.ko marryrush# cat /dev/sndstat ← サウンドデバイスが有効になっている FreeBSD Audio Driver (newpcm) Installed devices: pcm0: <Intel ICH4 (82801DB)> at io 0xee000000, 0xed800000 irq 17 bufsz16384 kld snd_ich (1p/1r/0v channels duplex default) marryrush#
documents/freebsd/freebsd-001.txt · 最終更新: 2024/11/01 16:25 by k896951