酔漢電子工作手帳

2007-05-05

ES1371

| 08:27 | ES1371 - 酔漢電子工作手帳 を含むブックマーク はてなブックマーク - ES1371 - 酔漢電子工作手帳

VMWareオーディオインターフェースはEnsoniqのES1371を使用しています。オーディオコントローラはAC97とPCIのブリッジのように動作します。

会社はとうの昔に消滅していますが、データシートはネットの中をまだ漂流しています。これをダウンロードして呼んでみましたが、さっぱりわかりません。おそらくシートを書いた人が、デバイスドライバを書いたことがないのが最大の問題です。オーディオ・データの流れ、DMAとの絡み、ドライバとデバイスの同期といった視点がすっぽり抜け落ちています。

前の世代のチップであるES1370に継ぎ足しで書いたのかもしれません。

たとえばAC97コーデックからの出力をメモリに転送するDMAがあるのですが、それがリニアのワンショットDMAにしか見えません。サーキュラーバッファの操作をどうするかヒントでもあればいいのですが。

ALSA

で、Linuxソースコードから掘り起こしてES1371用のALSAドライバを眺めてみたりしていますが、これはこれでほんとにデバイス・アクセス用のドライバなので何がなんだかわかりません。ALSAの開発者である岩井隆さんが執筆したWriting A ALSA Driverを参照していますが、やはり制御の流れの視点が欠落していて難解です。

Linuxに限りませんがデバイス・ドライバ関連の説明を全部テキストでやる人には本当に困ってしまいます。デバイスのデータシートがしっかりしていればそれでもいいのですが、いつもそうとは限らないわけで。文句ばかりいっても仕方がないので自分も反省してTOPPERS/JSP用のオーディオ・サンプルの書き直しを考えます。

Intel P945/ICH7

| 15:24 | Intel P945/ICH7 - 酔漢電子工作手帳 を含むブックマーク はてなブックマーク - Intel P945/ICH7 - 酔漢電子工作手帳

Intelチップセット仕様書を公表しています。P945のサウス・ブリッジに当たるICH7のスペックを見てみました。こいつのオーディオがEN1371とぜんぜん違うのは予想通りとして、興味があったのはICH6との差異です。

ICH7と6のオーディオ・ブロックを比較してみると、同じでした。厳密に調べたわけではありませんが、ICH6用に開発したソフトはICH7でも使えると思います。ただ、ICH6と7のオーディオ・ブロックのPIC DIDは異なります。

AMDVIAチップセット仕様を公表していません。VIAオープンソース開発者に対しては応相談としています。

追記:AMDは組み込み用途向けのコンパニオン・チップの詳細を公表しています。が、AMD690のサウスブリッジであるSB600の仕様は公表していないようです。

トラックバック - http://ecrafts.g.hatena.ne.jp/suikan/20070505