x86 ハードウェア上の Mac OS X 2008–2024 技術文献アーカイブ
InfiniteMac OSx86 › Snow Leopard 10.6 › Leopard用 AppleHDA.kext オーディオドライバを Snow Leopard へ…
478,935 reads · 2009-09-08 – 2010-11-14
導入ガイド Snow Leopard 10.6 DSDT ALC889a / Audio

Leopard用 AppleHDA.kext オーディオドライバを Snow Leopard へ移植する方法(バイナリ Byte-Flip 置換および Plist 構造の移植ガイド)

Mormegil氏による定番オーディオドライバ移植チュートリアル:HexEditでAppleHDAバイナリ内のCodec IDをリトルエンディアン(Byte-Flip)置換し、LeopardのHDAConfigDefault、Layouts、PathMapsをSnow Leopardへ移植する手順。

筆頭著者
@mormegil 公開日: 2009-09-08
収録コレクション
Snow Leopard 10.6
アーカイブ記録規模
累計閲覧 478,935 回 · 厳選フィールドノート 80 件(全 117 件の投稿より抽出) · 2009-09-08 – 2010-11-14
参加・検証メンバー (39)
@mormegil (27)@mimayin (14)@Pietruszka (6)@airwalk776 (6)@msf5042 (6)@Jedric (5)@dan10 (4)@calabuig (4)@Snow (3)@Gurruwiwi (3)@blkhockeypro19 (3)@ping99 (3)@max.1974 (3)@xxxslayeriiixxx (2)@thorazine74 (2)@vincenzo32 (2)+23 more
対応ハードウェア参照
Mac USB Audio DACs ↗ Workstation Coolers & Thermal Gear ↗ SATA III & NVMe SSDs ↗
日本語完訳・技術モノグラフ · ターミナルコマンド、Kext 名、ACPI ノード、ブート引数は原文のまま正確に保持しています英語原文を表示 (Original English) →

さて、Leopardで使用していた AppleHDA.kext をSnow Leopard用に変換したいという方から数多くのリクエストをいただいてきました。
このガイドでは、すでに完全に動作しているKext(少なくともご自身の用途において十分に機能しているKext)が手元にあることを前提としています。

追記:また、このガイドではDSDTによるオーディオのインジェクションが済んでいることを前提としています。snow氏の ガイド → を参照してください。
もしお使いのDSDT内に AZAL も HDEF も見当たらない場合は、こちら → のように手動で挿入してください。

必要なもの:

1. Snow Leopard純正(バニラ)の AppleHDA.kext
2. 動作実績のある AppleHDA.kext(Leopardで正常に動作することを必ず確認してください!)
3. PlistEdit Pro (cid-8b65993ef55cf014.skydrive.li ve.com/browse.aspx/.Public/OSx86/Snow%20Leopard/Applications%20for%20OSx86%20%7C5aplikacje%7C6?view=details)
4. HexEdit (hexedit.sourc eforge.net/)

1) まず最初に、バイナリパッチを一切行わなくてもネイティブでサポートされていることが判明しているコーデックの一覧は以下の通りです。

Name          Codec ID (dec)   Codec ID (hex)
AD1984        299112836        0x11D41984
AD1988        299112843        0x11D4198B
STAC9220    -2088470912        0x83847680
ALC262        283902562        0x10ec0262
ALC885        283904133        0x10ec0885

お使いのコーデックIDがこれらのいずれかに一致する場合は、このステップをスキップできます。
一致しない場合は、Snow Leopard純正の AppleHDA.kext(右クリック -> パッケージの内容を表示)を開き、以下の場所へ移動します:

(SL)AppleHDA.kext/Contents/MacOS/

HexEditで AppleHDA バイナリを開き、上記のネイティブ対応コーデックIDの1つをご自身のコーデックIDに置き換えます。
この例では、コーデック 0x10ec0885(ALC885)を 0x10ec0888(ALC888)に置き換えてみます。

Command+F を押して 8508ec10(10ec0885 をバイト反転[Byte-Flip]したもの)を検索し、8808ec10(10ec0888 をバイト反転したもの)に置換します。
そのまま「Replace All(すべて置換)」を実行してください。確認のため補足しておくと、該当箇所は4箇所あります。置換が完了したら保存して終了します。

2) 次にplistファイルの編集に移ります。Snow Leopard側のKext内にある2つのplistを編集する必要があります。

まず最初に編集するのはこちらです:

(SL)AppleHDA.kext/Contents/PlugIns/AppleHDAHardwareConfigDriver.kext/Contents/Info.plist

plistエディタで開き、以下の階層へ移動します:

IOKitPersonalities/HDA Hardware Config Resource/HDAConfigDefault/

そして、その配下にある項目をすべて削除します。

次に、手元の動作しているLeopard用AppleHDAのバージョンに応じて、以下のいずれかを開きます:

(Leo)AppleHDA.kext/Contents/PlugIns/AppleHDAController.kext/Contents/Info.plist
(Leo)AppleHDA.kext/Contents/PlugIns/AppleHDAHardwareConfigDriver.kext/Contents/Info.plist

階層をたどっていくと、以下のような項目が見つかります:

ご自身の CodecID が含まれているキー(上図の番号 0)を右クリックしてコピーします。
あわせて、使用している LayoutID の値も控えておいてください(通常は 12 のはずです)。

先ほどのSnow Leopard側のplistに戻り、HDAConfigDefault をクリックして子要素としてペースト(Paste as Child)します。保存して終了してください。

3) 続いて、以下のファイルを編集します:

(SL)AppleHDA.kext/Contents/PlugIns/AppleHDAPlatformDriver.kext/Contents/Info.plist

以下の階層へ移動します:

IOKitPersonalities/HDA Platform Resource/

そして、Layouts および PathMaps の配下にある項目をすべて削除します。

ここでも先ほどと同様に、動作しているLeopard用AppleHDAのバージョンに応じて以下のいずれかを開きます:

(Leo)AppleHDA.kext/Contents/Info.plist
(Leo)AppleHDA.kext/Contents/PlugIns/AppleHDAPlatformDriver.kext/Contents/Info.plist

階層をたどっていくと、以下のような構造が見つかります:

Layouts 配下にある、ご自身の LayoutID(12)を含むキー(図の番号 0)を右クリックしてコピーします。
ここで使用されている PathMapID の値を控えておきます(この例では 9 です)。
また、CodecID が正しいかどうかも確認してください。
先ほどのSnow Leopard側のplistに戻り、Layouts をクリックして子要素としてペースト(Paste as Child)します。

再びLeopard側のplistに戻り、以下のような項目を探します:

PathMaps 配下にある、先ほど控えたご自身の PathMapID(この例では 9)を持つキー(番号 0)を右クリックしてコピーします。
Snow Leopard側のplistに戻り、PathMaps をクリックして子要素としてペーストします。

著者による追記・技術改訂履歴

筆頭著者による補足ディスパッチ:@mormegil

著者追記 #1 @mormegil 2009-09-08

このplistがベストに動作します。今後、パッチ済みのAppleHDAそのものはアップロードしないつもりです。

著者追記 #2 @mormegil 2009-09-09

ステップ2では、CodecID キーの配下でご自身のコーデックID(10進数)を検索してください。見つかったら、そこで使われている LayoutID を確認し、もし 12 でなければ 12 に変更してください。

念のためもう一度検索して、1箇所にしか存在しないことを確認しておきましょう。他のレイアウト定義は安全に削除して構いませんので、plist内をすっきり整理しておくと良いでしょう。

著者追記 #3 @mormegil 2009-09-10 ↳ Re: @Pietruszka
@PietruszkaすべてのPathMapとLayoutをコピーしましたが動作しませんでした… アドバイスいただいた方法を試してみます… 助けていただきありがとうございます。追伸:それでもダメな場合、Leopardで動いているAppleHDAと10.6用の新しいものを投稿してもいいでしょうか?

DSDTにはパッチを当てていますか?

著者追記 #4 @mormegil 2009-09-10 ↳ Re: @arm1tage
@arm1tage私の環境(Dell E6500、IDTオーディオ、バイト反転16進数:8508EC10)でも、パッチ済みDSDTを使用しているにもかかわらず動作しませんでした。ただ、なぜかネットワーク環境設定に「新しいインターフェイスが検出されました - PCIシリアルアダプタ (3)」という謎の項目が現れました…

そのコーデックアドレスはRealtek製のALC885/ALC889aのものです。LinuxのLive CDを使ってご自身の環境のコーデックダンプを取得してください。

著者追記 #5 @mormegil 2009-09-10 ↳ Re: @Gurruwiwi
@Gurruwiwimormegil、あなたのガイドに従い、集めるのを手伝ってくれたすべての情報を基に作業したところ、すべての「assertion "0"」Verboseエラーが(1つを除いて!)消えていることが分かりました!システムがクラッシュしたりKPを起こしたりすることもなくなり、たまにVerboseメッセージが2回出る程度です。これは私がplistの構造をガイドに近づけようとしてエントリを削除したために自分で引き起こしたエラーだと分かっています…

10.5(Leopard)ではオーディオは正常に動作していますか?

著者追記 #6 @mormegil 2009-09-10

HexEditを使っていますよね?それならtxtファイルが生成されるはずはないのですが。

ともあれ、最初にお伝えした通り、このガイドはすでに動作するKextが手元にあることを前提としています。まずはLeopardを起動して、InsanelyMacフォーラムなどを検索し、見つけられる限りの既製Kextを試して正常に動作するものを探してみてください。必要なのは、お使いのコーデックに合った正しいConfigData、Layout、PathMapが揃ったplist一式だけです。

それが確保できてから、初めてSnow Leopardへの移植(ポーティング)に取り掛かることができます。

著者追記 #7 @mormegil 2009-09-10 ↳ Re: @Pietruszka
@Pietruszkaまだ動作するKextが作れません… ステップ2で… 自分のCodecIDが2箇所ありました… 2つともコピーしてみましたがダメ、片方だけでもダメ、LayoutIDを662から12に変更してもダメでした… もうどうすればいいか見当もつきません。諦めます… 他に何ができるか分かりません…

そのAppleHDAは本当に10.5で動作していたものですか?また、DSDT内のLayoutIDは何になっていますか?

10.5で「システムプロファイラ > オーディオ」を開いたとき、「オーディオID(Audio ID)」は何と表示されていますか?

著者追記 #8 @mormegil 2009-09-18

DSDT内に見当たらない場合は、以下のHDEFコードをそのままDSDTに追加してください。

            Device (HDEF)
            {
                Name (_ADR, 0x001B0000)
                Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x04)
                        {
                            "layout-id", 
                            Buffer (0x04)
                            {
                                0x0C, 0x00, 0x00, 0x00
                            }, 

                            "PinConfigurations", 
                            Buffer (Zero) {}
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }
            }

Device (PCI0) を探し、以下のように配置します:

       Device (PCI0)
        {
            Device (HDEF)
            {
                Name (_ADR, 0x001B0000)
                Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x04)
                        {
                            "layout-id", 
                            Buffer (0x04)
                            {
                                0x0C, 0x00, 0x00, 0x00
                            }, 

                            "PinConfigurations", 
                            Buffer (Zero) {}
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }
            }
            .
            .
            .
著者追記 #9 @mormegil 2009-09-20

Device ID: 0x1458A002
Audio ID: 12

Device ID: 0x10438277
Audio ID: 12

何かに気づきませんか?

著者追記 #10 @mormegil 2009-09-20

ガイドをちゃんと読みましたか?バニラのSL用Kextに何が入っているかは関係ありません。動作しているLeopard用Kextから設定を移植・コピーするというのがこの手法の趣旨です。

0x1458A002 はあなたのコーデックIDではありません。ご自身のコーデックIDが何であるかすら把握されていないのであれば、お力にはなれません。
著者追記 #11 @mormegil 2009-09-21 ↳ Re: @vincenzo32
@vincenzo32皆さんこんにちは。このフォーラムへの初投稿です。ASUS Z53JaノートPCに搭載されているRealtek ALC660/861でもこのガイドが使えるかどうかだけお聞きしたいです。よろしくお願いします。

旧環境(Leopard)のKextが正常に動作している限り、どのコーデックであってもこの方法が使えるはずです。

著者追記 #12 @mormegil 2009-09-23 ↳ Re: @blkhockeypro19
@blkhockeypro19DSDTに適切にパッチを当て、ガイドの手順も問題なく完了しました。再起動すると以下のエラーが出ます:9/21/09 6:46:35 PM kernel NVDANV50HAL loaded and registered. 9/21/09 6:46:36 PM kernel Sound assertion "0 != result" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAWidgetSTAC9220.cpp" at line 113 goto Exit 9/21/09…

それで、実際に音は出ていますか?

著者追記 #13 @mormegil 2009-09-26 ↳ Re: @ping99
@ping99このガイドに従ってオリジナルのAppleHDA(Snow Leopard版)にパッチを当てました。再起動するたびに以下のようなSound assertionが表示されます。Sep 25 18:22:03 Ping-Tsengs-Mac-Pro kernel[0]: Previous Shutdown Cause: 3 Sep 25 18:22:04 Ping-Tsengs-Mac-Pro kernel[0]: VoodooPS2SynapticsTouchPad loaded Sep 25 18:22:05 Ping-Tsengs-Mac-Pro…

32ビットと64ビットのどちらでSLを実行していますか?使用しているブートローダーは何ですか?また、バイナリにはパッチを当てましたか?

ダンプ内容とKPの症状を見る限り、ノートPCをお使いのようですね。そもそも完全に動作するKextをお持ちではなく、ゼロからパッチを作成しようとしていませんか?もしそうであれば、このガイドは対象外です。あなたが探しているゼロからの作成ガイドは こちら ↗ にあります。

ただ、plistの構造自体は整っているようです。ConfigData、Layout、PathMapを少し整理して削るだけで済むかもしれません。ノートPCにしてはマッピングされているポート数が多すぎるように見受けられます。

著者追記 #14 @mormegil 2009-09-26 ↳ Re: @blkhockeypro19
@blkhockeypro19音は出ていません =\

そのKextを本当にご自身のLeopard環境で試して、ちゃんと音が出ることを確認されたのでしょうか?

著者追記 #15 @mormegil 2009-09-26

つまり、そもそも元のKextが完全には機能していないため、今回のガイド自体に起因する問題ではないということですね?ゼロからのパッチ作成は膨大な試行錯誤を伴うため、残念ながらその点についてはあまりお力になれません。

The King氏のガイドに従ってさまざまなポートマッピングを試し、実際に動作するかどうかご自身で検証していただく必要があります。ConfigDataを基本的な使用に必要な最小限のポート数だけに絞ってみるか、あるいは車輪の再発明を避けるためにLeopardで動作する既存の完成されたKextを探してみてください。

また、64ビット環境をお使いの場合は、Chameleon RC3の使用は避けてください。64ビットEFIサポートが不完全なため、起動時にSound assertionエラーを引き起こす原因になります。

著者追記 #16 @mormegil 2009-10-27

はい、Layout IDは全体で一貫してさえいれば何番でも構いません。たとえば、DSDT内の layout-id が 79 03 00 00(バイト反転)=> 00 00 03 79(16進数)=> 889(10進数)であれば、plist側でも LayoutID に 889 を使う必要があります。

@airwalk:そのコーデックIDで本当に間違いありませんか?ご自身でダンプを取得されましたか?私が知る限り、ALC889はALC885と同じコーデックIDを共有していたはずです。バイナリのHexEditを行わずにそのまま試してみてください。

著者追記 #17 @mormegil 2009-10-29

ふむ… おっしゃる通りですね。

DSDT内にConfigDataをインジェクトしていませんか?それが原因か、あるいはPathMapが間違っている可能性があります。確認ですが、AppleHDAPlatformDriver.kext 内の「Layouts」と「PathMaps」で同じ PathMapID を指定していますか?

著者追記 #18 @mormegil 2009-11-11 ↳ Re: @Snow
@SnowやあMormegil、久しぶりだね、調子はどう?10.6.2アップデートでうちのオーディオがおかしくなってしまったので、すでに少し手を入れている(けれど動いていない)AppleHDA kextを見てくれないかと思って。media fire.com/file/mikkmb25bzz/AppleHDA.zip よろしく。追伸:今のところはAppleHDA v10.6.1を使って凌いでいるよ。

元気だよ。ちょうど自分も10.6.2をインストールしたところだ。こちらはおおむね順調で、あとはAppleHDAを片付けるだけというところだった。

どのみち自分のコーデック用に作業する必要があったので、ついでに君の分も作っておいたよ。

ALC889A用パッチ済み 10.6.1/10.6.2 AppleHDA
media fire.com/file/gm25ymjzhjw/AppleHDA_889a.zip

著者追記 #19 @mormegil 2009-11-19

Device (HDEF) のコードは、これだけにしておくべきです:How to port AppleHDA to SL →

あなたのplist自体は問題なさそうです。唯一気になるのは、1つ目のplist内のConfigDataがDSDT内のものと一致していない点です。両方のパターンを試してみてほしいのですが、必ずplist側だけに記述し、DSDT側には絶対にConfigDataを持たせないでください。

著者追記 #20 @mormegil 2009-11-20

もう片方のLeopardのplist(ConfigDataが含まれている方)も投稿してもらえますか?

著者追記 #21 @mormegil 2009-11-20

システムプロファイラにすべてのポートが表示されているとのことですので、DSDTは問題ありません。

Leopard用とSL用のplistも一通りチェックしましたが、整合性はすべて取れています。

申し訳ありませんが、ここから先は私にお手伝いできそうなことがあまりありません。

Kextは正しい手順でインストールされていますか?キャッシュの再構築(Rebuild cache)などは済んでいますか?

著者追記 #22 @mormegil 2010-06-27

ここのところ忙しくしており、返信が遅くなってすみません。ご容赦いただければ幸いです。

ALC888ユーザーの皆さん向けにこちらを共有しておきます:10.6.4 AppleHDA.kext (mega upload.com/?d=D1HV9A4K)

コミュニティ検証報告・技術フィールドノート

全 117 件のオリジナル投稿から技術的価値の高い 80 件の検証報告を収録

検証ノート #1 @infinitek 2009-09-08

情報ありがとうございます… ALC888用にパッチを当てたAppleHDAを投稿していただけませんか…?

検証ノート #2 @Pietruszka 2009-09-09

古い AppleHDA.kext の中に番号が「0」だけでなく複数(0から23まで)ある場合はどうすればいいでしょうか…

どれをコピーすればいいですか?

よろしくお願いします。

検証ノート #3 @Pietruszka 2009-09-09

すべてのPathMapとLayoutをコピーしましたが動作しませんでした… アドバイスいただいた方法を試してみます…

助けていただきありがとうございます。

追伸:それでもダメな場合、Leopardで動いているAppleHDAと10.6用の新しいものを投稿してもいいでしょうか?

検証ノート #4 @Pietruszka 2009-09-10

はい、DSDTにはパッチを当ててあります。

それでも私の環境では動きません… 何か手順を間違えているのかもしれませんが…

ともあれ助けていただきありがとうございます。

検証ノート #5 @arm1tage 2009-09-10

私の環境(Dell E6500、IDTオーディオ、バイト反転16進数:8508EC10)でも、パッチ済みDSDTを使用しているにもかかわらず動作しませんでした。ただ、なぜかネットワーク環境設定に「新しいインターフェイスが検出されました - PCIシリアルアダプタ (3)」という謎の項目が現れました…

検証ノート #6 @Gurruwiwi 2009-09-10

mormegil、あなたのガイドに従い、集めるのを手伝ってくれたすべての情報を基に作業したところ、すべての「assertion "0"」Verboseエラーが(1つを除いて!)消えていることが分かりました!システムがクラッシュしたりKPを起こしたりすることもなくなり、たまにVerboseメッセージが2回出る程度です。これは私がplistの構造をガイドに近づけようとしてエントリを削除したために自分で引き起こしたエラーだと分かっており、確かその中に codecAddressMaskData というエントリが含まれていたはずです。Verboseの該当行全体は以下の通りです:

Sound assertion "0 == codecAddressMaskData" failed in "/sourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDAcontroller.cpp" at line 1159 goto Exit

今夜またゼロからやり直してみますが、バニラの値をそのまま残すわけにはいかないですよね(一応試してはみますが)。

自分のチップに関するこの情報をどこで見つけられるかご存知ですか?

検証ノート #7 @Gurruwiwi 2009-09-10

はい、動作していますが、VoodooHDAを使ってのことです。

もう一度最初からやり直してみたところ、前回は途中でその codecAddress 関連の項目を見つけられなかったので、やはり何か手順を間違えていたようです。今回は確実にバニラのAppleHDAを用意して最初から作業し直しました。

Linuxから取得した自分の実機のコーデックダンプを使っており、唯一推測で入れたのは PathMapID を 9 にしたことくらいで、残りは完全に自分のシステム固有の値です。

しかし再起動したところ、残念ながらカーネルパニック(KP)になってしまいました。

補足:手順をやり直した際に気づいたのですが、AppleHDA/Contents/MacOS/AppleHDA のバイナリを編集してコーデックIDをバイト反転させて保存すると、テキストファイル(appleHDA.txt)が作成され、元のバイナリが「appleHDA~」にリネームされていました。そこで2回目はバイナリを別フォルダにコピーして編集・保存し、同じ出力が生成された後、リネームして末尾の「~」を消してから元の場所へ(バイナリファイルだけを)書き戻しました。これが関係しているかは分かりませんが、興味深い挙動だったので共有しておきます。

検証ノート #8 @Gurruwiwi 2009-09-10

はい、記載されていたリンク先のHexEditを使いました。4箇所のエントリをすべて置換して「File -> Save」を実行しました。

Finderで「すべての隠しファイルを表示」にしているせいでしょうか?ただ、Unix実行ファイルの末尾に「~」が付く形で変更されていたのは確かです。

アドバイス通り(Leopardで動作するKext探しを)やってみます、その手は思いつきませんでした!ありがとうございます!

検証ノート #9 @Pietruszka 2009-09-10

まだ動作するKextが作れません…

ステップ2で… 自分のCodecIDが2箇所ありました… 2つともコピーしてみましたがダメ、片方だけでもダメでした。

LayoutIDを662から12に変更してもダメでした。

もうどうすればいいか見当もつきません。

諦めます…

他に何ができるか分かりません…

検証ノート #10 @Pietruszka 2009-09-11

ID urządzenia(デバイスID): 0x1458A002 (devID)
Audio ID: 662

ただ、私が何か勘違いしていたようです(私のミスです)… DSDTにパッチを当てたかと聞かれましたよね。

はい、DSDTにはパッチを当てています(RTC、TMfix、LAN、7600GS)… ですが、サウンドのパッチは当てていません… 今まで必要なかったので… AppleHDA.kext を差し替えるだけで動いていました。

Snow LeopardではDSDTにサウンドのパッチを当てる必要があるのでしょうか?以前は不要でした。

英語が拙くてすみません。

いろいろ助けていただきありがとうございます。

検証ノート #11 @Pietruszka 2009-09-11

いろいろと助けていただき本当にありがとうございました…

教えていただいた通りにDSDTへパッチを当て、

別のフォーラムで見つけた alc662.kext(/Extra に配置)を使ったところ、無事に音が出ました…

検証ノート #12 @tokyovigilante 2009-09-16

これは素晴らしいです、ありがとうございます!これまでASUS P5K-EのAD1988BをplistインジェクタKextで動かしていましたが、この方法のおかげでS/PDIF出力まで使えるようになりました。最高です!

検証ノート #13 @lemn 2009-09-16

こんにちは。ガイドに従ってパッチ済みの AppleHDA.kext を作成しました。
問題は、kextload で読み込ませてもデバイスが一切表示されないことです。
私のオーディオチップはADI 1988です。DSDTファイルにパッチを当てるガイドにも従おうとしたのですが、そちらは別のカード(ALC889)向けの内容だったため、自分の dsdt.dsl ファイル内に該当するセクションが見当たりません。
どなたか助けていただけませんか?よろしくお願いします。

検証ノート #14 @Ezhoon 2009-09-18 ↳ Re: @mormegil

このHDEFコードはALC883でもそのまま使えますか?

@mormegilDSDT内に見当たらない場合は、以下のHDEFコードをそのままDSDTに追加してください。Device (HDEF) { Name (_ADR, 0x001B0000) Method (_DSM, 4, NotSerialized) { Store (Package (0x04) { "layout-id", Buffer (0x04) { 0x0C, 0x00, 0x00, 0x00 }, "PinConfigurations", Buffer (Zero) {} }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } } Find…
検証ノート #15 @Jedric 2009-09-20

私の環境では動作しませんでした。

DSDTのパッチは問題なく完了しています。

SLで以下のエラーが出ます:

Sep 19 23:31:33 Mac-Pro kernel[0]: Sound assertion "0 == pathMap_aDriverInstance" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 1459 goto Exit
Sep 19 23:31:33 Mac-Pro kernel[0]: Sound assertion "0 != createAudioEngines ( fPathMap_aDriverInstance )" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 172 goto Exit
Sep 19 23:31:33 Mac-Pro kernel[0]: Sound assertion "0 == pathMap_aDriverInstance" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 1459 goto Exit
Sep 19 23:31:33 Mac-Pro kernel[0]: Sound assertion "0 != createAudioEngines ( fPathMap_aDriverInstance )" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 172 goto Exit
Sep 19 23:31:33 Mac-Pro kernel[0]: Sound assertion "0 == pathMap_aDriverInstance" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 1459 goto Exit
Sep 19 23:31:33 Mac-Pro kernel[0]: Sound assertion "0 != createAudioEngines ( fPathMap_aDriverInstance )" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 172 goto Exit
Sep 19 23:31:33 Mac-Pro kernel[0]: Sound assertion "0 == pathMap_aDriverInstance" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 1459 goto Exit
Sep 19 23:31:33 Mac-Pro kernel[0]: Sound assertion "0 != createAudioEngines ( fPathMap_aDriverInstance )" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 172 goto Exit
Sep 19 23:31:33 Mac-Pro kernel[0]: DSMOS has arrivedSound assertion "0 == pathMap_aDriverInstance" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 1459 goto Exit
Sep 19 23:31:33 Mac-Pro kernel[0]: Sound assertion "0 != createAudioEngines ( fPathMap_aDriverInstance )" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 172 goto Exit

SLでの検出結果 - 音が出ない状態
Intel High Definition Audio:

Device ID: 0x1458A002
Audio ID: 12
Available Devices:
Line Out:
Connection: 1/8-Inch Jack
External Microphone:
Connection: 1/8-Inch Jack
External Microphone:
Connection: 1/8-Inch Jack
Headphone:
Connection: 1/8-Inch Jack
S/P-DIF Out:
Connection: RCA

Leopard - 正常に音が出る状態
Intel High Definition Audio:

Device ID: 0x10438277
Audio ID: 12
Available Devices:
Headphone:
Connection: 1/8 inch Jack
Speaker:
Connection: Internal
Line In:
Connection: 1/8 inch Jack
S/P-DIF In:
Connection: Optical
S/P-DIF Out:
Connection: Optical
Microphone:
Connection: Internal

検証ノート #16 @Jedric 2009-09-20

はい、それには気づいていました。だからこそ投稿した次第です。なぜかSLでは私のオーディオが常に Device ID: 0x1458A002 として検出されてしまうのです。

SLバニラの AppleHDA.kext 内を検索してみましたが、1458A002(16進数)にあたる 341352450(10進数)への参照はどこにも見当たりませんでした。

検証ノート #17 @rachaf 2009-09-20

私の環境は IDT 92HD71B7 @ Intel 82801IB ICH9 です。
codeid=0x111D76B2

PIN CONFIGは以下の通りです:
<00571C10 00571D01 00571E56 00571F18 00771C21 00771D01 00771E56 00771F58 00971C22 00971D01 00971E56 00971F58 00B71C23 00B71D01 00B71E56 00B71F58 00D71C24 00D71D01 00D71E56 00D71F58>

こちらに投稿されていたあなたのパッチ済みAppleHDA kextをダウンロードしました:
(Solved)Patching New AppleHDA Kext →

音は出るのですが、このようなカーネルパニック(Sound assertion "0 == pathMa…AppleHDA/AppleHDADriver.cpp…")が頻発します。

また、スリープからの復帰(Wake from Sleep)後にオーディオが出なくなります。

どう対処すればよいか教えていただけないでしょうか。

英語が拙くてすみません。

検証ノート #18 @Jedric 2009-09-21

はい、ガイドはしっかり読んで手順通りに進めましたし、LeopardからSnow LeopardへLayout、PathMap、CodecIDを移植するという仕組みも理解しています。

また、0x1458A002 が私のCodecIDではないことも分かっています。実機の本当のCodecIDは 0x10ec0883 です。

私が言いたかったのは、バニラの AppleHDA.kext 内のどこにも存在しないはずの 0x1458A002 がなぜSL上で表示されるのか不思議に思った、という点です(あなたが示してくれた通り、デフォルトには含まれていませんよね)。

0x1458A002 をGoogleで検索してみたところ、ALC889AのIDのようでした。

Leopardでは、自分で取得したコーデックダンプからTaruga Patcher 1.20で生成した AppleHDA.kext を使用して正常に動作しています。

Leopard上では私のオーディオは以下のように認識されています:
Device ID: 0x10438277 - これをググってみたらADI 1988Bでした(奇妙な話です)。

ふとアイデアが浮かびました…

実機の 0x10ec0883 の代わりに、Leopard上で認識されているこの 0x10438277 を使って試してみようと思います。

検証ノート #19 @thorazine74 2009-09-21 ↳ Re: @Jedric
@Jedricはい、ガイドはしっかり読んで手順通りに進めましたし、LeopardからSnow LeopardへLayout、PathMap、CodecIDを移植するという仕組みも理解しています。また、0x1458A002が私のCodecIDではないことも分かっています。実機の本当のCodecIDは0x10ec0883です。私が言いたかったのは、バニラのAppleHDA.kext内のどこにも存在しないはずの0x1458A002がなぜSL上で表示されるのか…
0x1458A002 はコーデックのサブシステムベンダーIDおよびサブシステムデバイスIDであり、PCIのベンダーID・デバイスIDでもコーデックIDでもありません。どういうわけかAppleはコーデックIDの代わりにそちらを表示します(おそらくコーデックの識別にそれを利用しているためでしょう)。
なぜあなたの環境でその値が出ているのかは謎ですが、0x1458A002 は一部のGigabyte製P35マザーボードを指すIDです。もしASUS製マザーボードをお使いなのであれば、どこか(DSDTやplistなど)で誤ってその値をインジェクトしていない限り、表示されるはずはありません。
0x10438277 はASUS製マザーボードのサブシステムIDなので、そちらが正しい値だと思います。ただし、それもコーデックIDではなくサブシステムベンダーIDである点に注意してください(Realtekがコーデックチップを製造し、ASUSがそれを基板に実装しています)。本当のコーデックIDを知るにはコーデックダンプが必要であり、システムプロファイラの表示には頼れません。
検証ノート #20 @vincenzo32 2009-09-21

皆さんこんにちは。このフォーラムへの初投稿です。ASUS Z53JaノートPCに搭載されているRealtek ALC660/861でもこのガイドが使えるかどうかだけお聞きしたいです。よろしくお願いします。

検証ノート #21 @vincenzo32 2009-09-21

少し珍しいコーデックのようで、plistの編集で苦戦しています。公称ではALC660となっているのですが、コーデックダンプ内では 0x6108ec10 と報告されています。

検証ノート #22 @thorazine74 2009-09-22 ↳ Re: @vincenzo32
@vincenzo32少し珍しいコーデックのようで、plistの編集で苦戦しています。公称ではALC600となっているのですが、コーデックダンプ内では 0x6108ec10 と報告されています。

Realtekは、ハードウェアIDが同一であるにもかかわらず異なる商用モデル名を付けることがよくあります。最も有名な例はハードウェアIDが 0x088510EC として識別されるALC889ですが、コーデックダンプに出力されている数値の方が実際に使われる正しい値です。

検証ノート #23 @Jedric 2009-09-22 ↳ Re: @thorazine74
@thorazine740x1458A002 はコーデックのサブシステムベンダーIDおよびサブシステムデバイスIDであり、PCIのベンダーID・デバイスIDでもコーデックIDでもありません。どういうわけかAppleはコーデックIDの代わりにそちらを表示します(おそらくコーデックの識別にそれを利用しているためでしょう)。なぜあなたの環境でその値が出ているのかは謎ですが、0x1458A002 は一部のGigabyte製P35マザーボードを指すIDです。もしASUS製マザーボードを…

自分のコーデックダンプを確認したところ、以下のようになっていました:
Codec: Realtek ALC883
Address: 0
Vendor Id: 0x10ec0883
Subsystem Id: 0x1043829e

Codec: Realtek ALC883
Address: 0
Vendor Id: 0x10ec0883
Subsystem Id: 0x1043829e
Revision Id: 0x100002
Default PCM:
    rates [0x560]: 44100 48000 96000 192000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM
Default Amp-In caps: N/A
Default Amp-Out caps: N/A
Node 0x02 [Audio Output] wcaps 0x11: Stereo
  PCM:
    rates [0x560]: 44100 48000 96000 192000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM
Node 0x03 [Audio Output] wcaps 0x11: Stereo
  PCM:
    rates [0x560]: 44100 48000 96000 192000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM
Node 0x04 [Audio Output] wcaps 0x11: Stereo
  PCM:
    rates [0x560]: 44100 48000 96000 192000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM
Node 0x05 [Audio Output] wcaps 0x11: Stereo
  PCM:
    rates [0x560]: 44100 48000 96000 192000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM
Node 0x06 [Audio Output] wcaps 0x211: Stereo Digital
  PCM:
    rates [0x560]: 44100 48000 96000 192000
    bits [0x1e]: 16 20 24 32
    formats [0x1]: PCM
Node 0x07 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x08 [Audio Input] wcaps 0x10011b: Stereo Amp-In
  Amp-In caps: ofs=0x08, nsteps=0x1f, stepsize=0x05, mute=1
  Amp-In vals:  [0x00 0x00]
  PCM:
    rates [0x160]: 44100 48000 96000
    bits [0x6]: 16 20
    formats [0x1]: PCM
  Connection: 1
     0x23
Node 0x09 [Audio Input] wcaps 0x10011b: Stereo Amp-In
  Amp-In caps: ofs=0x08, nsteps=0x1f, stepsize=0x05, mute=1
  Amp-In vals:  [0x00 0x00]
  PCM:
    rates [0x160]: 44100 48000 96000
    bits [0x6]: 16 20
    formats [0x1]: PCM
  Connection: 1
     0x22
Node 0x0a [Audio Input] wcaps 0x100391: Stereo Digital
  PCM:
    rates [0x560]: 44100 48000 96000 192000
    bits [0x1e]: 16 20 24 32
    formats [0x1]: PCM
  Connection: 1
     0x1f
Node 0x0b [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
  Amp-In caps: ofs=0x17, nsteps=0x1f, stepsize=0x05, mute=1
  Amp-In vals:  [0x80 0x80] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
  Connection: 10
     0x18 0x19 0x1a 0x1b 0x1c 0x1d 0x14 0x15 0x16 0x17
Node 0x0c [Audio Mixer] wcaps 0x20010f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-In vals:  [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x1f, nsteps=0x1f, stepsize=0x05, mute=0
  Amp-Out vals:  [0x19 0x19]
  Connection: 2
     0x02 0x0b
Node 0x0d [Audio Mixer] wcaps 0x20010f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-In vals:  [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x1f, nsteps=0x1f, stepsize=0x05, mute=0
  Amp-Out vals:  [0x00 0x00]
  Connection: 2
     0x03 0x0b
Node 0x0e [Audio Mixer] wcaps 0x20010f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-In vals:  [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x1f, nsteps=0x1f, stepsize=0x05, mute=0
  Amp-Out vals:  [0x00 0x00]
  Connection: 2
     0x04 0x0b
Node 0x0f [Audio Mixer] wcaps 0x20010f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-In vals:  [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x1f, nsteps=0x1f, stepsize=0x05, mute=0
  Amp-Out vals:  [0x00 0x00]
  Connection: 2
     0x05 0x0b
Node 0x10 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x11 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x12 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x13 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x14 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
  Amp-In vals:  [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-Out vals:  [0x00 0x00]
  Pincap 0x083e: IN OUT HP Detect
  Pin Default 0x01014010: [Jack] Line Out at Ext Rear
    Conn = 1/8, Color = Green
  Pin-ctls: 0x40: OUT
  Connection: 5
     0x0c* 0x0d 0x0e 0x0f 0x26
Node 0x15 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
  Amp-In vals:  [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-Out vals:  [0x00 0x00]
  Pincap 0x083e: IN OUT HP Detect
  Pin Default 0x01011012: [Jack] Line Out at Ext Rear
    Conn = 1/8, Color = Black
  Pin-ctls: 0x40: OUT
  Connection: 5
     0x0c 0x0d* 0x0e 0x0f 0x26
Node 0x16 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
  Amp-In vals:  [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-Out vals:  [0x00 0x00]
  Pincap 0x083e: IN OUT HP Detect
  Pin Default 0x01016011: [Jack] Line Out at Ext Rear
    Conn = 1/8, Color = Orange
  Pin-ctls: 0x40: OUT
  Connection: 5
     0x0c 0x0d 0x0e* 0x0f 0x26
Node 0x17 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
  Amp-In vals:  [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-Out vals:  [0x00 0x00]
  Pincap 0x083e: IN OUT HP Detect
  Pin Default 0x01012014: [Jack] Line Out at Ext Rear
    Conn = 1/8, Color = Grey
  Pin-ctls: 0x40: OUT
  Connection: 5
     0x0c 0x0d 0x0e 0x0f* 0x26
Node 0x18 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
  Amp-In vals:  [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-Out vals:  [0x80 0x80]
  Pincap 0x08173e: IN OUT HP Detect
  Pin Default 0x01a19840: [Jack] Mic at Ext Rear
    Conn = 1/8, Color = Pink
  Pin-ctls: 0x24: IN
  Connection: 5
     0x0c* 0x0d 0x0e 0x0f 0x26
Node 0x19 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
  Amp-In vals:  [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-Out vals:  [0x80 0x80]
  Pincap 0x08173e: IN OUT HP Detect
  Pin Default 0x02a19c50: [Jack] Mic at Ext Front
    Conn = 1/8, Color = Pink
  Pin-ctls: 0x24: IN
  Connection: 5
     0x0c* 0x0d 0x0e 0x0f 0x26
Node 0x1a [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
  Amp-In vals:  [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-Out vals:  [0x80 0x80]
  Pincap 0x08173e: IN OUT HP Detect
  Pin Default 0x0181304f: [Jack] Line In at Ext Rear
    Conn = 1/8, Color = Blue
  Pin-ctls: 0x20: IN
  Connection: 5
     0x0c* 0x0d 0x0e 0x0f 0x26
Node 0x1b [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
  Amp-In vals:  [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-Out vals:  [0x00 0x00]
  Pincap 0x08173e: IN OUT HP Detect
  Pin Default 0x02214c20: [Jack] HP Out at Ext Front
    Conn = 1/8, Color = Green
  Pin-ctls: 0xc0: OUT HP
  Connection: 5
     0x0c* 0x0d 0x0e 0x0f 0x26
Node 0x1c [Pin Complex] wcaps 0x400001: Stereo
  Pincap 0x0820: IN
  Pin Default 0x593301f0: [N/A] CD at Int ATAPI
    Conn = ATAPI, Color = Unknown
  Pin-ctls: 0x00:
Node 0x1d [Pin Complex] wcaps 0x400000: Mono
  Pincap 0x0820: IN
  Pin Default 0x4005e601: [N/A] Line Out at Ext N/A
    Conn = Optical, Color = White
  Pin-ctls: 0x00:
Node 0x1e [Pin Complex] wcaps 0x400300: Mono Digital
  Pincap 0x0810: OUT
  Pin Default 0x01441130: [Jack] SPDIF Out at Ext Rear
    Conn = RCA, Color = Black
  Pin-ctls: 0x00:
  Connection: 1
     0x06
Node 0x1f [Pin Complex] wcaps 0x400200: Mono Digital
  Pincap 0x0820: IN
  Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
    Conn = 1/8, Color = Black
  Pin-ctls: 0x00:
Node 0x20 [Vendor Defined Widget] wcaps 0xf00040: Mono
Node 0x21 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x22 [Audio Mixer] wcaps 0x20010f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-In vals:  [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
  Amp-Out caps: N/A
  Amp-Out vals:  [0x00 0x00]
  Connection: 11
     0x18 0x19 0x1a 0x1b 0x1c 0x1d 0x14 0x15 0x16 0x17 0x0b
Node 0x23 [Audio Mixer] wcaps 0x20010f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-In vals:  [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x80 0x80] [0x00 0x00] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
  Amp-Out caps: N/A
  Amp-Out vals:  [0x00 0x00]
  Connection: 11
     0x18 0x19 0x1a 0x1b 0x1c 0x1d 0x14 0x15 0x16 0x17 0x0b
Node 0x24 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x25 [Audio Output] wcaps 0x11: Stereo
  PCM:
    rates [0x560]: 44100 48000 96000 192000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM
Node 0x26 [Audio Mixer] wcaps 0x20010f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-In vals:  [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x1f, nsteps=0x1f, stepsize=0x05, mute=0
  Amp-Out vals:  [0x00 0x00]
  Connection: 2
     0x25 0x0b

自分のどこが間違っているのか分かりません。今朝もう一度やり直してみましたが、やはり 0x1458A002 になってしまいます。クリーンインストールしたSL環境で、どこにも 0x1458A002 などインジェクトしていません。DSDTも新規に抽出したもので、mormegilが汎用的だとして投稿していたオーディオインジェクション用コードを追加しただけです。DSDTはエラーなしでコンパイルできています。

IORegistryExplorerで見る限りは問題なさそうで、コーデックは 0x10ec0883 と認識されています。

検証ノート #24 @Jedric 2009-09-22

こちらがLeopard上で取得した情報です。ご説明いただいた通り、SLとLeopardとで表示される subsystem-id と subsystem-vendor-id が異なっています。

検証ノート #25 @blkhockeypro19 2009-09-22

DSDTに適切にパッチを当て、ガイドの手順も問題なく完了しました。再起動すると以下のエラーが出ます:

9/21/09 6:46:35 PM kernel NVDANV50HAL loaded and registered.
9/21/09 6:46:36 PM kernel Sound assertion "0 != result" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAWidgetSTAC9220.cpp" at line 113 goto Exit
9/21/09 6:46:36 PM kernel Sound assertion "0 != result" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAFunctionGroup.cpp" at line 116 goto Exit
9/21/09 6:46:36 PM kernel Sound assertion "0 != result" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAFunctionGroupSTAC9220.cpp" at line 55 goto Exit
9/21/09 6:46:36 PM kernel Sound assertion "0 != err" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDACodecGeneric.cpp" at line 205 goto ExitError
9/21/09 6:46:36 PM kernel Sound assertion "0 != result" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAWidgetSTAC9220.cpp" at line 113 goto Exit
9/21/09 6:46:36 PM kernel Sound assertion "0 != result" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAFunctionGroup.cpp" at line 116 goto Exit
9/21/09 6:46:36 PM kernel Sound assertion "0 != result" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAFunctionGroupSTAC9220.cpp" at line 55 goto Exit
9/21/09 6:46:36 PM kernel Sound assertion "0 != err" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDACodecGeneric.cpp" at line 205 goto ExitError
9/21/09 6:46:36 PM kernel Sound assertion "0 != result" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAWidgetSTAC9220.cpp" at line 113 goto Exit
9/21/09 6:46:36 PM kernel Sound assertion "0 != result" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAFunctionGroup.cpp" at line 116 goto Exit
9/21/09 6:46:36 PM kernel Sound assertion "0 != result" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAFunctionGroupSTAC9220.cpp" at line 55 goto Exit
9/21/09 6:46:36 PM kernel Sound assertion "0 != err" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDACodecGeneric.cpp" at line 205 goto ExitError
9/21/09 6:46:36 PM kernel DSMOS has arrived

何が問題なのか見当がつきますか?Leopardから持ってきたSTAC9227用のKextです。

検証ノート #26 @ping99 2009-09-25

Conexant CX20561でSL起動時にSound assertionが出る

このガイドに従ってオリジナルのAppleHDA(Snow Leopard版)にパッチを当てました。再起動するたびに以下のようなSound assertionが表示されます。

Sep 25 18:22:03 Ping-Tsengs-Mac-Pro kernel[0]: Previous Shutdown Cause: 3
Sep 25 18:22:04 Ping-Tsengs-Mac-Pro kernel[0]: VoodooPS2SynapticsTouchPad loaded
Sep 25 18:22:05 Ping-Tsengs-Mac-Pro kernel[0]: VoodooPS2Trackpad: Synaptics TouchPad v7.0
Sep 25 18:22:05 Ping-Tsengs-Mac-Pro kernel[0]: Sound assertion "0 == pathMap_aDriverInstance" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 1459 goto Exit
Sep 25 18:22:05 Ping-Tsengs-Mac-Pro kernel[0]: Sound assertion "0 != createAudioEngines ( fPathMap_aDriverInstance )" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 172 goto Exit
Sep 25 18:22:05 Ping-Tsengs-Mac-Pro kernel[0]: DSMOS has arrivedSound assertion "0 == pathMap_aDriverInstance" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 1459 goto Exit
Sep 25 18:22:05 Ping-Tsengs-Mac-Pro kernel[0]: Sound assertion "0 != createAudioEngines ( fPathMap_aDriverInstance )" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 172 goto Exit
Sep 25 18:22:05 Ping-Tsengs-Mac-Pro kernel[0]: Sound assertion "0 == pathMap_aDriverInstance" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 1459 goto Exit
Sep 25 18:22:05 Ping-Tsengs-Mac-Pro kernel[0]: Sound assertion "0 != createAudioEngines ( fPathMap_aDriverInstance )" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 172 goto Exit
Sep 25 18:22:06 Ping-Tsengs-Mac-Pro kernel[0]: com_psystar_RealtekR1000: Ethernet address 00:1f:16:57:9c:45
Sep 25 18:22:06 Ping-Tsengs-Mac-Pro kernel[0]: Sound assertion "0 == entry" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAEngine.cpp" at line 2976 goto Exit
Sep 25 18:22:08: --- last message repeated 2 times ---
Sep 25 18:22:07 Ping-Tsengs-Mac-Pro kernel[0]: Sound assertion "0 == entry" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAEngine.cpp" at line 3009 goto Exit
Sep 25 18:22:09: --- last message repeated 15 times ---
Sep 25 18:22:07 Ping-Tsengs-Mac-Pro kernel[0]: Sound assertion "0 == entry" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAEngine.cpp" at line 2976 goto Exit
Sep 25 18:22:09: --- last message repeated 1 time ---
Sep 25 18:22:07 Ping-Tsengs-Mac-Pro kernel[0]: Sound assertion "0 == fPathControls" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAPath.cpp" at line 1273 goto Exit
Sep 25 18:22:07 Ping-Tsengs-Mac-Pro kernel[0]: Sound assertion "0 != result" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAPath.cpp" at line 1194 goto Exit
Sep 25 18:22:07 Ping-Tsengs-Mac-Pro kernel[0]: Sound assertion "0 != pathSet->getWidgetAmplifierGainRange ( &zeroValue, &minValue, &maxValue, &minDB, &maxDB, kPATH_CONTROL_SPATIAL_CHANNELID_Master )" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAEngine.cpp" at line 278 goto handler
Sep 25 18:22:08 Ping-Tsengs-Mac-Pro kernel[0]: Sound assertion "0 == fPathControls" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAPath.cpp" at line 1273 goto Exit
Sep 25 18:22:08 Ping-Tsengs-Mac-Pro kernel[0]: Sound assertion "0 != result" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAPath.cpp" at line 1097 goto Exit
Sep 25 18:22:08 Ping-Tsengs-Mac-Pro kernel[0]: Sound assertion "0 == fPathControls" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAPath.cpp" at line 1273 goto Exit
Sep 25 18:22:08 Ping-Tsengs-Mac-Pro kernel[0]: Sound assertion "0 != result" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAPath.cpp" at line 1194 goto Exit
Sep 25 18:22:08 Ping-Tsengs-Mac-Pro kernel[0]: Sound assertion "0 != result" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAEngine.cpp" at line 4954 goto Exit
Sep 25 18:22:08 Ping-Tsengs-Mac-Pro kernel[0]: Sound assertion "0 != result" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAEngine.cpp" at line 4906 goto Exit
Sep 25 18:22:08 Ping-Tsengs-Mac-Pro kernel[0]: Sound assertion "0 != readVolumeSettingFromCache ( pathSet, hdaSpatialChannnelID, &cachedVolumeMuteSetting )" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAEngine.cpp" at line 2103 goto Exit
Sep 25 18:22:08 Ping-Tsengs-Mac-Pro kernel[0]: Sound assertion "0 != createVolumeControlForActivePathSet ( hdaSpatialChannnelID, direction )" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAEngine.cpp" at line 2273 goto Exit
Sep 25 18:22:08 Ping-Tsengs-Mac-Pro kernel[0]: Sound assertion "0 != createVolumeAndMuteControlsForActivePathSet ( kPathDirectionInput )" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAEngine.cpp" at line 7684 goto Exit
Sep 25 18:22:10 Ping-Tsengs-Mac-Pro kernel[0]: ACPI_SMC_PlatformPlugin::start - waitForService(resourceMatching(AppleIntelCPUPowerManagement) timed out
Sep 25 18:22:58 Ping-Tsengs-Mac-Pro kernel[0]: Sound assertion "0 == entry" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDAEngine.cpp" at line 3009 goto Exit
Sep 25 18:24:40 Ping-Tsengs-Mac-Pro kernel[0]: IOHIDSystem::relativePointerEventGated: VBL too high (20863126), capping to 20000000

時々カーネルパニック(KP)を起こしてSLのデスクトップに入れなくなることがあり、その際は -v -f を付けて再起動するとSLに入ることができ、ヘッドフォン、内蔵スピーカー、ライン出力(自動切り替え対応)が機能しますが、録音(マイク入力)ができません。一度それで起動した後は通常通り再起動してもSLに入れますが、ログにはやはりSound assertionが記録されます。

その後、新しいKextをインストールしたりKext Utilityを実行したりすると、次回の再起動時にまた以前と同じKPが発生してしまいます。

パッチを当てたドライバ一式と、Linuxから取得したコーデックダンプ、およびWindowsから取得したPinConfigurationsを添付します。

どなたかお知恵を貸していただけると大変助かります。どうしても録音機能を動作させる必要があります。

検証ノート #27 @ping99 2009-09-26

こんにちは、mormegil。丁寧なアドバイスを本当にありがとうございます。
はい、機種はノートPCのCompaq CQ60-202TXで、64ビットのSnow Leopardを実行しており、ブートローダーにはChameleon 2 RC3を使っています。PC-EFI 10.3も試してみましたが改善しませんでした。AppleHDAバイナリには、6202EC10 を 5150F114(Linuxダンプ値:0x14f15051)に置換するパッチを当てました。このスレッドで言及されていた他のIDも 5150F114 に置換してみましたが、結果は同じでした。
Leopard上では動作するパッチ済みKext(ただし録音は不可)があり、このガイドに従ってSLへ移植しました。Linuxからダンプを取得し、CodecGraphとVerbitを使ってVerbを算出する方法までは覚えたのですが、LayoutとPathMapを手動で組む方法が分かりません。やり方を教えていただけないでしょうか?

検証ノート #28 @blkhockeypro19 2009-09-26 ↳ Re: @mormegil
@mormegilそのKextを本当にご自身のLeopard環境で試して、ちゃんと音が出ることを確認されたのでしょうか?

もう1年近くLeopardで同じKextを使い続けています。本当にちゃんと動いているんです =P なお、ブートローダーはPC-EFI v10.3を使っていますが、これは大丈夫でしょうか?

検証ノート #29 @xbx2usr 2009-10-13

SigmaTel STAC9274Dの移植に成功した方はいますか?

素晴らしいガイドをありがとうございます!
とても分かりやすく、手順を追いやすかったです。

さて、昨日STAC9274D用にAppleHDAを移植しようと試みたのですが、うまくいきませんでした。

SLのAppleHDA内のSTAC9220を以下のように書き換えました:

STAC9220 0x83847680
↓
STAC9274D 0x83847621

DSDTもその codec-id を指すようにしており、SLのシステムプロファイラ上でもPinConfigurationsが表示されています。
Audioの LayoutID は(12ではなく)4ですが、DSDT側も layout-id が「4」になっていれば、Layout 4のパーツをSL側のKextへコピー&ペーストすれば動くはずですよね。

もちろん、すべて LayoutID 12 に書き換えた上でDSDT側も 12(0x0c)に変更するパターンも試してみましたが、案の定、状況は変わりませんでした。

このチップで成功した方はいらっしゃいませんか?もしよろしければKextを共有していただけると助かります。
VoodooHDAなら動作するのですが、スリープ周りの不具合に悩まされています。

検証ノート #30 @leclercqr 2009-10-15

Jedric氏と同じ症状です

Jedric → さん(あるいは助けていただける方どなたでも)、

私もあなたと似た症状を抱えており、システムプロファイラ上でデバイスIDが「0x1458A002」と表示されてしまいます。

その後、何か進展はありましたか?いずれにせよ、もしよろしければ現在お使いのDSDTのコピーを送っていただけないでしょうか。私が直面しているコンパイルエラーのデバッグに役立つかもしれません。(どなたか見ていただけるよう私のDSDTも添付しておきます。HDEFコードの変更を加える前の状態でコンパイルしたもので、HPET、RTC、DTGP、USB修正がすべて機能しており、サウンドとAHCIinject.kextを必要とするSATA[AHCIは後で修正予定です]を除けばSnow Leopardが完全に動作しています)。

ところが、このスレッドにある「汎用の」HDEFコードに書き換えると、以下のエラーが出てしまいます:

/Users/Rowan/Desktop/Snow Leopard/DSDTv0.5/dsdt.dsl 374: Notify (\_SB.PCI0.HDEF, 0x02) Error 4063 - Object does not exist ^ (\_SB.PCI0.HDEF) /Users/Rowan/Desktop/Snow Leopard/DSDTv0.5/dsdt.dsl 5116: Return (BUFA) Error 4063 - Object does not exist ^ (BUFA) /Users/Rowan/Desktop/Snow Leopard/DSDTv0.5/dsdt.dsl 5159: Return (BUFA) Error…

現在使用しているコンパイル済み・動作中のDSDT(compiled_working_DSDT)を添付しました。これには別のHDEFコードが入っており、システムプロファイラ上でオーディオが以下のように検出されます:
"Intel High Definition Audio:

Device ID: 0x1458A002
Audio ID: 12
Available Devices: "

もう一方の添付ファイル(added_hdef_compile_erros_dsdt)は、HDEFコードをこのスレッドのものに変更したもので、上記のようなコンパイルエラーが発生します。

どんなアドバイスでも構いませんのでお力添えいただけると幸いです。1週間前に自分でDSDTのパッチ当てを始めたばかりで、まだ急勾配の学習曲線を登っている最中のため、理解不足な点があればご容赦ください。

Show 50 additional community field notes (#31–#80)
Field Note #31 @airwalk776 2009-10-26

mormegil…

It shouldnt matter but as long as all the locations that state layout ID are 889 vs your 12 it should still work right ?

my dsdt is coded with layout-id as 79 03 00 00

and a codec-id of 89 08 EC 10

so I followed all your steps, hexedit found all 4 locations with 8508ec10 and replaced with 8908ec10

edited the two plists as show in the post.

still no go. the 1.5.7a24 AppleHDA and my dsdt file I get audio in SL. but the edited AppleHDA from a SL install does not work.

Any ideas? thanks

Field Note #32 @msf5042 2009-10-26

mormegil-
I have been going down the same paths as airwalk over and over. Here are two messages that I get over and over on boot:

Sound assertion "0 != createAudioEngines ( fPathMap_aDriverInstance )" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" & Sound assertion "0 == pathMap_aDriverInstance" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp"
Field Note #33 @msf5042 2009-10-27

mormegil-
airwalk and I have the same setup. check my linux dump below. we are 889, not 889a.

Field Note #34 @airwalk776 2009-10-28

mormegil...

I am 100 % sure this is the correct codecID since the codec dump I have ( taken by using a linux live dvd) Vendor Id: 0x10ec0889 ie...283904137

which is what is coded in the working applehda.

take a look a these dumps I have from when I patched the applehda for 10.5.6 (these dumps are from my board not downloaded from someone else)

Codec: Realtek ALC889
Address: 2
Vendor Id: 0x10ec0889
Subsystem Id: 0x10de0175
Revision Id: 0x100004

Then based on the dump I generated the verbs.

Question could this be caused by config data not matching pathmaps data?

BTW I tested without changing the hex values and no luck.

Field Note #35 @airwalk776 2009-10-29

yeap its the same pathmapid in both places.

I'll double check the dsdt.

Field Note #36 @msf5042 2009-10-29

Airwalk did the AppleHDA leopard kext you're using ever list all of the audio configs in system profile?

Field Note #37 @msf5042 2009-10-29

the reason I was asking that airwalk is because I never had leopard on this board so I have been using your leopard kext that you posted on another forum and after comparing my modified SL kext with some of the others I have seen here I realize that I have significantly less child nodes in my modified sections than other people do...

Field Note #38 @airwalk776 2009-10-29

when using the old applehda I think its version 1.5.7… I allways get system profiler to show the ports correctly.

see screenshot of this applehda 1.5.7 running in SL and it looked the same in Leopard also.

Field Note #39 @airwalk776 2009-11-03

mormegil-

I tried another approach, using lagacyapplehda files I port the same config to the lagacy files and put it in /extra/extensions and put the stock applehda in /S/L/E. in doing so I was able to set the system profiler to show all the ports but in system prefs. there are no inputs and outputs to select from.

any thoughts ?

Field Note #40 @Snow 2009-11-10

Alright Mormegil, been a while m8, all good with you?

Since the 10.6.2 update messed up my audio I was wondering if you could take a look at my already slightly (but apparently non working) modded AppleHDA kext.

media fire.com/file/mikkmb25bzz/AppleHDA.zip

bud

ps. using AppleHDA v10.6.1 for now

Field Note #41 @airwalk776 2009-11-11

ok everyone with the evga x58 mobo here is the solution to get HDA working in 64 bit mode.

voodoohda.kext haha just kidding…

1st thank you to everyone that helped in getting this done.

2nd remove and voodoohda you have

what is accomplished. 32 and 64 bit audio using stock applehda.kext in /S/L/E

you must have your dsdt.aml patched with the following info

codec-id",
Buffer (0x04)
{
0x89, 0x08, 0xEC, 0x10
},

"layout-id",
/**** Is ResourceTemplate, but EndTag not at buffer end ****/ Buffer (0x04)
{
0x79, 0x03, 0x00, 0x00

Install the stock applehda.kext in /S/L/E ( I used the one from 10.6.2 update) using kext utilities 2.3.2

and install the attached LegacyHDA.kext in /Extra/Extensions using kext utilities 2.3.2 update mkext.

it will give you 4 outs and 2 ins.

testing in 32 and 64 bit mode. the advantage of doing it this way (at least for me) is that I dont have any modified kexts in /S/L/E.

give it a shot and report back.

Good Luck

Field Note #42 @msf5042 2009-11-11

i will test it out and report back in a few, you're the man airwalk

Field Note #43 @msf5042 2009-11-11

Confirmed working. Hopefully netkas has an epiphany that he should make evga x58 boards sleep sometime soon. In the meantime lets plug away, did you ever have sleep working in 10.5?

Field Note #44 @Snow 2009-11-12

Muchos Gracias Hombre

Installing right away.

Update: working perfectly after rebuilding Aggregate device bro, thx again

Field Note #45 @Valaris 2009-11-15

OMG! it works

i got ALC262 (VAIO FW139E/H), confirming that this work! BTW i have installed the following kext as well: ALCInject.kext and HDAEnabler.kext.

Thank you very much mormegil!

atleast my sound works, though i have no mic and HDMI output but hey its better than none. ^_^

Field Note #46 @chadp1a 2009-11-15

p6860fx laptop no sound still :(

Could someone I own a gateway p6860fx laptop. I followed this excellent guide in attempts to get my sound working. I hex edited the applehda using B0 76 1D 11 which matches the Subsystem Id from the codec#1 in this below linux audio dump. It also matches the Vendor ID from the codec#2 linux dump below.

I have pasted my linux dump and DSDT audio patch. Could someone please advise me to maybe why my audio still doesn't work. Sound was fine in Leopard and I modified a Vanilla Snow AppleHDA kext per the guide here.

Linux Dump

Codec: LSI ID 1040
Address: 1
Vendor Id: 0x11c11040
Subsystem Id: 0x107b0690
Revision Id: 0x100200
Modem Function Group: 0x1


Codec: IDT 92HD71B8X
Address: 2
Vendor Id: 0x111d76b0
Subsystem Id: 0x107b0692
Revision Id: 0x100101
No Modem Function Group found
Default PCM:
    rates [0x7e0]: 44100 48000 88200 96000 176400 192000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM
Default Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Default Amp-Out caps: ofs=0x7f, nsteps=0x7f, stepsize=0x02, mute=1
GPIO: io=8, o=0, i=0, unsolicited=1, wake=1
  IO[0]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
  IO[1]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
  IO[2]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
  IO[3]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
  IO[4]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
  IO[5]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
  IO[6]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
  IO[7]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
Power-Map: 0x01
Analog Loopback: 0x00
Node 0x0a [Pin Complex] wcaps 0x400183: Stereo Amp-In
  Amp-In caps: N/A
  Amp-In vals:  [0x00 0x00]
  Pincap 0x0000001c: OUT HP Detect
  Pin Default 0x0321101f: [Jack] HP Out at Ext Left
    Conn = 1/8, Color = Black
    DefAssociation = 0x1, Sequence = 0xf
  Pin-ctls: 0x00:
  Unsolicited: tag=01, enabled=1
  Connection: 3
     0x10 0x11* 0x17
Node 0x0b [Pin Complex] wcaps 0x400081: Stereo
  Pincap 0x00001724: IN Detect
    Vref caps: HIZ 50 GRD 80
  Pin Default 0x03a11020: [Jack] Mic at Ext Left
    Conn = 1/8, Color = Black
    DefAssociation = 0x2, Sequence = 0x0
  Pin-ctls: 0x24: IN VREF_80
  Unsolicited: tag=02, enabled=1
Node 0x0c [Pin Complex] wcaps 0x400081: Stereo
  Pincap 0x00001724: IN Detect
    Vref caps: HIZ 50 GRD 80
  Pin Default 0x40f000f0: [N/A] Other at Ext N/A
    Conn = Unknown, Color = Unknown
    DefAssociation = 0xf, Sequence = 0x0
  Pin-ctls: 0x00: VREF_HIZ
  Unsolicited: tag=00, enabled=0
Node 0x0d [Pin Complex] wcaps 0x400183: Stereo Amp-In
  Amp-In caps: N/A
  Amp-In vals:  [0x00 0x00]
  Pincap 0x00000014: OUT Detect
  Pin Default 0x90170110: [Fixed] Speaker at Int N/A
    Conn = Analog, Color = Unknown
    DefAssociation = 0x1, Sequence = 0x0
    Misc = NO_PRESENCE
  Pin-ctls: 0x40: OUT
  Unsolicited: tag=00, enabled=0
  Connection: 3
     0x10* 0x11 0x17
Node 0x0e [Pin Complex] wcaps 0x400081: Stereo
  Pincap 0x00001724: IN Detect
    Vref caps: HIZ 50 GRD 80
  Pin Default 0x40f000f1: [N/A] Other at Ext N/A
    Conn = Unknown, Color = Unknown
    DefAssociation = 0xf, Sequence = 0x1
  Pin-ctls: 0x00: VREF_HIZ
  Unsolicited: tag=00, enabled=0
Node 0x0f [Pin Complex] wcaps 0x400183: Stereo Amp-In
  Amp-In caps: N/A
  Amp-In vals:  [0x00 0x00]
  Pincap 0x00000014: OUT Detect
  Pin Default 0x40f000f2: [N/A] Other at Ext N/A
    Conn = Unknown, Color = Unknown
    DefAssociation = 0xf, Sequence = 0x2
  Pin-ctls: 0x00:
  Unsolicited: tag=00, enabled=0
  Connection: 3
     0x10 0x11 0x17*
Node 0x10 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out R/L
  Amp-Out caps: N/A
  Amp-Out vals:  [0x64 0x64]
  Converter: stream=0, channel=0
  Power: setting=D0, actual=D0
  Delay: 13 samples
Node 0x11 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out R/L
  Amp-Out caps: N/A
  Amp-Out vals:  [0x7f 0x7f]
  Converter: stream=0, channel=0
  Power: setting=D0, actual=D0
  Delay: 13 samples
Node 0x12 [Audio Input] wcaps 0x1d0541: Stereo
  Converter: stream=0, channel=0
  SDI-Select: 0
  Power: setting=D3, actual=D3
  Delay: 13 samples
  Connection: 1
     0x1c
  Processing caps: benign=0, ncoeff=0
Node 0x13 [Audio Input] wcaps 0x1d0541: Stereo
  Converter: stream=0, channel=0
  SDI-Select: 0
  Power: setting=D3, actual=D3
  Delay: 13 samples
  Connection: 1
     0x1d
  Processing caps: benign=0, ncoeff=0
Node 0x14 [Pin Complex] wcaps 0x400102: Mono Amp-In
  Amp-In caps: N/A
  Amp-In vals:  [0x80]
  Pincap 0x00000010: OUT
  Pin Default 0x40f000f3: [N/A] Other at Ext N/A
    Conn = Unknown, Color = Unknown
    DefAssociation = 0xf, Sequence = 0x3
  Pin-ctls: 0x00:
  Connection: 1
     0x16
Node 0x15 [Audio Selector] wcaps 0x300101: Stereo
  Connection: 3
     0x10* 0x11 0x17
Node 0x16 [Audio Mixer] wcaps 0x200100: Mono
  Connection: 1
     0x15
Node 0x17 [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
  Amp-In caps: ofs=0x17, nsteps=0x1f, stepsize=0x05, mute=1
  Amp-In vals:  [0x97 0x97] [0x97 0x97] [0x97 0x97] [0x97 0x97] [0x97 0x97]
  Connection: 5
     0x10 0x11 0x27 0x1a 0x1b
Node 0x18 [Pin Complex] wcaps 0x40000d: Stereo Amp-Out
  Amp-Out caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
  Amp-Out vals:  [0x00 0x00]
  Pincap 0x00000020: IN
  Pin Default 0x90a6012e: [Fixed] Mic at Int N/A
    Conn = Digital, Color = Unknown
    DefAssociation = 0x2, Sequence = 0xe
    Misc = NO_PRESENCE
  Pin-ctls: 0x20: IN
Node 0x19 [Pin Complex] wcaps 0x40000d: Stereo Amp-Out
  Amp-Out caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
  Amp-Out vals:  [0x00 0x00]
  Pincap 0x00000020: IN
  Pin Default 0x40f000f5: [N/A] Other at Ext N/A
    Conn = Unknown, Color = Unknown
    DefAssociation = 0xf, Sequence = 0x5
  Pin-ctls: 0x20: IN
Node 0x1a [Audio Selector] wcaps 0x30010d: Stereo Amp-Out
  Amp-Out caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
  Amp-Out vals:  [0x00 0x00]
  Connection: 3
     0x0b* 0x0c 0x0e
Node 0x1b [Audio Selector] wcaps 0x30010d: Stereo Amp-Out
  Amp-Out caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
  Amp-Out vals:  [0x00 0x00]
  Connection: 3
     0x0b* 0x0c 0x0e
Node 0x1c [Audio Selector] wcaps 0x30090d: Stereo Amp-Out R/L
  Amp-Out caps: ofs=0x00, nsteps=0x0f, stepsize=0x05, mute=1
  Amp-Out vals:  [0x09 0x09]
  Connection: 4
     0x1a* 0x17 0x18 0x19
Node 0x1d [Audio Selector] wcaps 0x30090d: Stereo Amp-Out R/L
  Amp-Out caps: ofs=0x00, nsteps=0x0f, stepsize=0x05, mute=1
  Amp-Out vals:  [0x80 0x80]
  Connection: 4
     0x1b* 0x17 0x18 0x19
Node 0x1e [Pin Complex] wcaps 0x400301: Stereo Digital
  Pincap 0x00000010: OUT
  Pin Default 0x044513a0: [Jack] SPDIF Out at Ext Right
    Conn = Optical, Color = Black
    DefAssociation = 0xa, Sequence = 0x0
    Misc = NO_PRESENCE
  Pin-ctls: 0x00:
  Connection: 1
     0x24
Node 0x1f [Pin Complex] wcaps 0x400701: Stereo Digital
  Pincap 0x00010010: OUT EAPD
  EAPD 0x0:
  Pin Default 0x40f000f8: [N/A] Other at Ext N/A
    Conn = Unknown, Color = Unknown
    DefAssociation = 0xf, Sequence = 0x8
  Pin-ctls: 0x00:
  Power: setting=D0, actual=D0
  Connection: 2
     0x24* 0x25
Node 0x20 [Pin Complex] wcaps 0x400301: Stereo Digital
  Pincap 0x00000010: OUT
  Pin Default 0x90451360: [Fixed] SPDIF Out at Int N/A
    Conn = Optical, Color = Black
    DefAssociation = 0x6, Sequence = 0x0
    Misc = NO_PRESENCE
  Pin-ctls: 0x40: OUT
  Connection: 1
     0x25
Node 0x21 [Audio Output] wcaps 0x40211: Stereo Digital
  Converter: stream=0, channel=0
  Digital:
  Digital category: 0x0
  PCM:
    rates [0x7e0]: 44100 48000 88200 96000 176400 192000
    bits [0xe]: 16 20 24
    formats [0x5]: PCM AC3
  Delay: 4 samples
Node 0x22 [Audio Output] wcaps 0x40211: Stereo Digital
  Converter: stream=0, channel=0
  Digital:
  Digital category: 0x0
  PCM:
    rates [0x7e0]: 44100 48000 88200 96000 176400 192000
    bits [0xe]: 16 20 24
    formats [0x5]: PCM AC3
  Delay: 4 samples
Node 0x23 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x24 [Audio Selector] wcaps 0x300101: Stereo
  Connection: 3
     0x21* 0x1c 0x1d
Node 0x25 [Audio Selector] wcaps 0x300101: Stereo
  Connection: 3
     0x22* 0x1c 0x1d
Node 0x26 [Beep Generator Widget] wcaps 0x70000c: Mono Amp-Out
  Amp-Out caps: ofs=0x03, nsteps=0x03, stepsize=0x17, mute=1
  Amp-Out vals:  [0x00]
Node 0x27 [Pin Complex] wcaps 0x400000: Mono
  Pincap 0x00000020: IN
  Pin Default 0x40f000f7: [N/A] Other at Ext N/A
    Conn = Unknown, Color = Unknown
    DefAssociation = 0xf, Sequence = 0x7
  Pin-ctls: 0x00:
Node 0x28 [Volume Knob Widget] wcaps 0x600000: Mono
  Volume-Knob: delta=1, steps=127, direct=1, val=127
  Connection: 2
     0x10 0x11

DSDT Patch

Device (HDEF)
            {
                Name (_ADR, 0x001B0000)
                Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x06)
                        {
                            "codec-id", 
                            Buffer (0x04)
                            { 
                               0xB0, 0x76, 0x1D, 0x11
                            },                             
                            "layout-id", 
                            Buffer (0x04)
                            {
                                0x0C, 0x00, 0x00, 0x00
                            }, 

                            "PinConfigurations", 
                            Buffer (Zero) {}
                        }, Local0)
                     Return (Local0)
                }
            }
Field Note #47 @miliuco 2009-11-18

Thanks, mormegil, your AppleHDA kext works well in my system (EP35-DS3r with ALC889a).
I attach a AppleHDA.kext > Contents > Resources > Spanish.lproj folder to include into the kext for anybody who likes to see device names in spanish instead of english.
Thanks again.

Field Note #48 @mimayin 2009-11-19

I can't get this to work, I've spent hours and hours trying I have a Foxconn Blackops with ALC885. Patched DSDT as such:

            Device (HDEF)
            {
                Name (_ADR, 0x001B0000)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (Package (0x02)
                    {
                        0x0D,
                        0x05
                    })
                }

                Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x0A)
                        {

                            "built-in",
                            Buffer (0x01)
                            {
                                0x01
                            },

                            "codec-id",
                            Buffer (0x04)
                            {
                                0x85, 0x08, 0xEC, 0x10
                            },

                            "layout-id",
                            Buffer (0x04)
                            {
                                0x0C, 0x00, 0x00, 0x00
                            },

                            "device-type",
                            Buffer (0x011)
                            {
                                "ALC885"
                            },

                            "PinConfigurations",
                            Buffer (0x28)
                            {
                                /* 0000 */ 0x10, 0x40, 0x01, 0x01, 0x64, 0x10, 0x01, 0x01,
                                /* 0008 */ 0x71, 0x60, 0x01, 0x01, 0x82, 0x20, 0x01, 0x01,
                                /* 0010 */ 0x30, 0x90, 0xA1, 0x01, 0x20, 0x90, 0xA1, 0x02,
                                /* 0018 */ 0x40, 0x30, 0x81, 0x01, 0x50, 0x40, 0x21, 0x02,
                                /* 0020 */ 0xF0, 0x71, 0x44, 0x01, 0x90, 0x71, 0x45, 0x11
                            }
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }
            }

Also tried the 889A version of the above (and updated layout id to 889 for that, in DSDT and plists) to no avail.

Layout ID is correct (12) for ALC885 in both DSDT and plists.

On boot I always get:

Nov 19 11:04:04 localhost kernel[0]: Sound assertion "0 != setupHostInterrupt ()" failed in "/SourceCache/AppleHDA/AppleHDA-179.1.4/AppleHDAController/AppleHDAController.cpp" at line 312 goto Exit

I have taken the Layout and PathMap settings from my working Leopard AppleHDA.kext, but clearly something isn't right.

Working Leopard kext plist:

82.113.155.91/leopard-info.plist

Hacked SL plists:

AppleHDAHardwareConfigDriver-info.plist (82.113.155.91/AppleHDAHardwareConfigDriver-info.plist)
AppleHDAPlatformDriver-info.plist (82.113.155.91/AppleHDAPlatformDriver-info.plist)

edit: fixed links!

If anyone can give me a clue as to where I might be going wrong I'd be very grateful, this is driving me nuts I can get sound with VoodooHDA but only through the headphone socket, no lineout

Field Note #49 @mimayin 2009-11-19

Tried adding HDAEnabler.kext to /Extra/Extensions as a potshot but it still fails.

Nov 19 11:57:34 localhost kernel[0]: HDAEnabler: Copyright (c) 2008 by Kabyl
Nov 19 11:57:34 localhost kernel[0]: HDAEnabler: 05/05/2008 Added SPAudio support:Taruga
Nov 19 11:57:34 localhost kernel[0]: HDAEnabler: Copyright (c) 2008 by Kabyl
Nov 19 11:57:34 localhost kernel[0]: HDAEnabler: 05/05/2008 Added SPAudio support:Taruga
Nov 19 11:57:34 localhost kernel[0]: Sound assertion "0 != setupHostInterrupt ()" failed in "/SourceCache/AppleHDA/AppleHDA-179.1.4/AppleHDAController/AppleHDAController.cpp" at line 312 goto Exit
Nov 19 11:57:34 localhost kernel[0]: Sound assertion ""ERROR: EFI ROM did not publish 'hda-gfx' associative property!\n"" failed in "/SourceCache/AppleHDA/AppleHDA-179.1.4/AppleHDA/AppleHDACodecGeneric.cpp" at line 331 goto ExitError
Field Note #50 @mimayin 2009-11-19

Still not working Pretty sure DSDT is correct now:

            Device (HDEF)
            {
                Name (_ADR, 0x001B0000)
                Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x04)
                        {
                            "layout-id",
                            Buffer (0x04)
                            {
                                0x0C, 0x00, 0x00, 0x00
                            },

                            "PinConfigurations",
                            Buffer (Zero) {}
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }
            }

Device shows up in system profiler with the correct device and layout id, but still AppleHDA.kext won't load, still gives the same error.

Any ideas? kext plists are unchanged from my first post

Field Note #51 @mimayin 2009-11-19

Interestingly enough, if I leave DSDT with AZAL in it rather than HDEF like this:

            Device (AZAL)
            {
                Name (_ADR, 0x001B0000)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (Package (0x02)
                    {
                        0x0D,
                        0x05
                    })
                }
            }

VoodooHDA works, but I only get the headphone socket rather than the line-in. But if I patch DSDT (as in previous post), VoodooHDA kernel panics immediately on load.

I'm lost.. i've spent over 3 days messing around with this, i'm almost ready to give up and buy an Xmod

Field Note #52 @mimayin 2009-11-20

leo-HDAController-info.plist (82.113.155.91/leo-HDAController-info.plist)

I did actually try putting this block into HDAController/Info.plist in the snow leopard AppleHDA.kext last night:

      <key>HDAConfigDefault</key>
      <array>
        <dict>
          <key>CodecID</key>
          <integer>283904133</integer>
          <key>ConfigData</key>
          <data>
          AUccEAFHHUABRx4RAUcfAQFXHBIBVx0gAVce
          AQFXHwEBZxwRAWcdYAFnHgEBZx8BAXccFAF3
          HRABdx4BAXcfAQGHHDABhx2ZAYceoQGHHwEB
          lxw/AZcdkAGXHqEBlx8CAaccMQGnHTEBpx6B
          AacfAQG3HB8Btx1AAbceIQG3HwIBxxwyAccd
          AQHHHjMBxx+ZAdccAAHXHQEB1x4AAdcfQAHn
          HGAB5x0BAeceRQHnH4EB9xwAAfcdAQH3HgAB
          9x9A
          </data>
          <key>FuncGroup</key>
          <integer>1</integer>
          <key>LayoutID</key>
          <integer>12</integer>
        </dict>
      </array>

But still didn't work

Field Note #53 @dan10 2009-11-20

mymayin,

Try this, download the LegacyHDA file Airwalk posted here How to port AppleHDA to SL →
modify it using your working Leo data, you know HDAController, Layouts and Pathmaps. Put the LegacyHDA in your Extra folder and trash your extensions.mkext and rebuild it with mkextTool, replace your modify AppleHDA with a vanilla file from SL. It should work and it's a better solution because it maintains AppleHDA untouched no need to modify it every time you update your OS. Don't forget to remove any other audio file i.e. VoodooHDA and any other enabler. Build your DSDT the way he did it don't put the pin configuration, keep it simple for now "codec-id" and "layout-id". Good Luck

Field Note #54 @mimayin 2009-11-20

Still not working

I think my DSDT might be wrong somehow, I don't see any devices in Profiler->Audio, just the device id and layout id (both are correct).

it says Devices: but the listing is blank.

Vanilla AppleHDA.kext is failing to load.

            Device (HDEF)
            {
                Name (_ADR, 0x001B0000)
                Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x04)
                        {
                            "layout-id",
                            Buffer (0x04)
                            {
                                0x0C, 0x00, 0x00, 0x00
                            },

                            "PinConfigurations",
                            Buffer (Zero) {}
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }
            }

I tried adding the codec-id in there and increasing Store(Package) size to 0x08 but that didn't help either

Field Note #55 @dan10 2009-11-20

So you put the legacyHDA.kext in Extra and rebuild the extensions.mkext reboot and still nothing, that's odd.
Did you add this to your DSDT? DTGP code, read The King's guide, you probably did because the compiler would complain if you didn't.
http://www.projectosx.com/forum/index.php?showtopic=465… ↗

Are you using Chameleon? what version is it?

Field Note #56 @mimayin 2009-11-20

Yeah I did all that, I'm using Chameleon 2.0RC1. I'll see if there's a later version..

Field Note #57 @mimayin 2009-11-20

still no luck with pc-efi 10.5, same errors on boot

Nov 20 21:16:46 localhost kernel[0]: Sound assertion "0 != setupHostInterrupt ()" failed in "/SourceCache/AppleHDA/AppleHDA-179.1.4/AppleHDAController/AppleHDAController.cpp" at line 312 goto Exit
Field Note #58 @mimayin 2009-11-20

I noticed I don't have anything pointing to AZAL or HDEF in the _GPE section of the DSDT. Could this be the problem?

eg: http://www.insanelymac.com/forum/index.php?showtopic=18… ↗

there the guy has:

        Method (_L05, 0, NotSerialized)
        {
            Notify (\_SB.PCI0.HDEF, 0x02)
        }

whereas my _GPE section looks like:

    Scope (_GPE)
    {
        Method (_L00, 0, NotSerialized)
        {
            Notify (\_TZ.THRM, 0x80)
        }

        Method (_L03, 0, NotSerialized)
        {
            Notify (\_SB.PCI0.USB0, 0x02)
        }

        Method (_L04, 0, NotSerialized)
        {
            Notify (\_SB.PCI0.USB1, 0x02)
        }

        Method (_L0C, 0, NotSerialized)
        {
            Notify (\_SB.PCI0.USB2, 0x02)
        }

        Method (_L0E, 0, NotSerialized)
        {
            Notify (\_SB.PCI0.USB3, 0x02)
        }

        Method (_L05, 0, NotSerialized)
        {
            Notify (\_SB.PCI0.USB4, 0x02)
        }

        Method (_L20, 0, NotSerialized)
        {
            Notify (\_SB.PCI0.USB5, 0x02)
        }

        Method (_L0D, 0, NotSerialized)
        {
            Notify (\_SB.PCI0.EHC1, 0x02)
            Notify (\_SB.PCI0.EHC2, 0x02)
            Notify (\_SB.PCI0.IGBE, 0x02)
        }

        Method (_L0B, 0, NotSerialized)
        {
            Notify (\_SB.PCI0.HUB0, 0x02)
        }

        Method (_L08, 0, NotSerialized)
        {
            Notify (\_SB.PCI0.PX40.UAR1, 0x02)
            Notify (\_SB.PCI0.PX40.UAR2, 0x02)
        }

        Method (_L09, 0, NotSerialized)
        {
            If (LNotEqual (VID0, 0xFFFF))
            {
                If (LEqual (And (RSR0, One), One))
                {
                    Store (0xFF, RSR0)
                    Store (0x80, PMC0)
                    Notify (\_SB.PCI0.PEX0, 0x02)
                }
            }

            If (LNotEqual (VID1, 0xFFFF))
            {
                If (LEqual (And (RSR1, One), One))
                {
                    Store (0xFF, RSR1)
                    Store (0x80, PMC1)
                    Notify (\_SB.PCI0.PEX1, 0x02)
                }
            }

            If (LNotEqual (VID2, 0xFFFF))
            {
                If (LEqual (And (RSR2, One), One))
                {
                    Store (0xFF, RSR2)
                    Store (0x80, PMC2)
                    Notify (\_SB.PCI0.PEX2, 0x02)
                }
            }

            If (LNotEqual (VID3, 0xFFFF))
            {
                If (LEqual (And (RSR3, One), One))
                {
                    Store (0xFF, RSR3)
                    Store (0x80, PMC3)
                    Notify (\_SB.PCI0.PEX3, 0x02)
                }
            }

            If (LNotEqual (VID4, 0xFFFF))
            {
                If (LEqual (And (RSR4, One), One))
                {
                    Store (0xFF, RSR4)
                    Store (0x80, PMC4)
                    Notify (\_SB.PCI0.PEX4, 0x02)
                }
            }

            If (LNotEqual (VID5, 0xFFFF))
            {
                If (LEqual (And (RSR5, One), One))
                {
                    Store (0xFF, RSR5)
                    Store (0x80, PMC5)
                    Notify (\_SB.PCI0.PEX5, 0x02)
                }
            }
        }
    }

maybe i should add that in? perhaps using a different unused _L0x?

Field Note #59 @dan10 2009-11-20

There should be 2 instances of AZAL replaced to HDEF. I thing you are close

Field Note #60 @mimayin 2009-11-20

I figured out the missing part, I added HDEF to the _L0D method:

        Method (_L0D, 0, NotSerialized)
        {
            Notify (\_SB.PCI0.EHC1, 0x02)
            Notify (\_SB.PCI0.EHC2, 0x02)
            Notify (\_SB.PCI0.IGBE, 0x02)
            Notify (\_SB.PCI0.HDEF, 0x02)
        }

But still no sound with AppleHDA

Field Note #61 @mimayin 2009-11-20

This is too much of a headache, i give up, im buying an Xmod

Field Note #62 @scififan68 2009-11-21

Hey!, thanks for this sweet guide, it really helped me port the applehda kext to work for my alc888!

Field Note #63 @mimayin 2009-11-21

Ok I'm following TheKing's guide, but I'm stuck on how to convert the output from VerbIt to the encoded format used in the ConfigData parameter in Info.plist:

Verbs from Linux Codec Dump File: codec_dump.txt

Codec: Realtek ALC885   Address: 2   DevID: 283904133 (0x10ec0885)

   Jack   Color  Description                  Node     PinDefault             Original Verbs
--------------------------------------------------------------------------------------------------------
    1/8   Green  Line Out at Ext Rear        20 0x14   0x01014410   21471c10 21471d44 21471e01 21471f01
    1/8   Black  Line Out at Ext Rear        21 0x15   0x01011412   21571c12 21571d14 21571e01 21571f01
    1/8  Orange  Line Out at Ext Rear        22 0x16   0x01016411   21671c11 21671d64 21671e01 21671f01
    1/8    Grey  Line Out at Ext Rear        23 0x17   0x01012414   21771c14 21771d24 21771e01 21771f01
    1/8    Pink  Mic at Ext Rear             24 0x18   0x01a19c40   21871c40 21871d9c 21871ea1 21871f01
    1/8    Pink  Mic at Ext Front            25 0x19   0x02a19c50   21971c50 21971d9c 21971ea1 21971f02
    1/8    Blue  Line In at Ext Rear         26 0x1a   0x0181344f   21a71c4f 21a71d34 21a71e81 21a71f01
    1/8   Green  HP Out at Ext Front         27 0x1b   0x02214c20   21b71c20 21b71d4c 21b71e21 21b71f02
  ATAPI Unknown  CD at Int ATAPI             28 0x1c   0x593301f0   21c71cf0 21c71d01 21c71e33 21c71f59
  ATAPI Unknown  Line In at Int ATAPI        29 0x1d   0x598301f0   21d71cf0 21d71d01 21d71e83 21d71f59
   Comb   Black  SPDIF Out at Ext Rear       30 0x1e   0x014b1130   21e71c30 21e71d11 21e71e4b 21e71f01
    1/8   Black  Speaker at Ext Rear         31 0x1f   0x411111f0   21f71cf0 21f71d11 21f71e11 21f71f41
--------------------------------------------------------------------------------------------------------


   Jack   Color  Description                  Node     PinDefault             Modified Verbs
--------------------------------------------------------------------------------------------------------
    1/8   Green  Line Out at Ext Rear        20 0x14   0x01014410   21471c10 21471d40 21471e01 21471f01
    1/8   Black  Line Out at Ext Rear        21 0x15   0x01011412   21571c60 21571d10 21571e01 21571f01
    1/8  Orange  Line Out at Ext Rear        22 0x16   0x01016411   21671c70 21671d60 21671e01 21671f01
    1/8    Grey  Line Out at Ext Rear        23 0x17   0x01012414   21771c80 21771d20 21771e01 21771f01
    1/8    Pink  Mic at Ext Rear             24 0x18   0x01a19c40   21871c40 21871d90 21871ea1 21871f01
    1/8    Pink  Mic at Ext Front            25 0x19   0x02a19c50   21971c50 21971d90 21971ea1 21971f01
    1/8    Blue  Line In at Ext Rear         26 0x1a   0x0181344f   21a71c90 21a71d30 21a71e81 21a71f01
    1/8   Green  HP Out at Ext Front         27 0x1b   0x02214c20   21b71c20 21b71d40 21b71e21 21b71f01
  ATAPI Unknown  Line In at Int ATAPI        29 0x1d   0x598301f0   21d71cf0 21d71d00 21d71e83 21d71f50
   Comb   Black  SPDIF Out at Ext Rear       30 0x1e   0x014b1130   21e71c30 21e71d10 21e71e4b 21e71f01
--------------------------------------------------------------------------------------------------------

How do I convert those hex strings for the ConfigData, which is in this format:

AUccEAFHHUABRx4RAUcfAQFXHBIBVx0gAVce
AQFXHwEBZxwRAWcdYAFnHgEBZx8BAXccFAF3
HRABdx4BAXcfAQGHHDABhx2ZAYceoQGHHwEB
lxw/AZcdkAGXHqEBlx8CAaccMQGnHTEBpx6B
AacfAQG3HB8Btx1AAbceIQG3HwIBxxwyAccd
AQHHHjMBxx+ZAdccAAHXHQEB1x4AAdcfQAHn
HGAB5x0BAeceRQHnH4EB9xwAAfcdAQH3HgAB
9x9A

Field Note #64 @max.1974 2009-12-01

Alc 262 for snow leopard..please

tks for a lot help!
I need ask a very great favor: send me by mail or download link, the compiled kexts that i need replace in Snow Leopard...christian.max (at) pop.com.br

ALC262 SONY VAIO VGN-NS150AE

Im a inexperient user to compiled my on, so sorry my bad english...

Best regards...i hope some mail about that!

TKS!

Field Note #65 @max.1974 2009-12-02

Please My firends...post kext....ALC 262

Please...i need that kext modified...AppleHDA.kext for my ALC262...
I suplies for help...just post or send by mail...im very tired to look around (google)

Field Note #66 @semendemon 2010-01-12

Me Get Realtek ALC889 (Non-A Version) Working in 10.6.2 via DSDT

Hello! I just came across this wonderful thread, and I have tried to patch my DSDT with the code mentioned for the Realtek ALC889 chip, as that is what my motherboard, the Gigabyte GA-X58A-UD7, uses for onboard audio (its little brother, the GA-EX58-UD5, uses the ALC889A).

Since it uses the same model chip as the EVGA motherboards, I believe that I can get it working on this new flagship motherboard from Gigabyte, and thus open the Hackintosh world up to people who are considering buying this motherboard. to help the Hackintosh community. I will come out with a guide for this motherboard as soon as I figure out how to get audio working via DSDT, which will make my current installation a complete vanilla installation.

Just to offer you some background information, I am using the Chameleon v2.0 RC4 bootloader and have already patched my DSDT with ACPI Patcher Beta 5 (under Windows of course). I modified the DSDT that was created by ACPI Patcher with the lines of code for the ALC889 as well as replacing both instances of AZAL found with HDEF, but upon compilation with iASLMe, it gave me one error on the Codec_ID line regarding the length of the statement and 17 optimizations. As such, I removed that line completely and it compiled with zero errors, but still performed 17 optimizations.

correct my DSDT code by providing your entire code or just the excerpts necessary to make corresponding modifications to mine. Also, I still need to get my SATA and ethernet controllers working via DSDT (which both use the same chipsets as the EVGA motherboards), so I can remove my JMicron.kext, AppleIntelPIIXATA per.kext, and RealtekR1000.kext (or RealtekR1000SL.kext), and go fully vanilla.

Currently, I have the LegacyHDA.kext posted in this thread and and the vanilla AppleHDA.kext in S/L/E, and under "Audio (Built In)" in System Profiler, I have two devices showing up in the right column as "Intel High Definition Audio":

1. Device ID: 0x1458A102
Audio ID: 12
Available Devices:

2. Device ID: 0x1682AA30
Audio ID: 12
Available Devices:

Before patching my DSDT, I had nothing showing up under "Audio (Built In)" in System Profiler, so this is definitely a sign of progress. Now, I need the help of you wise InfiniteMac users to get this down perfect, as audio still does not get detected or work for me.

I would like to for your assistance and cooperation, and hope to hear from you as soon as possible.

Field Note #67 @abct 2010-01-24

I have the following sound card and on Leopard I had a fully working AppleHDA so I want to port that kext to Snow Leopard.

HDA Codec #0: IDT 92HD71B7
 HDA Codec ID: 0x111d76b2
       Vendor: 0x111d
       Device: 0x76b2
     Revision: 0x03
     Stepping: 0x02
PCI Subvendor: 0x361b103c

I followed the guide and added b2761d11 to the AppleHDA file with Hex editor.
My old kext was using Layout 1 so I didn't change it and kept everything as it was in my old kext.

Finally, I edited the HDA Enabler kext according to the one that I used on Leopard, which uses Layout 1 and also a Config data.

On my system profiler, it is listed as below,

Intel High Definition Audio:

  Device ID:    0x103C361B
  Audio ID:    1
  Available Devices:
  Headphone:
  Connection:    1/8-Inch Jack
  External Microphone:
  Connection:    1/8-Inch Jack
  Speaker:
  Connection:    Internal
  External Microphone:
  Connection:    1/8-Inch Jack
  Internal Microphone:
  Connection:    Internal
  S/P-DIF Out:
  Connection:    RCA

This is also what appeared on Leopard's System Profiler. So everything seems ok but unfourtanely there is no sound. I attached the file I created if anyone is interested in looking at.

I tried to use DSDT for my sound card but I couldn't do it.

Thanks for your help.

Field Note #68 @maxidlabs 2010-01-26

A problem with IDT HDA

Audio according to Windows:
Vendor: 111D
DevID: 76D8

0x293e8086

Snow Leopard 10.6.0
Everything is working but audio is not. However, it works with VoodooHDA although I neither can control volume nor I have mic.

I've read here that it's possible to get it working with working AppleHDA from Leopard. Unfortunately, I don't have any. Probably it's possible to use PinConfig from Windows? I've seen one in the registry.

Field Note #69 @kanedaguy 2010-03-04

I just setup a new hackintosh box using SL 10.6.0 10A432 on a Gigabyte Motherboard GA-945GCM-S2L.

Gigabyte's site says that it uses the ALC662 Codec but my SL install shows me

Device ID: 0x1458A002
Audio ID: 66

and that's how I found this thread. I do not have any files from Leopard, any chance of helping me get some audio going please.

Field Note #70 @kws 2010-03-04

In 32-bit mode ...

you can use Appleazaliaaudio.kext for Output, a small usb-soundcard (Terratec AureonUSB) for Micro if needed. This will prevent the cracking noise during startup (if USB is used for Output) and the sound assertion errors in verbose mode.

Attached is my HDEF-Section from DSDT (GA945GCM-S2L)

Field Note #71 @calabuig 2010-04-21

Hello, I have this problem: I have a Sony Vaio laptop VGN-AR41M and a Realtek ALC262 audio device onboard. I have Iatkos 10.5.7 installed and using AppleHDA patcher and ALC262 dump codec text I have no problem to get sound. I'd like to use Snow Leopard and I tried to follow this guide to use my working AppleHDA Leopard kext in SL, but I have no success. I've injected my DSDT file and I thinks it's ok. In System Profiler, under audio section, I have the sound card output recognized. But under preferences sound I have no output at all.
Could you help me, please? Is there anyone with Realtel ALC262 working under SL with patched AppleHDA?

Field Note #72 @calabuig 2010-04-25

@mormegil

Please, mormegil, could you take a look at the attachments?
I can't get it work it out!

P.S. please rename the attached pdf to rar to open it

Field Note #73 @calabuig 2010-04-28

I'm here again with my problem with ALC262... please, momegil, help me...
I have this error message in the boot sequence:

ALCinject: Starting.
Apr 28 21:48:01 Mac-di-Marco kernel[0]: ALCinject: Setting built-in=<data not shown>
Apr 28 21:48:01 Mac-di-Marco kernel[0]: ALCinject: Setting layout-id=<data not shown>
Apr 28 21:48:02 Mac-di-Marco kernel[0]: Sound assertion "0 == fAudioFunctionGroup" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDACodecGeneric.cpp" at line 202 goto ExitError
Apr 28 21:48:02: --- last message repeated 1 time ---
Apr 28 21:48:02 Mac-di-Marco kernel[0]: Sound assertion "0 == pathMap_aDriverInstance" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 1459 goto Exit
Apr 28 21:48:02 Mac-di-Marco kernel[0]: Sound assertion "0 != createAudioEngines ( fPathMap_aDriverInstance )" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 172 goto Exit
Apr 28 21:48:02 Mac-di-Marco kernel[0]: Sound assertion "0 == pathMap_aDriverInstance" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 1459 goto Exit
Apr 28 21:48:02 Mac-di-Marco kernel[0]: Sound assertion "0 != createAudioEngines ( fPathMap_aDriverInstance )" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDA/AppleHDADriver.cpp" at line 172 goto Exit

Do you know what would it be the problem?

Field Note #74 @calabuig 2010-04-29

I tried another AppleHDA version and I get a different error:

22:42:59 localhost kernel[0]: kxld[com.apple.driver.AppleHDA]: The super class vtable __ZTV13IOAudioEngine for vtable __ZTV14AppleHDAEngine is out of date. Make sure your kext has been built against the correct headers.
Apr 29 22:42:59 localhost kernel[0]: Can't load kext com.apple.driver.AppleHDA - link failed.
Apr 29 22:42:59 localhost kernel[0]: Failed to load executable for kext com.apple.driver.AppleHDA.
Apr 29 22:42:59 localhost kernel[0]: Kext com.apple.driver.AppleHDA failed to load (0xdc008016).
Apr 29 22:42:59 localhost kernel[0]: Failed to load kext com.apple.driver.AppleHDA (error 0xdc008016)

Any little help?

Field Note #75 @Morpheus___ 2010-05-15

Hey... Glad to hear that there is a possibility for my lost sound in snow leopard

I have a fully working applehda in leopard 10.5.8.
after installation of sl (10.6.2) my sound is gone, so i followed the instructions and did everything like in this thread but it doesn't work. I use hdaenabler + applehda in my leopard and it works very nice. i downloaded a hdaenabler for sl and installed it with my patched applehda for sl - no luck

can anybody help me please?
Here is my working applehda from 10.5.8

Field Note #76 @Fabze 2010-06-08

m1330, stac9228 and this guide here

im one of the people, which lost their sound in SL with the stac9228. i tried voodoohda in sl and all sound outputs/inputs worked except the internal speakers.

then i found this guide and i tried it. so now THANKS.. my internal speakers work now.. but - now my internal and my external mic doesnt work.

my problem is.. i just followed this guide on page 1.. but do really not understand what ive done with this hex numbers and plist editing and so on...

maybe someone can help me!

p.s. i hope u can understand me, because iam german..

Field Note #77 @hassan 2010-06-28

now this is an easy guide, however, I do not have a working applehda.kext, I'm basically starting from scratch. No other guide seems to have a clear method of doing this, I've read Kings guide but that's incomplete and all over the place.

Field Note #78 @steenamaroo 2010-07-14

hi mormegil...

just want to say thanks! cos this is one of the best tutorials out there...

however,,,i'm in the same boat as hassan..i have no leopard applehda to work from...

i do have a working voodoohda and all the info (verbs etc),,,and have tried my best to work from there.

dsdt fix made system profiler display
Intel High Definition Audio:
Audio ID: 12

editing legacyhda and applehda with the info you gave makes system profiler list all the proper devices..
line-out 1/8 jack
line-in 1/8 jack etc etc

BUT, nothing shows in audio/midi setup...and no sound (:(

do i reinstall leopard and start from scratch, or can we make this work from voodoo info and codec dumps?

thanks again!

**EDIT**
i've installed leopard on a spare drive for testing.
the aim is to get a working leopard applehda to work from.

the best i can do is DSDT patch (which enables sys prof output)
and a patched apple hda (which populates system prof output)

problem is,

system prof shows
mic built in
mic external
speakersheadphones
SPDIF OUT!

but in the audio midi setup i only have

mic built in
mic external
speakers/headphones

how can this be? i've tried adding pin configs (from the same source that got my voodoohda working)

voodoo hda the same problem where it would autodetect everything except SPDIF.

Spdif was made to work by adding my own config data.

Field Note #79 @steenamaroo 2010-07-15

would anyone out there be prepared to help me make an applehda.kext for SL from scratch.

i have working pin configs, which are put in the dsdt, so system profiler shows my devices perfectly.

no matter what i do though, i can't get sound with applehda…

pm me if you're interested in helping.

i've given up on encoded output via voodoohda,,since no on at all seems to have it.

Field Note #80 @haze295 2010-11-14

Sorry for bringing up an old thread, but this seems like the best place to ask...

I have a working applehda and want to convert it to 10.6.5 applehda. I found that in 10.6.5 I do not have a MacOS folder and no actual AppleHDA inside.

I was wondering if someone could help me put together a 10.6.5 HDA as I've been stuck trying this tutorial.

Thank you so much,

Haze

動作検証・議論参加メンバー: @Snow @xxxslayeriiixxx @blkhockeypro19 @ping99 @mstam @mimayin @dan10 @max.1974
出典および貢献者来歴(クレジット登録 39 名 · 元スレッド #3981)
ユーザー名貢献ロール投稿数活動期間
@mormegil筆頭著者272009-09-08 → 2010-06-27
@mimayin主要貢献者142009-11-19 → 2009-11-21
@Pietruszka主要貢献者62009-09-09 → 2009-09-11
@airwalk776主要貢献者62009-10-26 → 2009-11-11
@msf5042主要貢献者62009-10-26 → 2009-11-11
@Jedric主要貢献者52009-09-20 → 2009-09-22
@dan10主要貢献者42009-11-20
@calabuig主要貢献者42010-04-21 → 2010-04-29
@Snow主要貢献者32009-09-08 → 2009-11-12
@Gurruwiwi主要貢献者32009-09-10
@blkhockeypro19主要貢献者32009-09-22 → 2009-09-26
@ping99主要貢献者32009-09-25 → 2009-09-26
@max.1974主要貢献者32009-12-01 → 2009-12-02
@xxxslayeriiixxx検証メンバー22009-09-08 → 2009-11-15
@thorazine74検証メンバー22009-09-21 → 2009-09-22
@vincenzo32検証メンバー22009-09-21
@steenamaroo検証メンバー22010-07-14 → 2010-07-15
@infinitek検証メンバー12009-09-08
@arm1tage検証メンバー12009-09-10
@tokyovigilante検証メンバー12009-09-16
@lemn検証メンバー12009-09-16
@Ezhoon検証メンバー12009-09-18
@rachaf検証メンバー12009-09-20
@mstam検証メンバー12009-09-29
@xbx2usr検証メンバー12009-10-13
@leclercqr検証メンバー12009-10-15
@Valaris検証メンバー12009-11-15
@chadp1a検証メンバー12009-11-15
@miliuco検証メンバー12009-11-18
@scififan68検証メンバー12009-11-21
@semendemon検証メンバー12010-01-12
@abct検証メンバー12010-01-24
@maxidlabs検証メンバー12010-01-26
@kanedaguy検証メンバー12010-03-04
@kws検証メンバー12010-03-04
@Morpheus___検証メンバー12010-05-15
@Fabze検証メンバー12010-06-08
@hassan検証メンバー12010-06-28
@haze295検証メンバー12010-11-14

言語を選択 · Choose your language