Отдельная страница блога

 


Powered by Eremenko Igor

applelife.ru, завод встроенной графики Intel® HD Graphics 3000, 4000, 4400, 4600, 5000, 5500, 5600, 520, 530, 630

Intel® HD Graphics 3000, 4000, 4400, 4600, 5000, 5500, 5600, 520, 530, 630

Intel HD Graphics— видеокарты, встроенные в процессоры Intel. Не все процессоры оснащены встроенным графическим ядром, для уточнения можно пользоваться этой таблицей или обратиться непосредственно к характеристикам процессора на сайте Intel. Например, в графе встроенной графики у i7-4770k указана Intel® HD Graphics 4600, а у i7-4930k встроенной графики нет.

В macOS реализована достаточно приемлемая поддержка Intel® HD Graphics 2000 (Sandy Bridge) и новее. Для завода графики старшего поколения пользуйтесь соответствующими темами/инструкциями (Intel HD 1 Gen.GMA950GMA X3100). Внимание, не все видеокарты Intel могут быть успешно заведены в macOS (подробнее ниже).

Если вы используете дискретную видеокарту (AMD или NVIDIA), наличие и завод встроенной графики Intel будут всё равно полезны, так как она может быть задействована в оффлайн режиме (также известном как режим без коннекторов), например, для аппаратного кодирования и декодирования медиафайлов.

Общая идея в заводе видеокарт Intel:

  1. Исправить имена всех относящихся устройств (IGPU для самой видеокарты, HDAU для цифрового звука, IMEI для Intel Management Engine).
  2. При необходимости исправить device-id видеокарты и Intel Management Engine на совместимые.
  3. Указать корректный фреймбуфер (AAPL,ig-platform-id или AAPL,snb-platform-id) с описанием доступных выходов и прочей информации к видеокарте.
  4. Внести некоторые другие дополнительные свойства для устройств, имеющих отношение к видеокартам Intel.

На данный момент пункты 1 и 4 автоматизированы c WhateverGreen.kext за авторством @vit9696 и @lvs1974, который работает в OS X 10.8 и новее и значительно упрощает завод графики в macOS.

Общие рекомендации

  1. Выбрать в BIOS необходимое значение памяти для фреймбуфера: 32MB, 64MB, 96MB и т.д. (зависит от фрейма).
  2. Добавить в Clover в папку Other Lilu.kext и WhateverGreen.kext (далее по тексту этот кекст называется «Грин»).
  3. Удалить кексты: а-ля FakePCIID, IntelGraphicsFixup.kext, NvidiaGraphicsFixup.kext, CoreDisplayFixup.kext и Shiki.kext (если они использовались ранее).
  4. Выключить все инжекты графики в Clover (именно выключить, а не закомментировать).
  5. Снимок экрана 2018-04-22 в 2.01.47.
  6. Выключить фиксы DSDT Clover:
    — AddHDMI
    — FixDisplay
    — FixIntelGfx
    — AddIMEI
  7. Выключить UseIntelHDMI.
  8. Удалить бут аргумент: -disablegfxfirmware (если был).
  9. Полностью удалить Arbitrary, а также свойства для IGPU и HDMI звука из SSDT, DSDT (если вы их туда добавляли).
  10. Для инжекции свойств используйте Properties.
    Максимум, что может там быть прописано:
    — фрейм AAPL,ig-platform-id (AAPL,snb-platform-id)
    — device-id для IGPU (если необходима подмена)
    — device-id для IMEI (если необходима подмена)
    — свойства для патчей (если необходимы)
  11. Минимум — ничего. Например: подошёл фрейм по умолчанию или задан через аргумент загрузки (boot-arg), а подмена device-id не требуется.
    Значения параметров в Properties, записываются побайтно задом наперёд. Например: 0166000B в Properties должно быть записано как 0B006601.

<

p style=»text-align: left;»>Общий шаблон Properties для секций IGPU и IMEI, конкретнее описано ниже для каждого семейства процессоров по отдельности.
Внимание! Не оставляйте свойство c пустым значением, например если какое-то свойство не требуется, то удалите всю строку! Удалите строку PciRoot, если нет ни одного свойства.
шаблон.

<

p style=»text-align: left;»>9. Выбор фрейма. В первую очередь пробуйте те, которые указаны как рекомендуемые. Если с ними успех не достигнут, то методом перебора остальных. Кроме пустых фреймов (0 connectors), про них отдельная тема.
При подборе подходящего фрейма его также можно задать с помощью аргумента загрузки (boot-arg), тогда секция с фреймом в Properties игнорируется.
Например: igfxframe=0x0166000B
Внимание! В отличие от Properties используется нормальный порядок байт и префикс 0x.
— Если фрейм не задан явно каким-либо способом, то будет проинжектирован фрейм по умолчанию.
— Если фрейм не задан и в системе имеется дискретная видеокарта, то будет проинжектирован пустой фрейм.

<

p style=»text-align: left;»>Intel HD Graphics 2000/3000 (процессоры Sandy Bridge).
Поддерживаются, начиная с Mac OS X 10.7.x и заканчивая macOS 10.13.6, инструкция для 10.8.х — 10.13.6 (на более старых ОС см. «древние способы», на более новых ОС не поддерживаются, но если очень хочется). Поддержка Metal отсутствует.
Список фреймов snb-platform-id:

 

Рекомендуемые фреймы: десктоп 0x00030010 (по умолчанию); ноутбук 0x00010000 (по умолчанию).

HD2000 в macOS как полноценная видеокарта не работает, но можно (и нужно) использовать с пустым фреймом (0 connectors) для IQSV. С монитором может работать только HD3000.

<

p style=»text-align: left;»>Для Sandy обычно не требуется явное указание фрейма, при этом автоматически используется дефолтный фрейм по board-id. Укажите фрейм явно, если используете мак-модель с не Sandy процессором.
Снимок экрана 2018-07-19 в 21.33.23.
Следует учитывать, что для Sandy название фрейма snb-platform-id отличается от остальных встроек.

<

p style=»text-align: left;»>Для десктопов необходима подмена device-id для IGPU:
Снимок экрана 2018-07-19 в 21.42.45.
(для пустого фрейма другое значение device-id для IGPU, подробнее в отдельной теме)

<

p style=»text-align: left;»>Внимание! Если используется материнская плата с чипсетом 7-й серии, то необходима подмена device-id для IMEI:
Снимок экрана 2018-07-19 в 21.56.15.

Intel HD Graphics 2500/4000 (процессоры Ivy Bridge).
Поддерживаются, начиная с OS X 10.8.x
Список фреймов ig-platform-id:

0x01660000 (desktop, 4 connectors, 24 MB)
0x01620006 (desktop, 0 connectors, no fbmem, 0 bytes)
0x01620007 (desktop, 0 connectors, no fbmem, 0 bytes)
0x01620005 (desktop, 3 connectors, 16 MB)
0x01660001 (mobile, 4 connectors, 24 MB)
0x01660002 (mobile, 1 connectors, 24 MB)
0x01660008 (mobile, 3 connectors, 16 MB)
0x01660009 (mobile, 3 connectors, 16 MB)
0x01660003 (mobile, 4 connectors, 16 MB)
0x01660004 (mobile, 1 connectors, 16 MB)
0x0166000A (desktop, 3 connectors, 16 MB)
0x0166000B (desktop, 3 connectors, 16 MB)

Рекомендуемые фреймы: десктоп 0x0166000A (по умолчанию), 0x01620005; ноутбук 0x01660003 (по умолчанию), 0x01660009, 0x01660004.

HD2500 в macOS как полноценная видеокарта не работает, но можно (и нужно) использовать с пустым фреймом (0 connectors) для IQSV. С монитором может работать только HD4000.

Внимание! Если используется материнская плата с чипсетом 6-й серии, то необходима подмена device-id для IMEI:
Снимок экрана 2018-07-19 в 22.02.16.

Intel HD Graphics 4200-5200 (процессоры Haswell).
Поддерживаются, начиная с OS X 10.9.x
Список фреймов ig-platform-id:
0x0C060000 (desktop, 3 connectors, 209 MB)
0x0C160000 (desktop, 3 connectors, 209 MB)
0x0C260000 (desktop, 3 connectors, 209 MB)
0x04060000 (desktop, 3 connectors, 209 MB)
0x04160000 (desktop, 3 connectors, 209 MB)
0x04260000 (desktop, 3 connectors, 209 MB)
0x0D260000 (desktop, 3 connectors, 209 MB)
0x0A160000 (desktop, 3 connectors, 209 MB)
0x0A260000 (desktop, 3 connectors, 209 MB)
0x0A260005 (mobile, 3 connectors, 52 MB)
0x0A260006 (mobile, 3 connectors, 52 MB)
0x0A2E0008 (mobile, 3 connectors, 99 MB)
0x0A16000C (mobile, 3 connectors, 99 MB)
0x0D260007 (mobile, 4 connectors, 99 MB)
0x0D220003 (desktop, 3 connectors, 52 MB)
0x0A2E000A (desktop, 3 connectors, 52 MB)
0x0A26000A (desktop, 3 connectors, 52 MB)
0x0A2E000D (desktop, 2 connectors, 131 MB)
0x0A26000D (desktop, 2 connectors, 131 MB)
0x04120004 (desktop, 0 connectors, no fbmem, 1 MB)
0x0412000B (desktop, 0 connectors, no fbmem, 1 MB)
0x0D260009 (mobile, 1 connectors, 99 MB)
0x0D26000E (mobile, 4 connectors, 131 MB)
0x0D26000F (mobile, 1 connectors, 131 MB)

Рекомендуемые фреймы: десктоп 0x0D220003 (по умолчанию); ноутбук 0x0A160000 (по умолчанию), 0x0A260005 (рекомендуется).

Для десктопной HD4400 и всех без исключения мобильных сделайте подмену device-id для IGPU.
Снимок экрана 2018-07-19 в 22.07.40.

Intel HD Graphics 5300-6300 (процессоры Broadwell).
Поддерживаются, начиная с OS X 10.10.2
Список фреймов ig-platform-id:
0x16060000 (desktop, 3 connectors, 32 MB)
0x160E0000 (desktop, 3 connectors, 32 MB)
0x16160000 (desktop, 3 connectors, 32 MB)
0x161E0000 (desktop, 3 connectors, 32 MB)
0x16260000 (desktop, 3 connectors, 32 MB)
0x162B0000 (desktop, 3 connectors, 32 MB)
0x16220000 (desktop, 3 connectors, 32 MB)
0x160E0001 (mobile, 3 connectors, 60 MB)
0x161E0001 (mobile, 3 connectors, 60 MB)
0x16060002 (mobile, 3 connectors, 56 MB)
0x16160002 (mobile, 3 connectors, 56 MB)
0x16260002 (mobile, 3 connectors, 56 MB)
0x16220002 (mobile, 3 connectors, 56 MB)
0x162B0002 (mobile, 3 connectors, 56 MB)
0x16120003 (mobile, 4 connectors, 56 MB)
0x162B0004 (desktop, 3 connectors, 56 MB)
0x16260004 (desktop, 3 connectors, 56 MB)
0x16220007 (desktop, 3 connectors, 77 MB)
0x16260005 (mobile, 3 connectors, 56 MB)
0x16260006 (mobile, 3 connectors, 56 MB)
0x162B0008 (desktop, 2 connectors, 69 MB)
0x16260008 (desktop, 2 connectors, 69 MB)

Рекомендуемые фреймы: десктоп 0x16220007 (по умолчанию); ноутбук 0x16260006 (по умолчанию).

Intel HD Graphics 510-580 (процессоры Skylake).
Поддерживаются, начиная с OS X 10.11.4
Список фреймов ig-platform-id:
0x191E0000 (mobile, 3 connectors, 56 MB)
0x19160000 (mobile, 3 connectors, 56 MB)
0x19260000 (mobile, 3 connectors, 56 MB)
0x19270000 (mobile, 3 connectors, 56 MB)
0x191B0000 (mobile, 3 connectors, 56 MB)
0x193B0000 (mobile, 3 connectors, 56 MB)
0x19120000 (mobile, 3 connectors, 56 MB)
0x19020001 (desktop, 0 connectors, no fbmem, 1 MB)
0x19170001 (desktop, 0 connectors, no fbmem, 1 MB)
0x19120001 (desktop, 0 connectors, no fbmem, 1 MB)
0x19320001 (desktop, 0 connectors, no fbmem, 1 MB)
0x19160002 (mobile, 3 connectors, no fbmem, 58 MB)
0x19260002 (mobile, 3 connectors, no fbmem, 58 MB)
0x191E0003 (mobile, 3 connectors, no fbmem, 41 MB)
0x19260004 (mobile, 3 connectors, no fbmem, 35 MB)
0x19270004 (mobile, 3 connectors, no fbmem, 58 MB)
0x193B0005 (mobile, 4 connectors, no fbmem, 35 MB)
0x191B0006 (mobile, 1 connectors, no fbmem, 39 MB)
0x19260007 (mobile, 3 connectors, no fbmem, 35 MB)

Рекомендуемые фреймы: десктоп 0x19120000 (по умолчанию); ноутбук 0x19160000 (по умолчанию).

Intel HD Graphics 610-650 (процессоры Kaby Lake).
Поддерживаются, начиная с macOS 10.12.6
Список фреймов ig-platform-id:
0x591E0000 (mobile, 3 connectors, no fbmem, 35 MB)
0x59160000 (mobile, 3 connectors, no fbmem, 35 MB)
0x59230000 (desktop, 3 connectors, no fbmem, 39 MB)
0x59260000 (desktop, 3 connectors, no fbmem, 39 MB)
0x59270000 (desktop, 3 connectors, no fbmem, 39 MB)
0x59270009 (mobile, 3 connectors, no fbmem, 39 MB)
0x59120000 (desktop, 3 connectors, no fbmem, 39 MB)
0x591B0000 (mobile, 3 connectors, 39 MB)
0x591E0001 (mobile, 3 connectors, no fbmem, 39 MB)
0x59180002 (mobile, 0 connectors, no fbmem, 1 MB)
0x59120003 (mobile, 0 connectors, no fbmem, 1 MB)
0x59260007 (desktop, 3 connectors, 79 MB)
0x59270004 (mobile, 3 connectors, no fbmem, 58 MB)
0x59260002 (mobile, 3 connectors, no fbmem, 58 MB)
0x591B0006 (mobile, 1 connectors, no fbmem, 39 MB)

Рекомендуемые фреймы: десктоп 0x59160000 (по умолчанию); ноутбук 0x591B0000 (по умолчанию).

Intel UHD Graphics 630 (процессоры Coffee Lake).
Поддерживаются, начиная с macOS 10.14 dev. beta 4
Список фреймов ig-platform-id:
0x3EA50009 (mobile, 3 connectors, no fbmem, 58 MB)
0x3E920009 (mobile, 3 connectors, no fbmem, 58 MB)
0x3E9B0009 (mobile, 3 connectors, no fbmem, 58 MB)
0x3EA50000 (mobile, 3 connectors, no fbmem, 58 MB)
0x3E920000 (mobile, 3 connectors, no fbmem, 58 MB)
0x3E000000 (mobile, 3 connectors, no fbmem, 58 MB)
0x3E9B0000 (mobile, 3 connectors, no fbmem, 58 MB)
0x3EA50004 (mobile, 3 connectors, no fbmem, 58 MB)
0x3E9B0006 (mobile, 1 connectors, no fbmem, 39 MB)
0x3E9B0007 (desktop, 3 connectors, no fbmem, 58 MB)
0x3E920003 (desktop, 0 connectors, no fbmem, 1 MB)
0x3E910003 (desktop, 0 connectors, no fbmem, 1 MB)

Рекомендуемые фреймы: десктоп 0x3EA50000 (по умолчанию), 0x3E9B0007 (рекомендуется) ; ноутбук 0x3EA50009 (по умолчанию).

Также существует специальная версия macOS High Sierra 10.13.6 (17G2208), в которой присутствует нативная поддержка Coffee Lake графики: ссылка1ссылка2. В данной версии отсутствуют пустые фреймбуферы (0 connectors). Завод аналогичен 10.14. Для запуска пустых фреймов (0 connectors), на этой специальной версии, требуется произвести замену кекста AppleIntelCFLGraphicsFramebuffer.kext на аналогичный из 10.14DB4 или новее. Кекст из 10.14DB6 во вложении к посту.

По прежнему имеется возможность завода UHD630 в macOS 10.13 с помощью подмены device-id под HD630 Kaby Lake.
Снимок экрана 2018-07-19 в 22.13.10.
Используем фрейм как для HD630 Kaby Lake (фрейм указать явно!)

Регулировка яркости дисплея на ноутбуках.
1. Включите в Clover фиксы DSDT: AddDTGP и AddPNLF.
2. Включите SetIntelMaxBacklight (для исправления подсветки). Конкретное значение задавать не нужно — проинжектируется автоматически по установленному процессору.
Снимок экрана 2018-04-22 в 2.10.24.

Цифровой звук (HDMI/DVI/DP).
Для завода цифрового звука необходимо внести необходимые свойства и обычно пропатчить коннекторы.
Для завода звука вообще и для HDMI в частности используйте Грин совместно с AppleALC.kext (подробнее по ссылке).
На 10.10.5 и новее, Грин автоматически меняет тип коннекторов DP (00040000) на HDMI (00080000), при условии, если не используются кастомные патчи.
Физически подключение может быть любое (HDMI/DVI/DP), но чтобы работал цифровой звук, тип коннектора должен быть именно HDMI.

Кастомные патчи фреймов и коннекторов с помощью Грина.
В 10.14 для SKL и новее невозможно получить сведения о фреймах и коннекторах непосредственно из бинарника кекста: необходимо сдампить бинарник из памяти. Бинарные патчи фреймов в кловере не возможны. Существует возможность делать семантические(рекомендуется) и бинарные патчи с помощью Грина. На более старших осях и старших поколениях встроек — это тоже работает. По умолчанию патчи действуют на текущий фрейм.
Патчи прописываются в Properties для IGPU.

Пример бинарного патча с помощью Грина
Снимок экрана 2018-07-20 в 0.10.08.

Пример семантического патча коннекторов (connector-type=00080000 для коннекторов 1, 2 и 3).
Снимок экрана 2018-07-20 в 0.13.19.

Пример семантического патча фреймбуфера (stolenmem=19MB, fbmem=9MB).
Снимок экрана 2018-08-04 в 1.14.03.

Какие еще семантические патчи возможны и другие подробности про патчинг с помощью Грина, можно узнать из мануала headkaze.

Получить подробные сведенья о фреймах и коннекторах можно в 010 Editor с помощью скрипта IntelFramebuffer.bt.
В 10.14 для SKL и новее, получить дамп пригодный для скрипта, можно с помощью дебаг версии Грина, загрузившись с бут-аргументами -wegdbg и -igfxdump. Дамп будет сохранен в корень системного раздела.

Поддержка VGA.
В большинстве случаев в Intel Skylake и новее работает по умолчанию.

Для Ivy Bridge и возможно других моделей возможны варианты с патчем коннекторов на следующие:
06020000 02000000 30000000 // Вариант 1
06020000 01000000 30000000 // Вариант 2
На OS X 10.8.2 и новее, завести vga на Ivy Bridge невозможно.

Горячее подключение VGA обычно не функционирует. Если ничего не помогло, то известных решений для данной конфигурации нет.

Известные проблемы.
Совместимость:
— Урезанные карты: HD2000, HD2500 могут использоваться только для IQSV (в оригинальных Mac они используются также только для этого), решений нет.
— Графика Intel Pentium/Celeron не запускается, решений нет.
— Инициализация HDMI дисплея в чёрный экран на Haswell и выше, решается в Грин или macOS 10.13.4.
— Поддержка 2 и более мониторов на Intel Skylake и новее не функционирует, решений нет.
— Мониторы не просыпаются на десктопах с Intel Skylake и новее, может помочь подключение через DisplayPort.

Глюки и настройки:
— На HD3000 периодически могут появляться артифкаты интерфейса. Так как объём используемой видеопамяти в Sandy зависит от объёма оперативной, 8 ГБ — необходимый минимум, гарантированных решений нет. Также рекомендуется установка Max TOLUD в Dynamicв BIOS. Еще возможно кому-то поможет этот патч.
— «8 яблок» и пропадание фонового рисунка File Vault 2 при смене UEFI GOP драйвера на macOS драйвер (из-за несовместимых EDID), частично решается в Грин.
— Фризы PAVP (зависания при просмотре видео, нерабочий QuickLook, etc.), решается в Грин ценой отключения поддержки HDCP.
— Отсутствие настройки в BIOS для изменения объёма памяти для фреймбуфера, решается с помощью семантических патчей framebuffer-stolenmem и framebuffer-fbmem, модификацией BIOS или ручной прописью опций в UEFI Shell. Разъяснение

Производительность и медиаконтент:
— Совместимость с дискреткой для неподдерживаемых конфигураций (NVIDIA+SNB/SKL/KBL, AMD+IVY), для некоторых приложений решается с помощью Грин, начиная с macOS 10.13.4 проблема отсутствует.
— Просмотр защищённого контента iTunes решается с помощью Грин, начиная с 10.12 на Ivy Bridge и выше без дискретки просмотр HD фильмов в iTunes невозможен.