Skylake

Приветствуем!

Вот небольшая (а огромная :D) информация по заводу Skylake графики. На данный момент у нас есть положительные отчёты по заводу только HD515, HD520, и HD530.
Если у вас отличная от этих карта, то свяжитесь с нами – попробуем завести!

Upd.1, 16.07.2016 – корректирующая информация о работе на 10.11.5+, 10.12 имеет проблемы (оно и понятно).
Upd.2, 17.07.2016 – исправлена неверная информация по HDMI-звуку.


Полный список Skylake графики:

  • 0x1902 – HD Graphics 510 (Desktop GT1)
  • 0x1906 – HD Graphics 510 (ULT GT1)
  • 0x190B – HD Graphics 510 (Halo GT1)
  • 0x1912 – HD Graphics 530 (Desktop GT2)
  • 0x1916 – HD Graphics 520 (ULT GT2)
  • 0x191B – HD Graphics 520/530 (Halo GT2)
  • 0x191D – HD Graphics P530 (Mobile Xeon GT2)
  • 0x191E – HD Graphics 510/515 (ULX GT2)
  • 0x1921 – HD Graphics 520 (ULT GT2F)
  • 0x1923 – HD Graphics 535 (ULT GT3)
  • 0x1926 – Iris Graphics 540 (ULT GT3E)
  • 0x1927 – Iris Graphics 550 (ULT GT3E)
  • 0x192B – Iris Graphics 555 (Halo GT3)
  • 0x192D – Iris Graphics P555 (Media Server GT3FE)
  • 0x1932 – Iris Graphics 580 (GT4)
  • 0x193B – Iris Graphics P580 (Halo GT4E)
  • 0x193D – Iris Graphics P580 (Workstation GT4E)

Список ig-platform-id (Оригинал: Piker Alpha):

[ 1]  0x191e0000 — Intel® HD Graphics 515..........(ULX GT2)
[ 2]  0x19160000 — Intel® HD Graphics 520..........(ULT GT2)
[ 3]  0x19260000 — Intel® Iris™ Graphics 550.......(ULT GT3)
[ 4]  0x191b0000 — Intel® HD Graphics 530..........(Halo GT2)
[ 5]  0x193b0000 — Intel® Iris™ Pro Graphics 580...(Halo GT4)
[ 6]  0x19120000 — Intel® HD Graphics 530..........(Desktop GT2)
[ 7]* 0x19020001 — Intel® HD Graphics 510..........(Desktop GT1)
[ 8]* 0x19170001 — Skylake Desktop.................(GT1.5)
[ 9]* 0x19120001 — Intel® HD Graphics 530..........(Desktop GT2)
[10]* 0x19320001 — Skylake Desktop.................(GT4)
[11]  0x19160002 — Intel® HD Graphics 520..........(ULT GT2)
[12]  0x19260002 — Intel® Iris™ Graphics 540.......(ULT GT3)
[13]  0x191e0003 — Intel® HD Graphics 515..........(ULX GT2)
[14]  0x19260004 — Intel® Iris™ Graphics 540.......(ULT GT3)
[15]  0x193b0005 — Intel® Iris™ Pro Graphics 580...(Halo GT4)
[16]  0x193b0006 — Intel® Iris™ Pro Graphics 580...(Halo GT4)

* – неактивные ig-platform-id

На данный момент (07.16) в продаже всего два Apple-компьютера на Skylake базе: iMac17,1 (Retina 5K, 27-inch, Late 2015) и MacBook9,1 (Retina, 12-inch, Early 2016)
На борту установлены процессоры:

  • Intel Core i5-6500;
  • Intel Core i5-6600;
  • Intel Core i7-6700K;
  • Intel Core m3-6Y30;
  • Intel Core m5-6Y54;
  • Intel Core m7-6Y75.

Во всех процессорах iMac’а интегрирована HD Graphics 530 (Desktop GT2), с id: 0x1912; а в мобильных интегрирована HD Graphics 510/515 (ULX GT2), с id: 0x191E.
Согласно дампу, в iMac’у используется ig-platform-id 0x19120001, а в MacBook’e ig-platform-id 0x191e0003.

Следовательно, нужно установить соответствующий SMBios для вашего типа компьютера (ноутбук или десктоп).


Мобильная Intel HD520 и 515

520 – Device-id: 0x1916, архитектура ULT GT2
515
– Device-id: 0x191E, архитекрутра ULT GT2

Для завода графики достаточно:

  • Проинжектить ig-platform-id: 0x19160000;
  • Переименовать в ACPI устройство HECI или MEI -> IMEI;
  • Установить 96 мб в биосе (или больше) под видеокарту;
  • Переименовать в ACPI видеокарту GFX0 -> IGPU для завода AGPM;
  • Выключить все “стандартные” клеверные инжекции (InjectIntel, ig-platform-id) во избежание конфликта.
ОЧЕНЬ ВАЖНО: Помните, что при инжекции через Arbitrary, вы должны отключить все прочие инжекции, типа Grapchis/Inject/Intel, или удалить соответствующий _DSM в DSDT!

Инжекция параметров видеокарты:

//рассмотрено на примере 520, для 515 отличия минимальные

Разберем ключи:

  • subsystem-id = 86800000 (8086 = Intel)  – косметика;
  • subsystem-vendor-id = 6B100000 (106B = Apple)  – косметика;
  • AAPL,ig-platform-id = 00001619 (0x19160000) – инжекция ig-platform-ID;
    • На скрине значение для 520,  но также можно попробовать 02001619. Это может повлиять на нумерацию выходов, и на их тип.
    • Для 515 нужно в этом значении выставить 00001e19 (0x191e0000) или 03001e19 (0x191e0003).
  • graphics-options = 0C000000 – на всякий случай;
  • device-id = 16190000 (0x1916) – инжекция ID;
    • Для 515 ставим 1E190000 (0x191E).
  • model = Intel HD Graphics 520 – косметика;
    • Для 515 ставим, разумеется, цифру 515.
  • PciAddr = 00:02.00 (0x00020000 – стандартный PCI адрес встроенной Intel графики)

P.S. — если возникают трудности, то подробнее про инжект через Arbitrary прочитаете в “Клевере цвета хаки”.


Мобильная и Десктопная HD530

Мобильная: Device-id – 0x191B, архитектура HALO GT2
Десктопная:
Device-id0x1912, архитектура Desktop GT2

Для завода графики достаточно:

  • Проинжектить ig-platform-id: 0x19160000;
  • FakeID под HD520: 0x1916;
  • FakePCIID с подтверждением FakeID под HD520;
    //Не актуально, в 10.11.5 всё починили
  • Переименовать в ACPI устройство HECI -> IMEI;
  • Установить 96 мб в биосе (или больше) под видеокарту;
  • Переименовать в ACPI видеокарту GFX0 -> IGPU для завода AGPM;
  • Выключить все “стандартные” клеверные инжекции (InjectIntel, ig-platform-id) во избежание конфликта.

Инжекция параметров видеокарты:

Снимок экрана 2016-07-15 в 22.42.31

Разберем ключи:

  • device-id = 1B190000 (0x191B)  – инжекция ID;
    Для десктопной ставим 12190000 (0х1912).
  • subsystem-id = 86800000 (8086 = Intel) – косметика;
  • subsystem-vendor-id = 6B100000 (106B = Apple) – косметика;
  • AAPL,ig-platform-id = 00001619 (0x19160000) – инжекция ig-platform-ID;
    • Также можно попробовать эти варианты: 00001219 (0x19120000) и 00001B19 (0x191b0000).
  • graphics-options = 0C000000 на всякий случай;
  • model = Intel HD Graphics 530 – косметика;
  • PciAddr = 00:02.00 (0x00020000 – стандартный PCI адрес встроенной Intel графики).

P.S. если возникают трудности, то подробнее про инжект через Arbitrary прочитаете в “Клевере цвета хаки”


Теперь на счет бинарных патчей ACPI:

OS X ругается в лог (в режиме отладки) на отсутствие девайса IMEI. Да, этот тот самый контроллер Intel ME по адресу 0x00160000
Если раньше его наличие в ACPI (до Haswell) было косметикой, а на Haswell+ название было не важно, то на Skylake платформе теперь это строгое требование.
Если вы не знаете как у вас называется устройство, MEI или HECI – впишите оба патча.

config.plist -> ACPI секция -> DSDT -> Patches

Снимок экрана 2016-07-16 в 5.45.25

  • HECI -> IMEI
    Find: 48454349 Replace: 494D4549
    Если ваше устройство называется HECI;
  • MEI -> IMEI
    Find: 4D45495F Replace: 494D4549
    Если ваше устройство называется MEI.
  • Если вы не знаете название своего устройства, впишите оба патча.

Также добавим полезные патчи:

  • GFX0 -> IGPU
    Find: 47465830 Replace: 49475055
    Для того, чтобы карта распознавалась системой именно как iGPU, и цеплялась к AGPM и подобным вещам.
  • HDAS -> HDEF
    Find: 48444153 Replace: 48444546
    На Skylake устройство HDEF стало называться HDAS, а так же получило новый физический адрес. Этот патч переименовывает обратно.
  • B0D3 -> HDAU
    Find: 42304433 Replace: 48444155
    Переименовывает устройство HDMI-звука в понятное системе. Необходим для запуска звука по HDMI.
    Не актуально, теперь HDMI работает аналогично Ivy.

Выделение памяти под видеокарту 96мб:

Если в биосе нельзя менять значение и выделено < 96мб, то получим панику: “minStolenSize <= fStolenMemorySize”

Можно применить как временное решение такой патч:

Name: AppleIntelSKLGraphicsFramebuffer
Find: 4139C4762A
Replace: 4139C4EB2A

Патч присутствует в конфигах, но всё же желательно изменить в биосе параметр.
Как это сделать описано здесь. Но все действия вы делаете на свой страх и риск, имейте ввиду.


FakePCIID:

Ликбез:
Начиная с поколения Haswell выяснилось, что кексты/OpenCL/GL библиотеки, да и вообще кто и что угодно могут перепроверять данные, такие как Vendor Id, Device Id, и прочее через PCI шину. Поэтому Rehabman написал кекст, перехватывающий такие запросы и делающий подмену на уровне системы. Оба кекста положите в инжект клеверу, если у вас иной ID.

Файлы в конце статьи.


Как итог всего вышесказанного:

Мобильные карты –  в итоге хотя бы LVDS (встроенный монитор ноутбука) точно запустится.
Десктопные карты – в итоге хотя бы один из портов DVI-D / HDMI запустится.

Пока что патч коннекторов в разработке. Увы, все выходы без него запустить не получится.
//Хорошие новости!
//Удалось получить корректно работающий патч для десктопной HD530, так что, вероятно, скоро методика патча будет изучена и опубликована!
🙂


HDMI-звук, и просто звук на Skylake

На Skylake устройство HDEF стало называться HDAS, и стало иметь другой адрес.

Патч выше уже переименовывают а HDAS в HDEF; а инжекция этих свойств указана в соответствующих местах нашего конфига (PciAddr).

Одного свойства в “onboard-1” в инжекте Intel HD недостаточно для HDMI звука. На платформах Ivy и ниже аналогичное свойство вешалось на HDEF, а для Haswell+ принято использовать B0D3 устройство по адресу 0x00030000. Но! на skylake применяется старый метод работы HDMI-звука, аналогично Ivy.

Дальше потребуется патч коннекторов и инжект еще одного свойства “onboard-1”.

Инжект свойств на HDEF устройство:

Разберем ключи для HDEF:

  1. layout-id = 03000000 (0x03 = 3) лайоут звука, который используете для AppleHDA (AppleALC)
    //Следовательно, инжекцию через параметр Devices/Audio/Inject=X следует отключить (поставить NO), во избежание двойного патча
  2. subsystem-id = <70720000> (0x7270=Subsystem: Intel Corporation Device) – косметика;
  3. subsystem-vendor-id = <86800000> (8086=Intel) – косметика;
  4. AAPL,slot-name = Built In – косметика;
  5. device_type = Audio Controller – косметика;
  6. hda-gfx = onboard-1 – свойство для HDMI звука;
  7. PciAddr:= 00:1F.03 (0x001F0003) – стандартный PCI адрес HDEF контроллера на Skylake.

Также, необходимо исправить фреймбуфер на предмет преобразования типа коннектора (DP->HDMI), но это пока не представляется возможным.

Дополнительная информация будет сразу после тестов на нескольких машинах.

Есть желание принять участие? Напишите нам!

Как только методика патча фреймбуфера будет разработана, информация появится здесь, и мы расскажем, как получить HDMI-звук.
А пока что, завод звука по HDMI возможен только при условии случайного совпадения HDMI-коннектора с HDMI-портом. Так что, может быть, у вас и без патча подхватится звук. Но мы этого не обещаем 😉


Правильная регулировка яркости:

Ликбез: Яркость любой Intel-графики управляется через специальный регистр. При наличии PNLF устройства в DSDT/SSDT, OS X подключается к нему, и, используя заготовленные настройки к монитору, вписывает туда значение текущей яркости, а для конечного пользователя появляется ползунок. Таким образом минимальный фикс для яркости это фиксы кловера: AddDTGP + AddPNLF (включены в конфиг)

При таком подходе возникают проблемы:

  1. Яркость изменяется не равномерно;
  2. Ползунок на максимум не дает полную яркость монитора, а после сна резко вспыхивает.

Первая проблема из-за того, что OS X не знает 16 ключевых уровней яркости конкретно нашего монитора, и использует стандартный линейный пресет. Вторая проблема связанна с ограничением максимального уровня яркости на системном уровне.

Решение проблем:

Фиксы кловера (AddDTGP + AddPNLF), и подкинуть в кловер IntelBacklight.kext от Rehabman’а.
Написан специально для Intel HD. Знает все особенности Sandy, Ivy, Haswell, Broadwell, и Skylake графики.


P.S. Совет немного в сторону, но относится к данной теме.

На Skylake-платформах обязателен патч кекста AppleAPIC:

Find: C1E8100FB6F0
Replace: BE1700000090
Name: AppleAPIC

Спасибо, Piker Alpha 🙂
Патч присутствует в конфигах. Также неактуально.


Файлы:

Прописанные секции из статьи в формате *.plist. Остальные настройки за вами.

Кексты:

  • IntelBacklight.kext – кекст на управление яркостью монитора ноутбуков;
  • FakePCIID.kext — сам кекст обманщик. Он всё равно не помешает, даже если у вас карта с нативным ID;
  • FakePCIID_Intel_HD_Graphics.kext.zip — плагин для Intel HD530. Для 520 не нужен.

Спасибо за прочтение!

Для вас старались:

  • Денис Skop — автор методов завода и собиратель материала;
  • Вадим Чумаков – исследование патчинга фреймбуфера и корректирующая информация;
  • Piker Alpha — исследование оригинальных данных;
  • Андрей Чернышов — оформление и дополнение.

Оригинальный пост на applelife.ru

44 комментария to “Skylake

  • Подскажите, если выполнить только часть из раздела “HDMI-звук, и просто звук на Skylake” без остальных настроек, поидее звук должен завестись? hd 530 звук по hdmi никак не заведу. Остальное (кроме выхода из сна) всё работает, без дополнительных правок в config.plist (есть только HDAS -> HDEF Find: 48444153 Replace: 48444546).

    • Андрей Чернышов
      1 год ago

      Нет, не выйдет. Информация не полная ровно до тех пор, пока не будет выведена систематика в патчинге.
      Но, если у вас 530 десктопная, могу завести, если свяжетесь со мной в skype или vk, правда, я дня на три исчезну, и не факт что буду на связи.

      • Андрей, привет напиши свою ссылку в вк , что бы по поводу завода видеокарты поговорить пожалуйста

  • Доброго времени суток. Можно ли к кому-то обратиться с заводом графики на 2-х мониторах с Intel HD 530?

    • Андрей Чернышов
      11 месяцев ago

      Извиняюсь за задержку, автоматически модераторы пропустили.
      Если ещё актуально, то свяжитесь со мной в вк. Ссылка в пункте “Команда” в футере сайта.

  • Полезная статья, спасибо. Подскажите, что за plist-редактор используется на скриншотах?

  • Здравствуйте. Имеется материнка Asus H170-Pro с процессором Intel Pentium G4400. По всей вероятности тут графика 0x1902 – HD Graphics 510 (Desktop GT1).
    После попытки поставить El Capitan 10.11.6 (на борту GTX-550TI), в системе наблюдаются фризы. Предполагаю, что это из-за GTX-550TI. Думаю переключить графику на Skylake. Есть ли в моем варианте возможность и смысл заводить систему до 100% ?
    Заранее спасибо.

  • Почему удалили комментарий? Всё задано по теме.

  • Басня такая. Сделал upgrade ПК – Asus H170M-PLUS, i5-6500, 2x8GB DDR4-2133. В результате получаю только черный экран. Ни одна флэшка не грузится. Правда в VirtualBox и в Windows, и в Linux – Yosemite, Maverics работают. Подскажите пожалуйста в какую сторону двигаться, чтобы исправить проблему.
    До upgrade – Asus B85M-G, i3-4130, 4x4GB DDR3-1600, Asus NVIDIA GeForce GTX 550 Ti, Yosemite 10.10.5.

    • как я понял это происходит после выбора раздела в кловере? как создавалась флешка? попробуйте отключить FixAirort. Напишите в наш чат https://osxpc.ru/chat/

  • Подскажите! Бьемся 4ю неделю. Как завести вывод графики через LVDS порт на HD530 Desktop? По hdmi работает, правда с артефактами, на lvds вывод идет с 5мб памятью. Параллельности мониторов нет (либо один порт, либо другой). Id platform используем 19120000. Мать Asus q87t, просто i7 6700, 32 gb ram.

    • Андрей Чернышов
      9 месяцев ago

      Либо платформа не та, либо фейкайди не работает, либо IMEI не работает как положено.

      • Hi, i am also trying to got the LVDS output to work on a Asus H110T motherboard with I7 6700T, ID is 19120000, i made patches to modify ports for LVDS instead of DP, for all the 3 active framebuffers, no changes. If an external DVI monitor is plugged to the HDMI port, it works, but LVDS is always shut at boot.
        I have QE, CI1536mb and no artifact (on 10.11). Do you know what we should try? I also succeed to activate the 4th framebuffer and set port to LVDS but never got anything on the LVDS display after boot.
        We are sure the LVDS port and display are working since it works perfect in Clover (but no QE-CI) and Ubuntu (here full capabilities). Also the EDID is generated by the motherbaord and set to the correct resolution (i have this option in the bios) the BIOS VRAM is set to 128mb.
        Thanks!

        • Александр Сташкевич
          8 месяцев ago

          Hi! Try this method – InjectEDID from Arbitrary, use AAPL00,override-no-connect for IGPU.
          Example:
          AAPL00,override-no-connect

          Answer send on gudvin.login@gmail.com
          Try! And ioregistryexplorer dump, darwindumper send me.

        • Андрей Чернышов
          8 месяцев ago

          Hi.
          Send IORegistryExplorer and DarwinDump for Alexander (gudvin.login@gmail.com), We will examine it and notify you.

      • this comment thing is a nightmare, i dont know why i cannot reply

      • this comment verification thing is a nightmare, i dont know why i cannot reply here, skype : hoel.bidault

      • switched to safari, works better, i can send you the dumps via skype if needed

  • Hi, thank very much for the replies guys!
    i have a try ASAP with InjectEDID from Arbitrary + AAPL00,override-no-connect and send you the dumps from IO registry and DarwinDump

  • Hi, thank you very much for the reply!
    i have a try ASAP with InjectEDID from Arbitrary + AAPL00,override-no-connect and send you the dumps from IO registry and DarwinDump

  • sorry, problems with the reply function. i grep the EDID from an ubuntu, xrandr doesnt give the HEX but it shows the LVDS as eDP-1

    ubuntu@ubuntu:~$ xrandr –prop
    Screen 0: minimum 320 x 200, current 3520 x 1200, maximum 8192 x 8192
    eDP-1 connected primary 1920×1080+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
    scaling mode: Full aspect
    supported: None, Full, Center, Full aspect
    Broadcast RGB: Automatic
    supported: Automatic, Full, Limited 16:235
    audio: auto
    supported: force-dvi, off, auto, on
    1920×1080 60.00*+ 59.93
    1680×1050 59.95 59.88
    1600×1024 60.17
    1400×1050 59.98
    1280×1024 60.02
    1440×900 59.89
    1280×960 60.00
    1360×768 59.80 59.96
    1152×864 60.00
    1024×768 60.04 60.00
    960×720 60.00
    928×696 60.05
    896×672 60.01
    960×600 60.00
    960×540 59.99
    800×600 60.00 60.32 56.25
    840×525 60.01 59.88
    800×512 60.17
    700×525 59.98
    640×512 60.02
    720×450 59.89
    640×480 60.00 59.94
    680×384 59.80 59.96
    576×432 60.06
    512×384 60.00
    400×300 60.32 56.34
    320×240 60.05

    • Андрей Чернышов
      8 месяцев ago

      Pretty, but I doesn’t seen IORegistry and DarwinDumper, seen only lsPCI and xrandr. We needed IOReg+DD first, xrandr+lspci is following action.
      Maybe, you have Telegram or Skype? That’s easy way for debugging.

      Have a good day!

  • Hi, sorry most of time i cannot send replies here for some reason the cpatcha refuses. The dumps have been sent to the email, it is heavy, i cannot send that here

  • Hi, sorry most of time i cannot send replies here for some reason the cpatcha refuses. The dumps have been sent to the email, it is heavy, i cannot send that here. Note that the resolutions shown in xandr are those provided by the bios, the panel doesn’t have EDID lines.

  • for some reasons it is almost impossible for me to reply here, the catch never works, i have a skype

  • Получилось – iMac17,1 Asus H170M-PLUS, i5-6500, 2x8GB DDR4-2133, El Capitan 10.11.6, Clover 3944

  • А через VGA нельзя подключить 530?

    • Андрей Чернышов
      7 месяцев ago

      Нет, от него яблоки отказались 7 лет назад. Разъёму почти 30 лет, о чём речь?

      • На мониторе только VGA, монитор большой (22″) менять дорого. А у старой NVIDIA GeForce 8600 GTS сильно кулер шумит, прямо выводит из себя.

  • Подскажите в чем проблема. Графика встроенная (intel hd 530), сделал все по инструкции. Загрузчик встает на этом моменте https://yadi.sk/i/CWuPcRH238Yb9D и больше ничего не происходит. Куда копать?

    • Кастомные ACPI таблицы используете? Cодержимое папки Kexts в Вашем загрузчике?

  • Может быть кто подскажет) Сделал все по инструкции, все завелось, заработало, НО слева в верхнем углу монитора появились черные полосы которые мигают, и иногда вокруг окон маленькие квадратики. Как убрать эти атефакты?

  • Огромное спасибо! Intel HD 520 завелась с полуоборота! 🙂

  • Подскажите можно ли завести intel HD 530 (GT2, 0x191200) на Pentium G4500? материнская плата Gigabyte GA-H110M S2V на борту два коннектора DVI и VGA. перепробывал все патчи с tonyMacOSX пробовал ваш config всегда черный экран.

    Возможно ли вообще завести видюху на этом процессоре или все таки виновата материнская плата?

    все настройки в биосе были выставленны правильно

    • Андрей Чернышов
      2 недели ago

      Нельзя на пне завести графику.

      • возможно узнать почему? Из за FakeCPUID ??? или из за того, что MacOS не поддерживает данный процессор?

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Лимит времени истёк. Пожалуйста, перезагрузите CAPTCHA.