[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[debian-devel:13670] Re: gom (Re: Re: volume package is GPL2?)
佐野@浜松です。
In <20010212095631F.kohda@xxxxxxxxxxxxxxxxxxxx>,
on "Mon, 12 Feb 2001 09:55:34 +0900',
with "[debian-devel:13664] Re: gom (Re: Re: volume package is GPL2?)",
Atsuhito Kohda <kohda@xxxxxxxxxxxxxxxxxxxx> さん wrote:
> civic:~$ dpkg -L kernel-image-2.2.18pre21 | grep sound
> /lib/modules/2.2.18pre21/misc/sound.o
> /lib/modules/2.2.18pre21/misc/soundcore.o
>
> となるので soundcore.o があるのは問題ないと思ってる
> のですが(snd.o はありません)。念の為 soundcore.o を
> 移動しておいてみると
>
> civic:/home/kohda# depmod -a
> depmod: *** Unresolved symbols in /lib/modules/2.2.18pre21/misc/sound.o
>
> になります。
ごめんなさい。勘違いです。私の場合
CONFIG_SOUND=y
してるので sound_core.o 相当のコードはカーネルに組み込まれていて、
モジュールとしては存在しないのでした。
> > > > 手元の機械では sb ドライバー使ってるので /etc/modutils/gom を
> > > >
> > > > #post-install sound /etc/init.d/gom start >/dev/null 2>&1
> > > > post-install sb /etc/init.d/gom start >/dev/null 2>&1
> >
> > 「起動後 modprobe -a cs4232」したら上記の post-install が
> > 効くと思うのですが、違います ?
>
> まだ確認してません(またやっておきます)。これは手動で
> modprobe -a cs4232 したときだけに効くものでしょうか?
他にどういう方法があるのかよくわかりませんが、とりあえず
私の環境では /etc/gom 以下をデフォルトと異なるように設定して
modprobe -a sb すると、設定した結果が反映されています。
確認ですが /etc/init.d/gom start した時にはちゃんと
Gom initializing audio mixer(s)...done.
と表示されていますよね ?
/etc/gom/mixer.default がうまく設定できていないと
エラーになるので注意してください。
> alias char-major-14 cs4232
> post-install cs4232 /sbin/modprobe "-k" "adlib_card"
> options cs4232 io=0x220 irq=5 dma=1 dma2=3
> options adlib_card io=0x388
>
> こんなことをやるようにドキュメントにあって設定してますが
> これは auto でロードしたときにも効いてるのだと思ってるの
> ですが。(それともこれと重複してるのが良くない?)
これはどこに設定してあるのですか ? それとその「ドキュメント」
ってのは何を見てます ?
私の場合、
> options cs4232 io=0x220 irq=5 dma=1 dma2=3
> options adlib_card io=0x388
に相当するものは /etc/modules に
#auto
sb irq=5 io=0x220 dma=1 dma16=-1
opl3 io=0x388
として設定してあります。
/etc/modules.conf には /etc/modutils/gom に記載した
# This initializes sound mixers with gom anytime
# the "sound.o" module is loaded
#post-install sound /etc/init.d/gom start >/dev/null 2>&1
post-install sb /etc/init.d/gom start >/dev/null 2>&1
はありますが、これ以外に sound 関係の設定はありません。
> カーネル再構築で変なことしてなければ soundcore は(cs4232 の場合)
「変なこと」かどうかはわかりませんが、カーネル組み込みの場合は
モジュールとしての soundcore.o はありません。
> あっても良さそうなのと、起動時には depmod (modprobe ?)で
> メッセージが出るのに、起動後 depmod で(modprobe でも)メッセージ
> が出ないのが気になってます。
「起動時のメッセージ」は
> > > modprobe: Can't locate module sound-slot-0
> > > modprobe: Can't locate module sound-service-0-0
ですよね。
あとカーネルのバージョンは 2.2.18 ?
sound_core.c を見ると
chain=unit&0x0F;
if(chain==4 || chain==5) /* dsp/audio/dsp16 */
{
unit&=0xF0;
unit|=3;
chain=3;
}
spin_lock(&sound_loader_lock);
s = __look_for_unit(chain, unit);
if (s == NULL) {
char mod[32];
spin_unlock(&sound_loader_lock);
/*
* Please, don't change this order or code.
* For ALSA slot means soundcard and OSS emulation code
* comes as add-on modules which aren't depend on
* ALSA toplevel modules for soundcards, thus we need
* load them at first. [Jaroslav Kysela <perex@xxxxxx>]
*/
sprintf(mod, "sound-slot-%i", unit>>4);
request_module(mod);
sprintf(mod, "sound-service-%i-%i", unit>>4, chain);
request_module(mod);
spin_lock(&sound_loader_lock);
s = __look_for_unit(chain, unit);
}
となっていて、/dev/audio などのデバイスが設定 (register) されていない
状態で sound 関係が open されようとした際に、これらのデバイスをロード
しようとしてエラーになっているように見えます。
試しに /etc/modules.conf に
alias sound-slot-0 cs4232
alias sound-service-0-0 sound
としてみたら、どうなるでしょう ?
--
# (わたしのおうちは浜松市、「夜のお菓子」で有名さ。)
<kgh12351@xxxxxxxxxxx> : Taketoshi Sano (佐野 武俊)