Как портировать аудиодрайвер AppleHDA.kext из Leopard в Snow Leopard (бинарный патч Byte-Flip и перенос структур Plist)
Классическое инженерное руководство от Mormegil по адаптации звукового драйвера AppleHDA.kext для Snow Leopard: замена идентификатора кодека (Codec ID) в обратном порядке байтов (little-endian / byte-flip) через HexEdit и перенос секций HDAConfigDefault, Layouts и PathMaps из рабочей конфигурации 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 ↗
Итак, я получаю множество просьб от пользователей, желающих адаптировать свой рабочий AppleHDA.kext из Leopard для работы в Snow Leopard.
В этом руководстве предполагается, что у вас уже есть полностью рабочий кекст от Leopard (или, по крайней мере, работающий в достаточной для ваших задач степени).
Примечание: Это руководство также предполагает, что вы уже прописали инъекцию аудиокодека в DSDT. Ознакомьтесь с руководством от snow →
Если в вашем DSDT нет устройств AZAL или HDEF, просто добавьте блок HDEF вручную, как показано здесь →.
Что вам понадобится:
1. Оригинальный («ванильный») кекст AppleHDA.kext из Snow Leopard
2. Ваш рабочий AppleHDA.kext из Leopard (убедитесь, что в 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) Прежде всего, вот список аудиокодеков, которые поддерживаются нативно и не требуют бинарного патчинга исполняемого файла:
Название Codec ID (dec) Codec ID (hex)
AD1984 299112836 0x11D41984
AD1988 299112843 0x11D4198B
STAC9220 -2088470912 0x83847680
ALC262 283902562 0x10ec0262
ALC885 283904133 0x10ec0885
Если идентификатор вашего кодека совпадает с одним из перечисленных выше, этот шаг можно пропустить.
В противном случае откройте содержимое пакета оригинального AppleHDA.kext от Snow Leopard (правый клик -> «Показать содержимое пакета») и перейдите в папку:
(SL)AppleHDA.kext/Contents/MacOS/
Откройте бинарный файл AppleHDA в редакторе HexEdit. Нам нужно заменить один из штатных идентификаторов кодека из списка выше на идентификатор вашего кодека.
В этом примере я заменю кодек 0x10ec0885 (ALC885) на 0x10ec0888 (ALC888).
Нажмите Command+F, введите в поле поиска 8508ec10 (обратный порядок байтов / byte-flip от 10ec0885) и в поле замены укажите 8808ec10 (обратный порядок байтов от 0x10ec0888).
Затем нажмите «Replace All» (Заменить все). Для самопроверки: должно быть найдено и заменено ровно 4 вхождения. Сохраните изменения и закройте HexEdit.
2) Далее переходим к редактированию файлов Info.plist. В кексте для Snow Leopard нам потребуется изменить два таких файла.
Сначала откройте для редактирования:
(SL)AppleHDA.kext/Contents/PlugIns/AppleHDAHardwareConfigDriver.kext/Contents/Info.plist
Откройте его в редакторе PlistEdit Pro, разверните ветку:
IOKitPersonalities/HDA Hardware Config Resource/HDAConfigDefault/
и удалите все вложенные в нее элементы.
Теперь, в зависимости от того, какую именно версию AppleHDA от Leopard вы используете в качестве донора, откройте один из следующих файлов:
(Leo)AppleHDA.kext/Contents/PlugIns/AppleHDAController.kext/Contents/Info.plist
(Leo)AppleHDA.kext/Contents/PlugIns/AppleHDAHardwareConfigDriver.kext/Contents/Info.plist
Просмотрите структуру файла, пока не найдете аналогичную секцию:
Кликните правой кнопкой мыши по словарю (индекс 0 на скриншоте выше), содержащему ваш CodecID, и выберите «Copy» (Копировать).
Заодно обратите внимание на используемое значение LayoutID (обычно это 12).
Вернитесь в открытый файл Info.plist от Snow Leopard, выделите ключ HDAConfigDefault и вставьте скопированный элемент как дочерний («Paste as Child»). Сохраните и закройте файл.
3) Теперь необходимо отредактировать второй plist-файл:
(SL)AppleHDA.kext/Contents/PlugIns/AppleHDAPlatformDriver.kext/Contents/Info.plist
Перейдите к ветке:
IOKitPersonalities/HDA Platform Resource/
и удалите всё содержимое внутри массивов Layouts и PathMaps.
Снова, в зависимости от структуры вашего рабочего кекста от Leopard, откройте один из двух файлов:
(Leo)AppleHDA.kext/Contents/Info.plist
(Leo)AppleHDA.kext/Contents/PlugIns/AppleHDAPlatformDriver.kext/Contents/Info.plist
Найдите секцию Layouts:
Кликните правой кнопкой мыши по элементу внутри Layouts (индекс 0 на скриншоте), который содержит ваш LayoutID (например, 12), и скопируйте его.
Обратите внимание на используемый внутри него идентификатор PathMapID — в данном примере это 9.
Также убедитесь, что внутри указан правильный десятичный CodecID.
Переключитесь обратно на plist от Snow Leopard, выделите ключ Layouts и вставьте скопированный элемент как дочерний («Paste as Child»).
Снова вернитесь к plist-файлу от Leopard и перейдите к секции PathMaps:
Кликните правой кнопкой мыши по элементу внутри PathMaps (индекс 0), содержащему ваш PathMapID (в нашем случае — 9), и скопируйте его.
Перейдите в plist от Snow Leopard, выделите ключ PathMaps и вставьте элемент как дочерний («Paste as Child»).
Дополнения автора и технические ревизии
Последующие дополнения автора @mormegil
С этим файлом plist всё работает лучше всего. С этого момента выкладывать готовые патченные AppleHDA я больше не буду.
На шаге №2 найдите идентификатор вашего кодека (в десятичном формате) в поле ключа CodecID. Когда найдете нужный блок, посмотрите, какой LayoutID в нем указан — если там стоит не 12, измените его на 12.
Затем прогоните поиск еще раз, чтобы убедиться, что ваш кодек встречается в списке только один раз. Все остальные раскладки (Layouts) можно смело удалить, чтобы файл plist оставался чистым и аккуратным.
@PietruszkaСкопировал все секции PathMaps и Layouts, но звук так и не появился… Попробую твои рекомендации... спасибо за помощь! P.S. Если ничего не выйдет, можно я выложу сюда свой рабочий AppleHDA от Leopard и новый от 10.6?
А вы пропатчили свой DSDT?
@arm1tageУ меня этот способ тоже не сработал (ноутбук Dell Latitude E6500, аудиокодек IDT, подменил в бинарнике перевернутый hex: 8508EC10) даже с пропатченным DSDT. Зато в настройках сети вдруг выскочило загадочное сообщение: «Обнаружен новый интерфейс — PCI Serial Adapter (3)»...
Этот адрес кодека принадлежит чипам Realtek ALC885/ALC889a, а не IDT. Снимите собственный дамп кодека с помощью любого Linux LiveCD.
@GurruwiwiДействуя по вашему руководству, Mormegil, и используя всю собранную с вашей помощью информацию, я добился того, что при загрузке с флагом -v исчезли ВСЕ ошибки «assertion "0"», кроме одной-единственной! Система больше не падает в панику ядра (KP), лишь изредка дублирует сообщения в логе. Эту последнюю ошибку я явно создал сам, когда удалил лишнюю запись, чтобы привести свой plist в точности к…
А в 10.5 Leopard звук с этим кекстом у вас точно работает?
Вы ведь редактируете бинарник в программе HexEdit, верно? Она не должна сохранять файл с расширением .txt.
В любом случае, как я сразу оговорился в начале статьи, эта инструкция рассчитана на то, что у вас на руках уже есть заведомо рабочий кекст от Leopard. Загрузитесь в Leopard и перепробуйте все готовые модифицированные кексты под ваш чип, какие сможете найти на форуме InsanelyMac, пока не подберете рабочий вариант. По сути, вам нужен лишь комплект правильных таблиц ConfigData, Layout и PathMap для вашего кодека.
И только когда найдете полностью рабочий донорский кекст под 10.5, имеет смысл браться за его перенос в Snow Leopard.
@PietruszkaВсё равно не удается завести кекст… На шаге 2 мой CodecID встречается в файле дважды… пробовал копировать оба блока — не работает; пробовал по одному — тоже тишина; менял LayoutID с 662 на 12 — без толку. Без понятия, что еще сделать, я сдаюсь…
Вы уверены, что ваш донорский AppleHDA работает в 10.5? Какой layout-id прописан у вас в DSDT?
Загляните в 10.5 в «Сведения о системе» > «Аудио» (System Profiler > Audio): какое число указано там в строчке «Audio ID»?
Если в вашем DSDT нет блока аудиоустройства, просто добавьте секцию HDEF вручную:
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)
}
}
.
.
.
Device ID: 0x1458A002
Audio ID: 12
Device ID: 0x10438277
Audio ID: 12
Ничего не замечаете?
Вы вообще читали руководство? Не имеет ни малейшего значения, что изначально лежит внутри «ванильного» кекста от Snow Leopard — вся суть метода заключается в переносе готовых данных из вашего рабочего кекста от Leopard.
0x1458A002 — это НЕ идентификатор кодека (Codec ID). Я ничем не смогу вам помочь, если вы даже не знаете, какой у вас кодек.
@vincenzo32Всем привет, это мое первое сообщение на форуме. Хотел узнать, подойдет ли это руководство для кодека Realtek ALC660/861 на ноутбуке ASUS Z53Ja? Спасибо!
Этот метод должен работать для абсолютно любого кодека при условии, что у вас есть рабочий кекст от предыдущей системы.
@blkhockeypro19Пропатчил свой 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…
Ну а сам звук-то при этом работает?
@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…
Вы запускаете Snow Leopard в 32-битном или 64-битном режиме? Какой версии загрузчик используете? И делали ли вы бинарный патч самого исполняемого файла AppleHDA?
Судя по вашему дампу и симптомам с паникой ядра, у вас ноутбук, причем готового полностью рабочего кекста от Leopard у вас не было и вы пытаетесь собрать конфигурацию с нуля, верно? Если так, то это руководство вам не подойдет — вам нужна фундаментальная инструкция по составлению таблиц с нуля вот здесь ↗.
Впрочем, сами файлы plist у вас выглядят вполне прилично. Возможно, стоит просто немного сократить секции ConfigData, Layout и PathMap — для ноутбука у вас там прописано слишком уж много портов.
@blkhockeypro19Звука нет =\
А вы лично проверяли тот донорский кекст в Leopard на СВОЕМ компьютере и убедились, что он у вас действительно работает?
То есть ваша проблема изначально не связана с самим переносом в SL, поскольку донорский кекст от Leopard и так не был полностью рабочим на вашей машине? Боюсь, в таком случае я мало чем смогу помочь, так как составление карт портов с нуля требует множества проб и ошибок непосредственно на самом железе.
Вам придется самостоятельно поэкспериментировать с раскладкой узлов (Node ID) и портов по руководству от THe KiNG. Попробуйте для начала урезать ConfigData до минимального набора самых необходимых выходов либо поищите на форумах другой проверенный кекст под Leopard для вашей модели ноутбука, чтобы не изобретать велосипед.
И еще: если вы загружаетесь в 64-битном режиме, избегайте использования загрузчика Chameleon RC3 — в нем не до конца реализована поддержка 64-битного EFI, что само по себе приводит к ошибкам sound assertion при старте.
Да, конкретное числовое значение LayoutID не принципиально, главное — чтобы оно везде совпадало. Например, если в DSDT у вас прописан layout-id 79 03 00 00 (в обратном порядке байтов) => 0x00000379 (hex) => 889 (в десятичной системе), то и в файлах Info.plist везде нужно указывать LayoutID 889.
@airwalk: Вы уверены, что это действительно ваш аппаратный Codec ID? Вы снимали дамп кодека лично на своей плате? Насколько мне известно, чип ALC889a имеет точно такой же внутренний аппаратный идентификатор, как и ALC885 (0x10ec0885). Попробуйте вообще не патчить бинарный файл через HexEdit и проверьте результат.
Хм-м... Вы правы.
А вы случайно не прописывали массив PinConfigurations / ConfigData напрямую в DSDT? Проблема может быть либо в этом, либо в ошибке внутри дерева PathMaps. На всякий случай уточню: у вас точно указан один и тот же идентификатор PathMapID и в разделе «Layouts», и в разделе «PathMaps» внутри AppleHDAPlatformDriver.kext?
@SnowПривет, Mormegil, давненько не общались, дружище! Как сам? Поскольку обновление 10.6.2 сломало мне звук, не мог бы ты глянуть мой слегка подправленный (но, увы, нерабочий) AppleHDA.kext? media fire.com/file/mikkmb25bzz/AppleHDA.zip Спасибо, старик! P.S. Пока временно откатился на AppleHDA от 10.6.1.
Привет, дружище, у меня всё отлично! Сам только что накатил 10.6.2 — система работает прекрасно, осталось только поправить слетевший AppleHDA.
Все равно нужно было пересобирать кекст под свой кодек, так что заодно собрал свежую версию и под твой:
AppleHDA от 10.6.1/10.6.2, пропатченный под ALC889a:
media fire.com/file/gm25ymjzhjw/AppleHDA_889a.zip
Блок кода Device (HDEF) в DSDT должен содержать только минимальную заглушку, как показано здесь: Как портировать AppleHDA в SL →
Сами файлы plist у вас в порядке. Единственная проблема — массив ConfigData в первом файле plist отличается от того, что прописан у вас прямо в DSDT. Протестируйте оба варианта ConfigData по очереди, но прописывайте их ТОЛЬКО в plist — из DSDT эти байты нужно убрать (оставив пустой буфер).
Можете выложить сюда второй файл plist от Leopard — тот, в котором содержится секция ConfigData?
С вашим DSDT всё в полном порядке, раз все порты корректно отображаются в «Сведениях о системе» (System Profiler).
Я сверил ваши файлы plist от Leopard и Snow Leopard — там тоже всё сходится один к одному.
Боюсь, тут я больше ничем помочь не смогу, извините.
Вы точно правильно установили сам кекст? Восстановили права доступа и пересобрали кэш расширений (mkext)?
Друзья, извините за долгое отсутствие — был сильно загружен делами. Надеюсь на понимание.
Решил поделиться свежим готовым кекстом для владельцев кодека ALC888 под систему 10.6.4: AppleHDA.kext (mega upload.com/?d=D1HV9A4K)
Полевые заметки и отчёты сообщества
Отобрано 80 технических ответов из 117 исходных сообщений темы
Спасибо за отличное руководство! А не могли бы вы выложить свой готовый пропатченный AppleHDA для кодека ALC888?
А как быть, если в моем старом AppleHDA.kext от Leopard внутри списка не один элемент под номером 0, а целый список от 0 до 23?
Какой именно из них нужно копировать?
Заранее спасибо за помощь!
Скопировал все секции PathMaps и Layouts, но звук так и не завелся… Сейчас попробую ваши рекомендации...
Спасибо за помощь!
P.S. Если всё равно не заработает, можно я прикреплю сюда свой рабочий AppleHDA от Leopard и новый от 10.6?
Да, DSDT у меня пропатчен.
Но звук всё равно не заводится... видимо, я где-то допускаю ошибку…
В любом случае спасибо за отзывчивость!
У меня этот метод тоже не сработал (ноутбук Dell Latitude E6500, аудиочип IDT, подменил перевернутый hex: 8508EC10) даже с пропатченным DSDT. Зато после перезагрузки в настройках сети невесть откуда выскочило сообщение «Обнаружен новый интерфейс — PCI Serial Adapter (3)»...
Действуя по вашему руководству, Mormegil, и опираясь на все ваши прошлые подсказки, я добился того, что из лога загрузки (-v) исчезли ВСЕ ошибки «assertion "0"», кроме одной-единственной! Система больше не падает в панику ядра и не зависает, лишь иногда дублирует строчки в логе. Эту единственную ошибку я явно устроил себе сам, когда удалил в plist одно поле, чтобы структура файла в точности совпадала со скриншотами из вашего гайда — кажется, этот ключ назывался codecAddressMaskData. Полностью строчка в режиме -v выглядит так:
Sound assertion "0 == codecAddressMaskData" failed in "/sourceCache/AppleHDA/AppleHDA-174.1.1/AppleHDAcontroller.cpp" at line 1159 goto Exit
Сегодня вечером попробую переделать всё с чистого листа (оставив штатное значение этого поля).
Вы случайно не подскажете, где можно узнать правильное значение этого параметра для моего чипа?
В 10.5 звук работает, но через VoodooHDA.
Сейчас заново прошел всю инструкцию шаг за шагом — в прошлый раз я явно что-то напутал, потому что теперь никакого ключа codecAddressMaskData мне вообще не попалось. Начал с чистого листа и дважды проверил, что беру за основу оригинальный нетронутый AppleHDA.
Дамп кодека я снимал лично на своей системе из-под Linux; единственное значение, которое я поставил наугад — это PathMapID = 9. Всё остальное взято строго с моего железа.
Увы, после перезагрузки снова словил панику ядра (KP).
Примечание: когда я повторял шаги с начала, то заметил интересную деталь — при редактировании бинарника AppleHDA/Contents/MacOS/AppleHDA в программе HexEdit (для замены байтов кодека) после нажатия «Save» программа создавала рядом текстовый файл (AppleHDA.txt), а сам исходный бинарник переименовывала в «AppleHDA~». Поэтому со второй попытки я скопировал бинарник в отдельную папку, отредактировал и сохранил его там, убрал тильду «~» из имени файла и вернул исполняемый файл обратно внутрь кекста. Не знаю, сыграло ли это роль, но решил поделиться наблюдением.
Да, качал HexEdit по вашей ссылке из шапки. Нашел и заменил все 4 вхождения, нажал File -> Save.
Возможно, так вышло из-за того, что у меня в Finder включено отображение всех скрытых файлов? Но к имени оригинального исполняемого файла UNIX редактор действительно приписал символ «~» на конце (резервную копию).
Так и сделаю — сначала найду рабочий кекст под Leopard, мне это почему-то даже в голову не пришло! Спасибо!
Кекст по-прежнему не работает…
На шаге 2 мой CodecID встречается в файле дважды… пробовал копировать оба блока сразу — не работает; пробовал оставлять по одному — тоже не работает.
Менял LayoutID с 662 на 12 — безрезультатно.
Уже понятия не имею, что еще предпринять.
Сдаюсь…
Больше никаких идей не осталось…
ID устройства: 0x1458A002 (devID)
Audio ID: 662
Кажется, я кое-что недопонял (моя вина)... Вы спрашивали, пропатчил ли я DSDT.
Сам DSDT у меня пропатчен (исправлены RTC, Time Machine fix, сетевая карта LAN, прописана видеокарта 7600 GS)... но патч для звука в DSDT я никогда не делал — в Leopard этого не требовалось, достаточно было просто заменить AppleHDA.kext.
Получается, для Snow Leopard инъекция звука в DSDT обязательна, даже если раньше обходилось без нее?
Извините за мой английский и еще раз спасибо за помощь!
Огромное спасибо за вашу помощь!
Прописал блок HDEF в DSDT, как вы показали,
а затем подкинул кекст alc662.kext (в папку /Extra), который нашел на соседнем форуме — и звук сразу заработал!
Потрясающее руководство, огромное спасибо! Раньше мой кодек AD1988B (на плате ASUS P5K-E) работал через кекст-инжектор с одним plist внутри, а ваш метод позволил завести полноценный цифровой выход S/PDIF! Блестящая работа!
Привет! Сделал всё по вашей инструкции и собрал патченный AppleHDA.kext.
Проблема в том, что при его подгрузке через kextload в системе не появляется ни одного аудиоустройства.
У меня кодек ADI AD1988. Пытался пропатчить DSDT по ссылке из шапки, но поскольку та инструкция написана под другой кодек (ALC889), я не могу найти указанные там блоки в своем файле dsdt.dsl.
Подскажете, как быть? Спасибо!
А этот универсальный код HDEF можно использовать и для кодека ALC883?
@mormegilЕсли в вашем DSDT нет блока аудиоустройства, просто добавьте секцию HDEF вручную: 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) } } Найдите…
У меня, к сожалению, не заработало.
DSDT пропатчился и скомпилировался без ошибок.
Но при загрузке Snow Leopard в логе сыплются вот такие ошибки:
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
В Snow Leopard определяется следующее (но звука в настройках нет):
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
Ага, я тоже обратил на это внимание — потому и выложил оба вывода для сравнения. По какой-то непонятной причине в Snow Leopard моя звуковая карта всегда определяется с идентификатором Device ID: 0x1458A002.
Я специально искал по всем файлам внутри «ванильного» AppleHDA.kext от SL число 341352450 (десятичный эквивалент от 0x1458A002), но ни одного совпадения там нет.
У меня ноутбучный кодек IDT 92HD71B7X на южном мосту Intel 82801IB ICH9M,
Codec ID = 0x111D76B2.
Моя конфигурация портов (PinConfigurations):
<00571C10 00571D01 00571E56 00571F18 00771C21 00771D01 00771E56 00771F58 00971C22 00971D01 00971E56 00971F58 00B71C23 00B71D01 00B71E56 00B71F58 00D71C24 00D71D01 00D71E56 00D71F58>
Я скачал ваш готовый патченный AppleHDA.kext из этой ветки:
(Решено) Патчинг нового AppleHDA Kext →
Звук с ним работает, но при загрузке система часто падает в панику ядра (с ошибками вида Sound assertion "0 == pathMa…AppleHDA/AppleHDADriver.cpp…"),
а кроме того, полностью пропадает звук после выхода из режима сна (Wake from Sleep).
ПОДСКАЖИТЕ, ПОЖАЛУЙСТА, КАК ЭТО ИСПРАВИТЬ?
Заранее извиняюсь за мой английский.
Да, я внимательно прочитал руководство и прекрасно понимаю, что мы переносим секции Layout, PathMaps и CodecID из рабочего кекста от Leopard в кекст от Snow Leopard.
И я знаю, что 0x1458A002 — это не мой CodecID: физически на моей материнской плате распаян кодек Realtek ALC883 (0x10ec0883).
Я лишь пытался понять, откуда вообще в профиле системы Snow Leopard берется значение 0x1458A002, если внутри самого «ванильного» AppleHDA.kext такого идентификатора нет и в помине.
Погуглил этот ID (0x1458A002) — судя по всему, он относится к платам с кодеком ALC889A.
В Leopard у меня стоит рабочий AppleHDA.kext, пропатченный утилитой Taruga AppleHDA Patcher v1.20 на основе снятого мной дампа кодека.
При этом в самом Leopard в «Сведениях о системе» отображается:
Device ID: 0x10438277 — погуглил и этот код, он вообще относится к чипу ADI 1988B (очень странно).
Кстати, у меня появилась идея...
Попробую-ка я прописать при переносе идентификатор от ADI 1988B (раз уж именно он светится в рабочей конфигурации Leopard) вместо реального аппаратного 0x10ec0883.
@JedricДа, я внимательно прочитал руководство и прекрасно понимаю, что мы переносим секции Layout, PathMaps и CodecID из рабочего кекста от Leopard в кекст от Snow Leopard. И я знаю, что 0x1458A002 — это не мой CodecID: физически на моей материнской плате распаян кодек Realtek ALC883 (0x10ec0883). Я лишь пытался понять, откуда вообще в…
0x1458A002 is the subsystem vendor and device id of the codec, not the pci vendor & device id, for some reason Apple reports that instead of the codec id, probably because they use that to identify codec.
I got not clue why you got that there though, 0x1458A002 refers to some Gigabyte P35 motherboards, so if you got an Asus board that should not be there unless you (wrongly) inject that value somewhere (dsdt, plist...)
0x10438277 is some Asus board thats the right one I guess, keep in mind thats not the codec id, is the vendor id (Realtek makes the codec, Asus puts it the board). You need a codec dump to know your codec id, cant rely on System Profiler.
Всем привет, это мое первое сообщение на форуме. Подскажите, пожалуйста, можно ли применить эту инструкцию для завода кодека Realtek ALC660/861 на ноутбуке ASUS Z53Ja? Спасибо!
Возникла сложность при редактировании файлов plist, потому что у меня довольно редкая ревизия чипа: в спецификациях ноутбука заявлен ALC660, но в дампе кодека из Linux он определяется как 0x10ec0861 (в byte-flip: 6108ec10).
@vincenzo32Возникла сложность при редактировании файлов plist, потому что у меня довольно редкая ревизия чипа: в спецификациях ноутбука заявлен ALC660, но в дампе кодека из Linux он определяется как 0x10ec0861 (в byte-flip: 6108ec10).
Компания Realtek часто выпускает чипы под разными коммерческими названиями, хотя внутри у них зашит один и тот же аппаратный идентификатор (самый известный пример — кодек ALC889a, который аппаратно отдает ID 0x10EC0885). Всегда ориентируйтесь именно на те цифры, которые показаны в дампе кодека из Linux — они единственно верные.
@thorazine740x1458A002 — это Subsystem Vendor & Device ID кодека, а не идентификатор самого чипа на шине PCI/HDA; по какой-то причине в «Сведениях о системе» Apple выводит именно субвендорный ID материнской платы. Понятия не имею, откуда у вас взялся код 0x1458A002 (это субвендор плат Gigabyte серии P35), если у вас плата ASUS…
Я открыл свой дамп кодека из Linux, и там указано следующее:
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. Это совершенно чистая установка Snow Leopard, я нигде не прописываю 0x1458A002 вручную: DSDT сгенерирован с нуля, в него добавлен только минимальный универсальный код HDEF из поста Mormegil, и скомпилировался он без единой ошибки.
При этом в IORegistryExplorer всё выглядит правильно: codec-id определяется как 0x10ec0883.
А вот скриншот из Leopard. Как вы и объяснили, значения subsystem-id и subsystem-vendor-id отличаются между тем, что показывает Snow Leopard, и тем, что было в Leopard.
Я аккуратно пропатчил свой 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
Подскажите, в чем может быть дело? За основу брал кекст под кодек STAC9227 от Leopard.
Ошибки sound assertion на кодеке Conexant CX20561 в Snow Leopard
Прошел все шаги вашего руководства и пропатчил оригинальный AppleHDA от Snow Leopard. При каждой загрузке в логе ядра вижу следующую картину:
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
Иногда при первой перезагрузке система падает в панику ядра, не доходя до рабочего стола; тогда я перезагружаюсь с флагами -v -f, попадаю в систему, и при этом отлично работают наушники, встроенные динамики ноутбука и линейный выход (с автоматическим переключением при втыкании штекера!), но не работает запись с микрофона. После этого система перезагружается уже без паники, но в логах каждый раз висят эти простыни sound assertion.
А стоит мне установить любой новый кекст или прогнать Kext Utility — при следующей же перезагрузке я снова ловлю панику ядра.
Прикрепляю свои модифицированные кексты, дамп кодека из Linux и PinConfigurations из реестра Windows.
Буду невероятно признателен за любую помощь — очень нужно завести запись с микрофона.
Привет, Mormegil! Огромное спасибо за отклик.
Да, у меня ноутбук Compaq Presario CQ60-202TX, запущен 64-битный Snow Leopard через загрузчик Chameleon 2 RC3 (пробовал также ставить PC_EFI 10.3, но разницы не заметил). Бинарник AppleHDA я пропатчил, заменив байты 6202EC10 на 5150F114 (по дампу из Linux мой кодек — 0x14f15051). Пробовал также заменять другие штатные кодеки из списка на 5150F114 — результат один и тот же.
В Leopard у меня стоял частично рабочий патченный кекст (тоже без рабочего микрофона), который я и перенес в SL по вашему руководству. Я уже научился снимать дамп из-под Linux и прогонять его через codecgraph и verbit для получения скорректированных глаголов (verbs), но пока не понимаю, как вручную составить таблицы Layout и PathMap — не подскажете, как это делается?
@mormegilА вы лично проверяли тот донорский кекст в Leopard на СВОЕМ компьютере и убедились, что он у вас действительно работает?
Я пользовался этим самым кекстом в Leopard больше года — поверьте, там он работал как часы =P Кстати, в качестве загрузчика у меня стоит PC_EFI v10.3 — с ним ведь всё нормально?
Удалось ли кому-нибудь портировать SigmaTel STAC9274D?
Спасибо за отличное руководство!
Написано очень доступно и понятно.
Вчера я попытался портировать по нему свой кекст AppleHDA для кодека SigmaTel STAC9274D, но, увы, потерпел неудачу.
В бинарнике AppleHDA от Snow Leopard я заменил штатный идентификатор STAC9220:
STAC9220 0x83847680
на
STAC9274D 0x83847621
Мой DSDT указывает на этот же codec-id, и в «Сведениях о системе» Snow Leopard корректно отображается массив PinConfigurations.
В донорском кексте использовался LayoutID 4 (а не 12), но поскольку и в моем DSDT прописан layout-id «4», перенос блоков с LayoutID 4 в кекст от SL по идее должен был сработать без проблем.
Разумеется, ради чистоты эксперимента я попробовал заменить везде LayoutID на 12 (и прописать 0x0C в DSDT), но, как и ожидалось, это ничего не изменило.
Есть ли здесь кто-нибудь, кому удалось успешно завести этот чип в SL и кто мог бы поделиться готовым кекстом?
Кекст VoodooHDA у меня работает, но с ним возникают проблемы при выходе из режима сна.
Точно такая же проблема, как у Jedric
Jedric → (или кто-нибудь еще, кто может подсказать),
у меня возникла точно такая же ситуация: в «Сведениях о системе» отображается Device ID «0x1458A002».
Удалось ли вам продвинуться в решении? В любом случае, не могли бы вы скинуть копию вашего файла DSDT — возможно, сравнение с ним поможет мне разобраться с ошибками компиляции, которые я получаю при правке своего файла (свой текущий DSDT я прикрепил к сообщению: без правок HDEF он компилируется отлично, в нем уже работают фиксы HPET, RTC, DTGP и USB, и сам Snow Leopard работает безупречно, за исключением звука и того, что для SATA пока требуется инжектор AHCIInject.kext [с AHCI разберусь позже]).
Однако когда я пытаюсь вставить универсальный блок 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…
Я прикрепил к посту архив со своим рабочим файлом compiled_working_DSDT (в котором прописан другой вариант блока HDEF, в результате чего в «Сведениях о системе» звук определяется как:
«Intel High Definition Audio:
Device ID: 0x1458A002
Audio ID: 12
Available Devices: » — с пустым списком портов),
а также файл added_hdef_compile_errors_dsdt, в котором я заменил блок HDEF на вариант из этой темы и получил приведенные выше ошибки компиляции.
Буду очень благодарен за любую помощь! И прошу прощения за дилетантские вопросы — я впервые взялся за редактирование DSDT всего неделю назад и пока только осваиваю азы.
Show 50 additional community field notes (#31–#80)
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
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"
mormegil-
airwalk and I have the same setup. check my linux dump below. we are 889, not 889a.
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.
yeap its the same pathmapid in both places.
I'll double check the dsdt.
Airwalk did the AppleHDA leopard kext you're using ever list all of the audio configs in system profile?
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...
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.
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 ?
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
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
i will test it out and report back in a few, you're the man airwalk
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?
Muchos Gracias Hombre
Installing right away.
Update: working perfectly after rebuilding Aggregate device bro, thx again
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. ^_^
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)
}
}
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.
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
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
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
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
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
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
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
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?
Yeah I did all that, I'm using Chameleon 2.0RC1. I'll see if there's a later version..
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
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?
There should be 2 instances of AZAL replaced to HDEF. I thing you are close
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
This is too much of a headache, i give up, im buying an Xmod
Hey!, thanks for this sweet guide, it really helped me port the applehda kext to work for my alc888!
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
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!
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)
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.
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.
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.
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.
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)
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?
@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
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?
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?
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
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..
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.
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.
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.
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
Источники и реестр соавторов (указано участников: 39 · Тема #3981)
| Участник | Роль в досье | Сообщений | Период активности |
|---|---|---|---|
| @mormegil | Основной автор | 27 | 2009-09-08 → 2010-06-27 |
| @mimayin | Ключевой участник | 14 | 2009-11-19 → 2009-11-21 |
| @Pietruszka | Ключевой участник | 6 | 2009-09-09 → 2009-09-11 |
| @airwalk776 | Ключевой участник | 6 | 2009-10-26 → 2009-11-11 |
| @msf5042 | Ключевой участник | 6 | 2009-10-26 → 2009-11-11 |
| @Jedric | Ключевой участник | 5 | 2009-09-20 → 2009-09-22 |
| @dan10 | Ключевой участник | 4 | 2009-11-20 |
| @calabuig | Ключевой участник | 4 | 2010-04-21 → 2010-04-29 |
| @Snow | Ключевой участник | 3 | 2009-09-08 → 2009-11-12 |
| @Gurruwiwi | Ключевой участник | 3 | 2009-09-10 |
| @blkhockeypro19 | Ключевой участник | 3 | 2009-09-22 → 2009-09-26 |
| @ping99 | Ключевой участник | 3 | 2009-09-25 → 2009-09-26 |
| @max.1974 | Ключевой участник | 3 | 2009-12-01 → 2009-12-02 |
| @xxxslayeriiixxx | Участник | 2 | 2009-09-08 → 2009-11-15 |
| @thorazine74 | Участник | 2 | 2009-09-21 → 2009-09-22 |
| @vincenzo32 | Участник | 2 | 2009-09-21 |
| @steenamaroo | Участник | 2 | 2010-07-14 → 2010-07-15 |
| @infinitek | Участник | 1 | 2009-09-08 |
| @arm1tage | Участник | 1 | 2009-09-10 |
| @tokyovigilante | Участник | 1 | 2009-09-16 |
| @lemn | Участник | 1 | 2009-09-16 |
| @Ezhoon | Участник | 1 | 2009-09-18 |
| @rachaf | Участник | 1 | 2009-09-20 |
| @mstam | Участник | 1 | 2009-09-29 |
| @xbx2usr | Участник | 1 | 2009-10-13 |
| @leclercqr | Участник | 1 | 2009-10-15 |
| @Valaris | Участник | 1 | 2009-11-15 |
| @chadp1a | Участник | 1 | 2009-11-15 |
| @miliuco | Участник | 1 | 2009-11-18 |
| @scififan68 | Участник | 1 | 2009-11-21 |
| @semendemon | Участник | 1 | 2010-01-12 |
| @abct | Участник | 1 | 2010-01-24 |
| @maxidlabs | Участник | 1 | 2010-01-26 |
| @kanedaguy | Участник | 1 | 2010-03-04 |
| @kws | Участник | 1 | 2010-03-04 |
| @Morpheus___ | Участник | 1 | 2010-05-15 |
| @Fabze | Участник | 1 | 2010-06-08 |
| @hassan | Участник | 1 | 2010-06-28 |
| @haze295 | Участник | 1 | 2010-11-14 |