[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[plamo:14888] Re: AD1981A
-
From:YAMAGUCHI Shingo
-
Date:Wed, 31 Jul 2002 20:45:34 +0900 (JST)
- Subject: [plamo:14888] Re: AD1981A
- From: shingo-y@xxxxxxxxxxxxxx (YAMAGUCHI Shingo)
- Date: Wed, 31 Jul 2002 20:43:00 +0900 (JST)
山口@金沢市 です。
<3D4719C1.7020903@tkmr.elec.keio.ac.jp>の記事において
uesaka@tkmr.elec.keio.ac.jpさんは書きました。
> bash-2.05a# alsactl power
> alsactl: power:1255: No soundcards found...
これはドライバの組み込みがうまくいってないと駄目の
ようですね。
> そこで、以下に syslog, messages, dmesg の内容(の一部)を載せてみます。
>
> ----- syslog -----
> Jul 31 07:34:02 localhost kernel: Intel ICH soundcard not found or
> device busy
> Jul 31 07:34:02 localhost insmod:
> /lib/modules/2.4.18/kernel/sound/pci/snd-intel8x0.o: init_module: No
> such device
> Jul 31 07:34:02 localhost insmod:
> /lib/modules/2.4.18/kernel/sound/pci/snd-intel8x0.o: insmod snd-card-0
> failed
> Jul 31 07:34:02 localhost modprobe: modprobe: Can't locate module snd-card-1
> Jul 31 07:34:02 localhost modprobe: modprobe: Can't locate module snd-card-2
> Jul 31 07:34:02 localhost modprobe: modprobe: Can't locate module snd-card-3
> Jul 31 07:34:39 localhost atd[60]: Cannot change to /var/spool/atjobs:
> Permission denied
> Jul 31 07:34:39 localhost kernel: Unknown bridge resource 0: assuming
> transparent
> Jul 31 07:34:39 localhost kernel: PCI: Device 00:1f.1 not available
> because of resource collisions
> Jul 31 07:34:46 localhost modprobe: modprobe: Can't locate module
> char-major-10-134
> ----- syslog -----
どういうコマンドを実行した出力かちょっとわからないのですが、
/etc/modules.conf に余計なこと(snd-card-1 とか)を書いてありそう
なので、ここから確かめていきましょう。
PCI のサウンドチップの場合、/etc/modules.conf の設定はほぼ定型で、
次のようになります。
----- /etc/modules.conf -----
# for ALSA
alias /dev/snd snd
alias /dev/sound snd-*-oss
options snd \
snd_major=116 \
snd_cards_limit=1 \
snd_device_mode=0666 \
snd_device_gid=16 \
snd_device_uid=0
alias snd-card-0 snd-ymfpci
alias sound-slot-0 snd-card-0
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss
----- /etc/modules.conf -----
始めの 2 行はデバイスとモジュールの対応づけを行っています。
これは devfs 用にデバイスの メジャー/マイナー 番号を使わない
書き方にしていますが、従来通り、
alias char-major-116 snd
alias char-major-14 soundcore
というように書いても大丈夫です。
次の snd モジュールの設定では、
snd_major= デバイスのメジャー番号の指定(116で固定)
snd_cards_limit= サウンドカードを探索する数(使うカード数を指定)
が重要です。後のオプションは環境にあわせて書き換えてください。
# mode を省略すると 0600 に、uid/gid を省略すると root.root に
# なります
## ので root 以外は音が鳴らせなくなります(devfsの場合)
次の行は、alsa で使うサウンドカードの 0 番目として snd-ymfpci を
登録しています。ここは うえさか さんの場合は snd-intel8x0 になり
ます。
後の行は OSS エミュレーション関係の設定ですが、このまま記述
すれば大丈夫です。
これ以外に OSS や ALSA の設定がある場合はコメントアウトして
ください。
ここまでできたら、ALSA のドライバソースに起動時用のスクリプトが
ありますので、これを使って正しく組み込めるかどうか試してみて
ください。スクリプトは、
alsa-driver-0.9.0rc2/utils/alsasound
です。使い方は、
./alsasound start
./alsasound stop
...
のようにします。
# /etc/modules.conf の内容を見て適切に処理してくれます
もし駄目だったら、今回は一旦あきらめなければならないかも
しれません。
# snd-intel8x0 は設定をほとんどいじれないので、自動認識
# できなければ「未対応」ということになります
もし、これでうまくいったなら、モジュールをロードした段階で
alsamixer コマンドを実行してボリュームを設定し、./alsasound stop
してください。
# ボリューム設定が /etc/asound.state に保存され、次からは設定が
# 再現されます
ここまでできたらこのスクリプトを起動時に実行されるように
設定します。
(方法1)
昔ながらの Plamo 流の方法では、この ./alsasound を
/etc/rc.d/rc.alsasound などとして置き、/etc/rc.d/rc.local から
呼び出すようにします。
# 私はこっちの方法でしています(SysV系の配置には慣れないので)
----- /etc/rc.d/rc.local -----
# Start sound service
if [ -x /etc/rc.d/rc.alsasound ]; then
/etc/rc.d/rc.alsasound start
fi
----- /etc/rc.d/rc.local -----
さらに、終了時に設定を保存するために、/etc/rc.d/rc.6 に stop
動作のための記述を追加します(kill all processes の前あたりに
書きます)。
----- /etc/rc.d/rc.6 -----
# Stop sound service
if [ -x /etc/rc.d/rc.alsasound ]; then
/etc/rc.d/rc.alsasound stop
fi
----- /etc/rc.d/rc.6 -----
(方法2)
一方、Plamo 3.0 だと一部 SysV 系の体系が取り込まれているので、
次のようにします。
1. ./alsasound を /etc/rc.d/init.d 以下に置きます
2. /etc/rc.d 以下に rc?.d ディレクトリ(? は run level です)が
あるので、起動させたい run level のディレクトリへ移動し、
ln -s ../init.d/alsasound S??alsasound
とします(?? は起動時のタイミングを 2 桁の番号で指定します)。
3. 同様に、終了させたい run level のディレクトリで、
ln -s ../init.d/alsasound K??alsasound
とします(?? は同様に終了のタイミングを 2 桁の番号で指定します)。
これで大丈夫なはずですが、自分はこの方法を使っていないので
間違っていたら誰か指摘をお願いします。
--
山口 真悟 (YAMAGUCHI Shingo)
shingo-y@spacelan.ne.jp
shingo@kip.iis.toyama-u.ac.jp
- Follow-Ups
-
- [plamo:14889] Re: AD1981A, Takeo Uesaka
- References
-
- [plamo:14887] Re: AD1981A, Takeo Uesaka
[検索ページ]
[メール一覧]
Plamo ML 公開システム