[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: intr level for vraiu



>>>>> On Thu, 21 Feb 2002 21:03:05 +0900 (JST),
	HAMAJIMA Katsuomi <hamajima@nagoya.ydc.co.jp> said:

> 濱嶋です。

どうも、こんにちは。

> VR4121のAIU(Audio Interface Unit)がvrip_intr_establish()で割込みを登録
> する際に指定するレベルは何がふさわしいのでしょうか?

audio ですよね?

> IPL_NET、IPL_TTY、IPL_SERIAL、IPL_CLOCK、IPL_STATCLOCKのどれでもない気
> がするので、いまは残りのIPL_BIOを指定して動かしていますが。

本来どうあるべきかというと、IPL_AUDIO を使うべきです。
これは、audio サブシステム (sys/dev/audio*) が、splaudio() を期待して
いるからです。

audio は、かなりのリアルタイム性を要求するので、i386 port だと
IPL_IMP より高い、IPL_CLOCK のすぐ下の優先度を IPL_AUDIO に割り当てて
ますね。たぶん、これが正解なんでしょう。仕様上は… あれれ、spl(9) に
記述がない… いいのかな。これ。

現実的な話をすると、IPL_AUDIO がない port は、sys/dev/audio_if.h で、
IPL_AUDIO に IPL_BIO を割り当ててます。
(BIO は、結構優先度が低いんだけど…)。

だから、IPL_BIO で正解と言えば正解ですけど、直接 IPL_BIO と書くのでは
なく、audio_if.h を #include して、IPL_AUDIO と書いた方がスタイルとし
て良いと思います。
--
soda