Quantcast
Channel: Рубрика Хакинтош в блоге TagMac
Viewing all 52 articles
Browse latest View live

Победил DisplayPort @ HD630 на хакинтоше

$
0
0

Я изначально подбирал материнскую плату со встроенным DisplayPort, поскольку где-то вычитал, что HDMI/DVI в хакинтоше не поддерживают разрешения выше Full HD. Монитор у меня как раз такой, но если он накроется, то на замену буду брать что-то побольше размером и разрешением.

Ну так вот, до прошлой пятницы монитор был подключен кабелем DVI и отлично работал. Заказанный одновременно со всеми запчастями кабель DisplayPort ехал на месяц с лишним дольше, покупать здесь смысла не было — и так работает же.

Получил, подключил, переключил вход у монитора на DP — тишина, сигнала нет. Перезагрузился — BIOS отлично, Clover видно, загрузка на 2/3 проходит, затем экран гаснет и монитор теряет сигнал. Система отлично грузится «в темную», можно переключиться обратно на DVI и все будет здорово. Закусило, стал пробовать и разбираться.

Драйвер com.apple.driver.AppleIntelSKLGraphicsFramebuffer грузился нормально, ioRegistryExplorer показывал 3 буфера для устройства IGPU@2, которое до переименования звалось GFX0. Монитор числился за AppleIntelFramebuffer@2, это был DVI. Я думал, что AppleIntelFramebuffer@1 — это мой DP и он почему-то капризничает. Взял паузу на почитать.

IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/IGPU@2/AppleIntelFramebuffer@3

Ирония в том, что этот драйвер по-умолчанию считает все порты DP, у большинства проблемы как раз с HDMI и DVI, которые гораздо более популярны. Для решения используют патчи, которые меняют свойство connector-type (для справки: DVI <00 02 00 00> HDMI <00 08 00 00> DP <00 04 00 00>) для соответствующих портов. Также есть патч, который добавляет «четвертый монитор» встроенному Intel Graphics HD530 (и по наследству HD630).

Я попробовал — сходу не получилось, драйвер перестал грузиться, я получил «аварийную» графику по-умолчанию, которая кое-как работала, периодически пугая глюками и артефактами. Однако, теперь работали оба провода. По результатам хаотичного тыканья в кнопки вдумчивого анализа родилась рабочая конфигурация.

TL;DR — Intel HD Graphics HD630 @ Gigabyte GA-H270M-DS3H

Моя рабочая конфигурация, комментарии для config.plist и расширения.

  1. config.plist/ACPI переименовать GFX0 в IGPU
  2. config.plist/Devices IntelGFX = 0x19168086 + патч IntelGFX (AAPL,GfxYTile)
  3. config.plist/Graphics InjectIntel=true + ig-platform-id = 0x19120000 (не было никакого)
  4. config.plist/KextsToPatch здесь два патча для AppleIntelSKLGraphicsFramebuffer, один увеличивает число мониторов до 4, другой меняет тип коннектора для DVI
  5. FakePCIID.kext+FakePCIID_Intel_HD_Graphics.kext лежат в /L/E

Жирным выделил то, что изменилось по сравнению с предыдущим состоянием (рабочий DVI, нерабочий DP). Фэйки из п.5, как я понял, маскируют Kaby Lake под Skylake для драйверов, в частности HD630 под HD530. В итоге DP завелся на AppleIntelFramebuffer@3, которого до патча SKL вообще не было. Сейчас у меня как бы 2 монитора, в настройках включен mirror, можно переключать с DVI на DP и обратно — красота.

DisplayPort @ HD630

Что любопытно, настройки для мониторов отличаются. На DisplayPort подключении можно управлять поворотом, регулировать underscan неизвестно зачем. У DVI параметров меньше, так что какой-то зримой разницы я добился, хотя бы в бесполезных ползунках и галочках.

Остался вопрос — на каких началах DVI работал до этого?


NVIDIA Pascal для хакинтоша

$
0
0

Нормально я так выпал из тусовки, уже больше недели народ радуется по поводу выпуска драйверов для NVIDIA 10X0 серии графических ускорителей.

NVIDIA Pascal web drives macos

Вся эта ботва носит статус бета-версии, чтобы избавиться от претензий по поводу глюков, но вполне сносно работает на хакинтошах, судя по отзывам. На настоящих Мак Про тоже работает, говорят.

Ссылку давать смысла нет, единого гнезда для этого дела я не нашел, а на индивидуальную версию ссылаться бессмысленно, быстро все устареет. Гуглить Nvidia Web Driver и ОК.

Короткая пробежка по онлайн-магазинам показала следующее — самую скромную карточку 1050 можно купить где-то за $100-120. Суровую 1080 — не выяснял, думаю что-нибудь в районе $500-600.

Виват NVIDIA, заморочились все-таки.

Тривиальное обновление macOS 10.12.5 на хакинтоше

$
0
0

Обновление macOS 10.12.5 вышло с неделю назад, но App Store до сего дня мне ничего не предлагал, я даже беспокоиться стал. Но не стал суетиться, потратил время на изучение вопроса и подготовку.

В новой версии изменились драйверы звука и графики, поэтому кое-какие телодвижения предпринять потребовалось. Напомню, у меня сейчас система на Kaby Lake, GA-H270M-DS3H, встроенная графика Intel HD630, аудио Realtek ALC887, сеть тоже Realtek, остальное отдельного упоминания не достойно, поскольку работает штатно.

Заморачиваюсь на счет графики, ибо важно

  1. Нужно скачать и установить патчер кекстов и процессов lilu.kext, я скопировал его в раздел EFI — /Volumes/EFI/EFI/CLOVER/kexts/Other
  2. Далее понадобится плужок для починки графики, его я поместил туда же.

Звук, чтобы два раза не вставать

  1. Скачал свежую версию AppleALC, которая для работы требует lilu. Установил туда же, заменив старую версию.

Все это я проделал еще до установки обновления, на 10.2.4, перезагрузил компьютер, убедился, что все работает. Никакие «настроечные таблицы» курочить не пришлось.

macoS Sierra 10.12.5 на хакинтоше

Устанавливал через App Store, беззаботно, легко и скучно.

В планах на ближайшее время победить-таки bluetooth, поскольку мой античный «свисток» не тянет музыку по воздуху. Борьба с BCM94360CD продолжается, заказал новую карточку, у имеющейся, как оказалось, bluetooth составляющая полностью нерабочая.

Bluetooth/Wi-Fi на хакинтоше — Broadcom BCM94360CD PCIe x1

$
0
0

Фух, победил беспроводные дела на своем хакинтоше. Первый комплект Broadcom BCM94360CD от Аймака + адаптер PCIe x1 оказался рабочим на 2/3 — адаптер работал, Wi-Fi в карточке тоже, а Bluetooth нет. Я подумал, что дело в адаптере, заказал новый — та же картина. Теперь заказал уже саму карточку, на этот раз все сработало отлично.

Broadcom BCM94360CD PCIe x1 на хакинтоше

Никакие дополнительные телодвижения не требуются, драйвера родные, надо только разобраться с USB и убедиться, что работает голова на материнской плате, к которой вы подключаете косичку  от адаптера.

Трекпад подключился, колонка тоже — орет громче, чем по проводу, любопытно. Больше ничего не проверял, но  Handoff Supported: Yes и Bluetooth Low Energy Supported: Yes радуют глаз. К Wi-Fi и раньше претензий не было, цепляется на 200+ мегабит.

На эту ерунду я потратил прилично времени и несколько больше денег, чем мог бы. Первый набор я покупал на eBay, деньги мне частично вернули, но их не хватило даже на новый адаптер, ненужный, как выяснилось, а потом еще пришлось брать новую карточку. Итого, вместо $50 потрачено $80. Карточку брал на Али, продавца сразу предупредил, что работать должен Wi-Fi и Bluetooth, иначе я буду истерить. Выбирать нужно внимательно, поскольку в продаже встречаются битые Wi-Fi-only карты, они дешевле, в описании явно говорится об их неполноценности, но могут и умолчать.

 

 

Обновил Kaby Lake хакинтош до macOS Sierra 10.12.6

$
0
0

Главная новость — поддержка процессоров Intel Kaby Lake и встроенной графики HD Graphics 630, поэтому можно (нужно?) сделать несколько вещей.

macOS Sierra 10.12.6 (16G29) на хакинтоше

  1. Убираем FakeCPUID, который маскировал процессор под Skylake. В приложении Clover Configurator это во вкладке Kernel and Kext Patches.
  2. В ветке Devices меняем IntelGFX на 0x59128086, там же убираем добавление свойств для IntelGFX (GfxYTile).
  3. Graphics — меняем значение ig-platform-id на 0x59120000 (было 0x191200000).
  4. Обновляем 2 kext: lilu и IntelGraphicsFixup, насчет необходимости второго уверенности нет, но я его пока оставил. Лежат оба в /EFI/CLOVER/kexts/other

Все это я сделал до обновления, устанавливал через AppStore, перезагрузился, затем обновляльщик еще раз отправил в ребут, после чего хакинтош нормально стартовал.

Intel HD 630 на хакинтоше

Со звуком ничего не делал, AppleALC.kext оставил прежний — работает, больше от него ничего не требуется.

Никаких изменений в системной информации я не заметил, но и не особо искал.

Остались вопросы:

  1. Нужен ли теперь FakePCIID_Intel_HD_Graphics.kext?
  2. Тот же вопрос к FakePCIID.kext
  3. Можно ли убрать патчи для AppleIntelSKLGraphicsFramebuffer?

Сейчас недосуг разбираться, от добра добра не ищут. Скорее всего оставлю выяснение этих вопросов до High Sierra, там и новые какие-нибудь возникнут.

Для справки — мой хакинтош, железная его часть.

 

High Sierra без APFS на хакинтоше

$
0
0

Обновил хакинтош до релиза macOS High Sierra 10.13, пара отличий от похожего процесса на MacBook Pro.

Во-первых, я не стал конвертировать основной диск в APFS, оставил HFS+, причину внятно назвать не могу, если коротко — очкую я что-то. Да, после установки беты High Sierra на MBP у меня обнаружилось несколько гигабайт «бесплатного» свободного пространства на SSD, но там я и не раздумывал особо. А тут хакинтош, какие могут вылезти уши неизвестно, а разбираться пока некогда.

macOS 10.13 на хакинтоше

Итак, обновление 10.12 до 10.13 выглядело так:

  1. Скачал установщик из Mac App Store.
  2. Скачал и обновил Clover. На всякий случай закинул драйвер APFS в /EFI/CLOVER/drivers64UEFI/, на будущее.
  3. Заменил Lilu, AppleALC на свежие версии в /EFI/CLOVER/kexts/other.
  4. Запустил установщик с параметром, отключающим конвертацию файловой системы

    /Applications/Install\ macOS\ High\ Sierra.app/Contents/Resources/startosinstall —converttoapfs NO

  5. После перезагрузки нужно выбирать раздел Boot macOS Install, я это делал раза 2-3, после чего этот раздел из списка пропадает и можно загружаться нормально.

Всё работало сразу после первой загрузки — графика, сеть, bluetooth, звук. Пришлось ввести пароль Apple ID, на этом и всё.

Была проблема со звуком — он был, но грязный, в наушниках были какие-то наводки-помехи. Немного поплясал с бубном, почитал, но ничего толкового не нашел. В итоге поменял layout-id с 1 на 7 (config.plist/devices/audio) и переткнул колонку из черного в оранжевый разъем на материнской плате. Наушники по-прежнему во фронтальном разъеме, шум пропал — мистика. Никого не призываю повторять, это просто совпадение, похоже.

Еще один глюк выглядел интереснее — после установки сели батарейки в трекпаде и он отвалился. Я сменил батарейки, включил, он заработал, но странно, как до логина — тап вместо клика не работал, сенс не мой, в системных настройках трекпада вообще не было и bluetooth в списке устройств его не показывал. После перезагрузки работает нормально, пробовал отключать-подключать, все в порядке, как обычно.

Впечатления от хакинтоша немного освежились, опять легкая прострация от всех этих патчей, фиксов, непонятных параметров и бессмысленных действий. Уверен, я мог бы убрать с пяток кекстов и галок в конфиге и ничего бы особо не изменилось, но выяснить какие именно и, главное, почему — жизни не хватит.

Обновление macOS 10.13.5

$
0
0

Обновил хакинтош, не без проблем, но вроде бы всё разрешилось с помощью привычных манипуляций.

High Sierra 10.13.5

Установка обычная, из Mac App Store, перезагрузился по ходу дела раза 2, если не 3, взлетел нормально, но это на первый взгляд.

Глюки, не без любопытных

  1. Видео на YouTube в Safari проигрывалось с удесятеренной скоростью. Любое, то есть все. Нет, настройки плеера я не трогал. В Chrome вкладка с видео вообще подвисала до неотзывчивости.
  2. Звук глючил. Не могу внятно объяснить. Затыкался, запинался, но не всегда. Странно как-то.
  3. В информации о системе во вкладке графика/мониторы наличествовали 2 Intel HD Graphics 630, просто две копии одного и того же.

Что сделал

  1. Обновил Clover (до 4509).
  2. Обновил AppleALC.kext, IntelGraphicsFixup.kext в EFI/CLOVER/kexts/Other.
  3. Поправил config.plist. Новые версии кекстов сами меняют HECI на IMEI, HDAS на HDEF и GFX0 на IGPU, патчи в конфиге не требуются.
  4. Там же отключил -disablegfxfirmware по той же причине.
  5. Заменил apfs.efi в drivers64UEFI на всякий случай, я не пользуюсь APFS.

Видео проверил, звук проверил (свежий альбом Morcheeba вышел, кому интересно) — всё нормально.

Для справки — мой хакинтош и текущее состояние /EFI/CLOVER.

Сообщения в iCloud

Единственная озвученная заранее фича, выходящая за пределы обычных «стало более лучше и безопаснее» называется iCloud Messages. Многострадальная такая вещь, её то добавляют, то убирают, сейчас, очевидно, пришла пора.

iCloud сооб

Искать заветный тумблер на macOS нужно в настройках приложения Сообщения, там в учетных записях. В ожидаемом и привычном по iOS списке возможностей iCloud в системных настройках этого нет.

Я вообще не понял фишки. Сообщения и раньше приходили на все устройства. Теперь они сожрали 700+ Мб от хранилища iCloud, что я получил взамен — непонятно. Надо будет осмыслить.

Обновил хакинтош до macOS 10.14 Mojave

$
0
0

Дотянул с обновлением аж до релиза. По отзывам ничего неприятного не ожидалось, но я решил попутно поставить новый Clover и навести порядок в расширениях, за что и поплатился.

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

Затем пришлось повоевать с config.plist в связи с заменой Shiki и много чего ещё на WhateverGreen.kext, об этом ниже.

Обновлено перед установкой Mojave

Clover v2.4k r4674

Ахтунг! Проверяйте настройки при установке. Я не отметил новые AptioInputFix-64.efi и AptioMemoryFix-64.efi, при этом старый OsxAptioFix2Drv-64.efi установщик удалил. Результат — система не загружается, черный экран, за которым надпись end randomseed и на этом всё.

clover-r4674

Также нужно не забыть отметить ApfsDriverLoader-64.efi, после чего можно будет удалить apfs.kext

Lilu 1.2.7 — новая версия

AppleALC 1.3.2 — новая версия

Clover configurator 5.2.0.1 — старый не желал монтировать EFI, у меня был какой-то 4.x версии.

Установлено

WhateverGreen kext 1.2.3

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

ig-platform-id

У меня по-прежнему встроенная графика HD630, настраивал не особо задумываясь, инструкция обширная, но для конкретного сетапа довольно общая. В итоге решилось прописыванием AAPL,ig-platform-id = 00001259, без чего я наблюдал черный экран. Циферки характерны для моей материнки, значение по-умолчанию из инструкции к WhateverGreen не подошли. В итоге в High Sierra всё пришло в норму.

whatevergreen.kext

Удалены FakePCIID_Intel_HD_Graphics.kext (/S/L/E) IntelGraphicsFixup.kext Shiki.kext (EFI)

Обновление

Вышеописанное к Mojave отношения не имеет, понятно. Починил High Sierra, проверил, всё работает, можно приступать.

Скачал Mojave из Mac App Store, запустил установку, подождал, перезагрузил. Тут снова неожиданность, в Mojave перестал работать DisplayPort, поэтому за установкой я следил по морганию светодиода HDD. Перегружался он раза 3 в процессе, заняло всё с час приблизительно. Тут нужно отметить, что в High Sierra у меня была файловая система HFS+, то есть где-то на этом этапе прошла конвертация в APFS. Люди в интернетах пишут, что прежний трюк не проходит, установить Mojave без APFS нельзя.

Процесс завершен, сигнал по DP не появился, пришлось искать кабель DVI, завелся. В мониторе нет HDMI, поэтому его проверить не могу. Пока это единственный новый глюк, который предстоит устранить. Решаемо, вроде, но процесс обещает быть нудным.

Mojave на хакинтоше

Впечатления о самой Mojave пока не скопились, но пара есть. Ночной режим (темное оформление) не осилил, непривычно. Включил, побаловался, выключил. Динамический фон рабочего стола забавная фишка, но я его крайне редко вижу, да и вообще баловство это. Остальные нововведения буду осваивать постепенно, есть любопытные — скришотилка новая, быстрые действия в Файндере и т.п.

Оба мои древних ноута (2010 15″ и 17″) не поддерживают macOS 10.14 официально. Неофициально можно завести, но число глюков и артефактов превышает таковое на хакинтоше, так что увольте.

UPD: Решение проблемы с черным экраном DisplayPort


Апгрейд хакинтоша без отвертки

$
0
0

Продолжаю косметический ремонт после установки Mojave, поколдовал «по совету друзей» с разделом SMBIOS в Clover configurator. Был iMac 16.2, стал iMac 18.1. Это принесло немного проблем и не дало нужного результата.

SMBIOSmac 18.1

Нужный результат — работа монитора по DisplayPort. Не случилось, по-прежнему чёрный экран. BIOS, Clover, яблоко, дальше блэкаут. Решение здесь

Новая проблема — отвалился внешний диск USB3. IORegistry explorer показывал хренову тучу портов (столько у меня точно нет), из них 14 штук HSxx (USB2) и только один SS01 (USB3), дальше срабатывал известный лимит в 15 портов. Вылечилось патчем com.apple.driver.usb.AppleUSBXHCI

com.apple.driver.usb.AppleUSBXHCI patch

Теперь у меня 14 портов USB 2.0 и ещё 8 USB 3.0, внешний диск заработал.

Что и как делал

  1. SMBIOS, руководство давнее и местами устарело, но в целом делал по нему. [Guide] How to configure your system’s SMBIOS correctly?
  2. Замена ig-platform-id на 0x591B0000, предложенный Intel FB-Patcher после загрузки в него дампа, сгенерированного WhateverGreen с ключиками -wegdbg -igfxdump. Не помогло в итоге, надо дальше разбираться.
  3. Тем же патчером убрал лимит на 15 портов (Patch — Advanced — USB Port Limit). Выкинул с таким трудом сделанный SSDT-UIAC.aml

Постепенно продвигаюсь на пути минимизации числа кекстов и способов настройки, в идеале все фиксы и твики должны быть в конфиге Clover, так проще жить.

Неработоспособность DP заедает, в остальном все отлично.

Как я почти решил проблему со звуком bluetooth audio на хакинтоше

$
0
0

Симптомы простые — постоянное пропадание пакетов и, соответственно, затыкающийся и скачущий звук в наушниках. Интриговать не буду, решение примитивное, нужно сесть поближе к антенне. И не окончательное. Дальше разбор полётов.

bluetoothaudiod com.apple.bluetooth Error sending audio packet

Проблема в консоли

bluetoothaudiod
com.apple.bluetooth
Error sending audio packet: 0xe00002e8
Too many outstanding packets. Drop packet of 223 frames (total drops:358 total sent:4389 percentDropped:7.541605) Outstanding:17

Bluetooth

В хакинтоше торчит адаптер с карточкой Broadcom BCM94360CD PCIe x1 от Аймака 2013 года. У адаптера 4 антенны солидных размеров, одна из них для Bluetooth. Толк от антенны есть, но не особо много.

Наушники

Недорогие лопухи Edifier W830BT. Насколько велик их вклад в проблему я не знаю, сравнил по-быстрому с Sony MDR-ZX220BT — результат получше, судя по измерению RSSI. Еще пробовал колонку Sony SRS-X3, она дальнобойнее ощутимо.

aptX vs AAC vs SBC

Это кодеки, от лучшего к худшему, как я понимаю. На объем передаваемых данных не влияет, поэтому влиять на качество связи и потерю пакетов не должны. Edifier поддерживает aptX, Sony MDR AAC, Sony SRS только SBC.

Edifier W830BT

Основной пациент — Edifier. Пакеты начинают пропадать понемногу при повышении RSSI до 65 (- 65 дБм), после 70 процент дропнутых пакетов сильно растет, после 75 вообще невозможно что-либо слушать. В диапазоне 55-60 никаких проблем нет.

В практических терминах получается 1-3 метра от антенны, если она в прямой видимости. Если корпусом компьютера затенена, то и того меньше. Дополнительный фактор — компьютер стоит слева, а антенна, похоже, в правом наушнике. Башка экранирует сигнал на 10 дБм! Или сам «лопух», что вероятнее.

Шаманство с ползунками bitpool и ограничением буфера в Bluetooth Explorer на картину заметным образом не повлияли. В нём вообще можно на пару дней залипнуть, ещё бы понимать что там к чему.

Идгуещщер Учздщкук ишезщщд

В общем, корпус компьютера повернул боком, чтобы антенна видна была, придвинул малость ближе. Пока работает без нареканий, за одним исключением — если bluetooth что-либо активно делает, ищет устройства или файлы какие передает, то проблема возвращается, хоть прислони наушники к антенне.

Многочисленные советы, предлагающие отключить Handoff, Aidrop, Wi-Fi и вообще всё, что связано с беспроводными технологиями проблему не решают, я проверял. Может улучшают ситуацию, но незначительно и неинтересной ценой.

UPDATE

Я временно сдаюсь. После выходных (компьютер был включен) при подключении наушников снова появляется ошибка bluetoothaudiod «Too many outstanding packets» и начинает подтормаживать трекпад. Это при том, что уровень сигнала отменный, а компьютер не воспроизводит вообще никаких звуков — iTunes выключен, в Safari никто ничего не играет и не поёт. Где он там нашел эти аудио-пакеты — загадка. sudo killall coreaudiod и sudo killall bluetoothaudiod не помогают. Помогает перезагрузка, но надолго ли не знаю, да и хлопотно это.

Хакинтош, одно слово. Впрочем, людям со старыми MacBook Pro 2010-2013 и т.п. в ответ на похожие жалобы рекомендуют обновить ноутбук. Берёшь MBP 2016 и забываешь о проблемах.

Хакинтош, Mojave, Intel HD 630 и неработающий DisplayPort — решение

$
0
0

После обновления с High Sierra до Mojave у меня пропал сигнал на разъеме DisplayPort, пришлось подключать монитор по DVI. Проблему решил с помощью патча AppleGraphicsDevicePolicy, о существовании которого узнал сегодня.

Проблема редкая, информации мало. Дело, вероятно, в особенностях материнской платы GIGABYTE GA-H270M-DS3H — в ней куча разъемов (vga, hdmi, display port, dvi) и она не слишком распространена в хакинтошестроении. Плюс монитор у меня без HDMI, но с DisplayPort и DVI, ну и нелюбовь к DVI на уровне идиосинкразии.

Если особо не умничать, то решение нашлось методом тыка — кто-то где-то упоминал, но ему не помогло, проблема была в чем-то другом, но я всё равно решил попробовать.

Что делал безрезультатно

После установки Lilu и WhateverGreen я побаловался с подбором ig-platform-id, настройкой коннекторов, делал и просматривал логи, пытался думать — бестолку. Всё просто, с ig-platform-id = 0x59120000 безо всяких дополнительных настроек работает отлично, но только по DVI. Вернее, только не по DisplayPort, поскольку VGA и  HDMI я не проверял.

Замена SMBIOS с iMac 16.2 на iMac 18.1 ощутимых изменений не принесла. Я вообще разницы не заметил, приминительно к графике точно.

Загрузка с подключенным или отключенным DVI — без разницы. После Clover и яблока имеем черный экран на DisplayPort, затем можно втыкать DVI и/или переключать монитор на вход DVI и наблюдать картинку с логином.

Писал, спрашивал на форумах, искал помощи. Из советов — купить уже видеокарту, успокоиться и жить с DVI, в основном в таком духе. Про AppleGraphicsDevicePolicy никто не упоминал.

Патч AppleGraphicsDevicePolicy

После патча

Я уже раз 6 перезагрузился в различных комбинациях. Если подключены оба кабеля, то работает только DVI. Если загрузиться с DP и пдключить DVI на горячую, монитор извещает о неоптимальном разрешении и ничего не показывает. Короче, должен остаться только один, что меня вполне устраивает.

NB: В известных проблемах/недостатках WhateverGreen для графики Intel значится отсутствие поддержки 2 и более мониторов.

При подключении по DVI монитор цепляется к коннектору с индексом 2 (bus id 0x04), DP это коннектор 3 (0x06) — это на случай склероза.

Intel HD Graphics 630 DisplayPort

Сам патч выглядит так — одна буква, Карл!

<key>Comment</key>
<string>Prevent AGDP from loading</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
ugUAAAA=
</data>
<key>InfoPlistPatch</key>
<false/>
<key>MatchOS</key>
<string>10.11.x,10.12.x,10.13.x,10.14.x</string>
<key>Name</key>
<string>com.apple.driver.AppleGraphicsDevicePolicy</string>
<key>Replace</key>
<data>
ugAAAAA=
</data>

Если через GUI Clover Configurator делать, то надо в KextsToPatch добавить строку Name: «com.apple.driver.AppleGraphicsDevicePolicy» Find: «BA050000 00» Replace: «BA000000 00» Comment: «Prevent AGDP from loading» и MatchOS: «10.11.x,10.12.x,10.13.x,10.14.x», без кавычек, конечно.

Что конкретно он делает — без понятия. Расширение по-прежнему загружается, но что-то в нём изменяется, очевидно. Любопытно, что в High Sierra этого не требовалось, хотя разнообразные проблемы с AGDP у людей давние, в основном касаются дискретной графики.

В логах ничего интересного не нашел, ни до, ни после:

$ grep -r AppleGraphicsDevicePolicy /var/log
/var/log/Lilu_1.2.7_18.0-2.txt:Lilu: patcher @ (DBG) last kext is FFFFFF7F86D52000 and its name is com.apple.driver.AppleGraphicsDevicePolicy
/var/log/install.log:Sep 25 09:05:18 iMac OSInstaller[559]: kextcache: AppleGraphicsDevicePolicy.kext is not demanded by OSBundleRequired conditions.

Вникать и разбираться желания нет, предпочту пожать плечами, смотать DVI кабель и жить дальше.

UPDATE

При наличии WhateverGreen.kext, тот же самый патч можно сделать с помощью аргумента: config.plist / boot / arguments / agdpmod=vit9696

 

Обновление macOS 10.14.1 на хакинтоше

$
0
0

Ну, помолясь, 70+ новых эмодзи ждут, включая отряд лысых персонажей.

macos 10.14.1 обновление

Предварительно обновил:

Мера превентивная и скорее всего необязательная, с моим примитивным сетапом  едва ли что-либо радикально может поломаться в минорном обновлении системы. Вот у людей с альтернативными web drivers от NVIDIA каждый раз пляски, практически  при любом обновлении требуется ждать выхода новой версии драйверов. Странно это.

Установил, перезагрузил, всё нормально, звук на месте, графика не пропала, за остальное и не переживал.

эмодзи мужчина без волос

Обещанные безволосые эмодзи присутствуют. Теперь заживем! Заметьте, не «лысый мужик», а мужчина без волос. Вот только предательский поиск всё портит своей суровой прямотой.

эмодзи - лысая

Из кому-то полезного добавили групповые аудио- видеоконференции в FaceTime, аж до 32 участников. Летом в бета-версии iOS такое пробовал, глючило страшно. Похоже, к первому релизу Mojave эту функцию тоже не успели доделать. Не пробовал пока, но на большом экране многолюдные групповушки должны получше выглядеть, чем на айфоне.

Мой Тоша

$
0
0

Решил собрать в кучу информацию о своем хакинтоше. Для себя и для тех, у кого похожая конфигурация — GA-H270M-DS3H, i5-7500, Intel HD630, BCM94360CD etc

тоша

Вот, у меня так, работает нормально. Смотрите, сравнивайте. Я не смогу помочь в решении ваших проблем, не хватит знаний, я обычный «опытный пользователь» и не лезу в детали.

Что работает, что нет

  • Работает macOS Mojave в данный момент. Графика, звук, Wi-Fi, bluetooth, вся подключенная периферия.
  • Не работает сон и пробуждение, вероятно. Я не пробовал, честно говоря, мне незачем.

Железо

  • Материнская плата GIGABYTE GA-H270M-DS3H. От похожих на том же чипсете отличается набором видео-разъемов: DVI, HDMI, DisplayPort, VGA.
    • Звуковой чип Realtek ALC887 (ALC888B).
    • Сеть Realtek 8111 (RTL8168G/8111G)
  • Процессор Intel Core i5-7500 «Kaby Lake».
  • Wi-Fi/Bluetooth BCM94360CD от iMac 2013 через PCIe адаптер.
  • SSD Crucial MX300 525GB. Здесь важно только то, что он SATA.
  • Память Crucial Ballistix Sport LT 16GB DD4-2400 K2.
  • Графика встроенная Intel HD Graphics 630 1536 МБ.
  • Монитор Samsung S23C650 подключен через DisplayPort, работал и через DVI, другие подключения не проверял.
  • Клавиатура проводная USB Apple A1243.
  • Трекпад bluetooth Apple A1339.
  • Вебка Logitech C615, принтеры, сканеры, внешние диски…

Если у вас материнская плата другой модели, то брать мой конфиг 1:1 смысла нет. Могут отличаться чипы звука, сети, количество и тип USB портов, разъемов графики. То же касается процессоров другого поколения, главным образом в плане графики.

Настройки BIOS

System

Здесь важно — отключен VT-d, включен XHCI Hand-off, отключены порты serial/parallel (нет на фото), система Other OS.

Диск

SSD GUID APFS

Диск изначально разбит и отформатирован установщиком macOS. Схема разделов GUID, основной раздел APFS, есть дополнительный NTFS. С MBR дела никогда не имел, как установить macOS в соседний с уже работающей Windows раздел не знаю. При нынешней цене на SSD смысла в этом нет, по-моему.

Clover

Здесь просто, берём последнюю версию. Обновляется он часто, чаще, чем я компьютер перезагружаю. В данный момент у меня пропущено несколько релизов.

clover r4674

В установщике отмечены:

  • Устанавливать Clover только для UEFI загрузки
  • Устанавливать Clover на раздел EFI (ESP)
  • Драйверы для UEFI загрузки (drivers64UEFI):
    • ApfsDriverLoader-64.efi
    • AptioMemoryFix-64.efi
    • DataHubDxe-64.efi
    • FSInject-64.efi
    • SMCHelper-64.efi
    • VBoxHfs-64.efi
  • Панель настроек Clover

Расширения (clover/kexts/other):

  • AppleALC.kext — звук
  • FakeSMC.kext — без этого никуда
  • Lilu.kext — требуется для AppleALC и WG
  • RealtekRTL8111.kext — сеть
  • USBInjectAll.kext
  • WhateverGreen.kext — видео

Ссылки на загрузки внизу страницы, используемые в данный момент версии есть в архиве, чуть ниже ссылка.

Патчи ACPI (clover/acpi/patched):

  • SSDT-UIAC.aml — настройка USB портов.

Все остальное делается в конфиге Clover (config.plist), конкретно:

  • Настройка графики (AAPL,ig-platform-id для WhateverGreen) — Devices/Properties.
  • Настройка звука (layout-id для AppleALC) — там же.
  • Переименован SAT0 в SATA (ACPI/DSDT).
  • Лимит портов USB (Kernel and Kext Patches).
  • SMBIOS — iMac 18.1
  • Остальные галочки и ключики, к которых я не разбирался.

Архив /EFI/CLOVER — это мой текущий конфиг, за исключением серийных номеров и UUID, сгенерировал новые с помощью Clover configurator.

В /System/Library/Extensions ничего лишнего нет.

Нюансы, советы, проблемы, решения

Ссылки и ресурсы

 

Обновление macOS Mojave 10.14.2 на хакинтоше

$
0
0

Никакого драматизма, всё в штатном режиме, по времени минут 15 ушло. Немного непривычно, что обновлятор теперь живёт в настройках, а не в приложении App Store.

Исправления и улучшения 10.14.2

Повышена стабильность, улучшена совместимость, выросла безопасность — как речь госчиновника в ящике.

Из официальной конкретики — добавлена поддержка RTT (Real-Time Text) для общения по Wi-Fi/Это что-то для глухих и/или немых, я погуглил, но не особо много понял.

Пофиксили iTunes в смысле совместимости со сторонними AirPlay колонками.

Что-то поменяли в приложении News, которое я не видел никогда.

Довольно скромный список для 2.4 Гб обновления.

Более дотошные хакинтошеры пишут, что обновились драйверы видео и звука, но ничего не поломали. Подтверждаю — работает, кексты я не обновлял.

Дополнительное обновление 10.14.3 хакинтоша

$
0
0

Дополнительное обновление, похоже, связано с ужасающим багом FaceTime, позволяющим слышать вызываемого ещё до того, как он ответил на звонок. На iOS его устранили быстро, теперь пришла очередь macOS.

Дополните обновление macOS mojave

Никаких осложнений при обновлении хакинтоша не было, установилось быстрее «нормальных» обновлений, минут 10 на всё.

В очередной раз возник вопрос — так ли необходимо распространять FaceTime, Safari etc в виде неотделимой части системы, требующей для своего обновления перезагрузки компьютера.

Возможно, в обновление попутно запихали какие-то ещё улучшения и изменения, но деталей я не нашел.


Catalina на хакинтоше — веселое обновление

$
0
0

Ух ты, приключение! Сегодня в программе: обновление Clover до версии 2.5 способом «ставим начисто», встреча с чёрным экраном, знакомство с Clover Shell — будет интересно!

Новый распоследний Clover не требуется для установки Catalina, насколько я знаю, с кекстами та же история, обновлял просто заодно.

Обновление Clover с версии 2.4 (r4910) до 2.5 (r5070)

Особо не вникал, но одно радикальное изменение не заметить не получится. Драйверы из папки /EFI/CLOVER/drivers64UEFI/ переехали в /EFI/CLOVER/drivers/UEFI/. Они все теперь 64-битные, так что разделять смысла нет. Clover 2.5 (r5070) обновление

Отсюда проблема — при установке нового Кловера поверх старого прежние драйверы не будут найдены и, соответственно, не будут обновлены или вообще установлены. Нужно смотреть на список бывших и выбирать в установщике будущие. Поэтому я решил переименовать папку EFI, установить Clover с новой структурой папок, затем скопировать настроки и недостающие драйверы на новое место. Clover — выбор драйверов для Catalina

Из недостающего — в новом Clover не нашлось драйвера AptioMemoryFix-64.efi, его пришлось копировать из старой установки, но сначала я попытался перезагрузиться без него. Большая ошибка!

Знакомство с Clover Shell

После перезагрузки (всё ещё в Mojave) я получил чёрный экран, в «говорливом» режиме с ключом -v увидел знакомую картину, end randomseed и до свидания. Почитал про Clover Shell, поскольку загрузочной флешки у меня не нашлось, а делать долго и муторно.

Clover Shell
Картинка не моя, просто для иллюстрации темы

Отличная вещь! Моя задача свелась к копированию AptioMemoryFix-64.efi из резервной копии в новый Clover. Если знать что и как, то занимает это 3 минуты. Самое сложное, это найти нужные диски.

При загрузке Clover Shell показывает список разделов, нас интересуют FSx (x — цифра), это диски. Пролистывать его можно кнопками PgUp/PgPn. Монтируются командой map FSx. Перейти к диску — FSx: После этого можно просмотреть его содержимое командой ls (или сразу ls FS1:). Копировать привычно — cp FS1:\some\file\from FS3:\some\path\to. По табу работает автоподстановка, полностью набирать названия папое не нужно, что спасает.

Я последовательным перебором нашел раздел EFI (FS1) и главнй раздел с системой (FS5). где Clover делает резервные копии. Дальнейшие команды выглядели так

map FS1
map FS5
cp FS5:\EFI-Backups\r4910\2019-10-08-13h15\EFI\CLOVER\drivers64UEFI FS1:\EFI\CLOVER\drivers\UEFI
exit

После выхода из шелла попадаешь обратно в Clover GUI, откуда можно перезагрузить компьютер. В случае с установкой нового драйвера это необходимо.

Обновление кекстов

Я это делал с помощью Clover Configurator, но это момент не принципиальный. Установил новые Lilu, Whatevergreen и т.п. В конфигураторе не было RealtekRTL8111.kext, скопировал его из старой папки.

Установщик кекстов

Собственно, macOSX 10.15 (19A583) Catalina

Всё готово, можно устанавливать Каталину. Делал я это обычным способом, через установку обновления в Системных настройках. Резервную копию установщика на всякий случай сделал, всё-таки 8 гигабайт. Он лежит в папке Приложения и исчезает после завершения процесса.

catalina-here.png

Довольно долго устанавливалась, перезагружалась 3 раза в процессе, но никаких заморочек не было вообще. Если учесть, что большинство сопутствующих обновлений не были обязательными, то обновление можно считать беспроблемным.

О впечатлениях отдельно, а навскидку — iTunes R.I.P.

Переехал с Clover на OpenCore

$
0
0

Замена Clover на OpenCore показалась неизбежной, хотя в детали я не вникал особо. Процесс занял часа два, не обошлось без kernel panic и черного экрана.

ЩзутСщку

О машине коротко: Intel Kaby Lake i5-7500, GIGABYTE GA-H270M-DS3H, графика встроенная HD 630 , Bluetooth/Wi-Fi Broadcom BCM94360CD. Установлена Catalina 10.15.5 (19F101).

Процесс: сделал флэшку с OpenCore 0.6.0, с неё загружался, отладил всё, затем заменил на основном диске папку EFI на ту, что получилась.

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

Из старого конфига от Clover я взял настройки SMBIOS — серийник, UUID, product name (iMac18,1), всё остальное новое.

Отличия от базового мануала для Kaby Lake были, они описаны в разделе Troubleshooting и мне пришлось их применять.

Booter Issues:

  • DevirtualiseMmio may be taking precious areas in memory that are needed for other uses, you may need to disable this quirk or whitelist the bad regions: Using DevirtualiseMmio
  • SetupVirtualMap may be needed depending on the firmware, generally this quirk should be avoided but most Gigabyte users and older hardware(Broadwell and older) will need this quirk to boot.
    • Z490 boards are known to fail with SetupVirtualMap enabled, especially on Asus and AsRock boards.
  • RebuildAppleMemoryMap may not be a fan of your firmware, use of this quirk is dependent on having EnableWriteUnprotector disabled and SyncRuntimePermissions enabled with the addition of having a Memory Attribute Table in your firmware. If your firmware doesn’t have MATs, disable both RebuildAppleMemoryMap and SyncRuntimePermissions then enable EnableWriteUnprotector.

Без этого (или чего-то из этого) я ловил kernel panic на довольно ранней стадии.

OpenCore boot-args

После заработало, но компьютер грузился в черный экран. Монитор подключен по DisplayPort и похожую историю я помню — если разбираться некогда, то ключик agdpmod=vit9696 в boot arguments проблему с графикой решает. По DVI работало и так, я проверял.

Для звука с AppleALC потребовался ещё один ключик в boot-args: alcid=7, это конфигурация набора входов-выходов аудио.

OpenCore EFI

Впечатления отличные. Очень опрятно и просто, всё необходимое уже есть в связке OpenCore, Lilu, Whatevergreen, AppleALC. Я добавил драйвер HfsPlus.efi (не нужен на самом деле) и RealtekRTL8111.kext для эзернета.

Главное удовольствие — это руководство, конечно. Никаких форумов, бесполезных комментариев, устаревших инструкций, раскиданных по десятку сайтов. Наслаждение.

TODO

Когда-нибудь нужно разобраться с парой неоптимальных aml, в которых много лишнего, говорят.

Пункт выше требует загрузки под Linux или Windows, с этим у меня пока сложно, нужно разбираться с Multiboot и ставить что-то.

Может быть займусь настройкой UI, сейчас загрузчик OpenCore выглядит неказисто — текстовое меню на черном фоне.

macOS Big Sur и OpenCore 0.6.3 для Тоши

$
0
0

Не планировал, но случилось. Дело в том, что мой хакинтош начал наглухо зависать по ночам. Прежде чем разбираться, решил накатить Big Sur. Если проблема не исчезнет сама, то буду уже с новой системой бороться.

Big Sur

Подготовительный этап

Обновление OpenCore до 0.6.3 — самое муторное занятие. Благо, документация достаточно подробная. Скачал, распаковал, заменил: OC/OpenCore.efi, BOOT/BOOTx64.efi, Drivers/OpenRuntime.efi, Tools/OpenShell.efi.

Дальше хуже, нужно поправить config.plist, что-то там между версиями OpenCore поменялось. Грубо, взять из нового архива Sample.plist, сравнить со своим, внести нужные правки. Очень помогает OpenCore Sanity Checker, без него процесс затянулся бы. Выбрал Desktop: (7th Gen) Kaby Lake, OpenCore 0.6.3, получил кучку предупреждений, исправил.

Никаких нестандартных настроек, как в прошлый раз, не потребовалось. По факту, у меня сейчас «стоковый» конфиг для Kaby Lake, каким его видит Sanity Checker. За исключением boot-args: -v keepsyms=1 debug=0x100 alcid=7 agdpmod=vit9696.

Заменил Lilu.kext, AppleALC.kext, WhateverGreen.kext, VirtualSMC.kext etc свежими версиями (от 3 ноября).

Перезагрузился в Catalina, проверил, работает (и так же ночью завис).

Обновление

Сегодня скачал установщик через «Обновление ПО», запустил, перезагрузился. Всё прошло без заминок. Перезагружался компьютер по ходу дела минимум трижды, я не очень пристально наблюдал, поскольку шуршал он минут 30, не меньше.

Впечатления

Главное — попал в какую-то карамельно-мармеладную страну, где все пухленькие, беззаботные и жизнерадостные. Розовых пони пока не видел, что странно.

Что-то не то с системными шрифтами — в меню, в Файндере. То ли размер, то ли сглаживание, пока не понял. У меня монитор рабоче-крестьянский, FullHD.

У одного приложения (Spark) окно слева очерчено белым, явно глюк.

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

Big Sur настройка Пункта управления

Внешность Safari ощутимо изменили, но все функциональные элементы остались на своих местах, плужки работают, ну и спасибо.

Остальные «ключевые фичи» я пока не оценил. Сообщения, Карты, виджеты в эээ выезжающей справа панели — это я едва ли буду часто видеть, не пользуюсь.

Настройка USB на хакинтоше на примере H270M-DS3H

$
0
0

В настройке USB на хакинтоше мне почудилось какое-то неуловимое сходство с настройкой музыкального инструмента. Потребовалось в процессе и после: программы IORegistryExplorer и maciASL, расширения USBInjectAll.kext и XHCI-200-series-injector.kext, редактор для plist (сойдет TextMate), устройства USB 2.0 и USB 3.0. На выходе получился файл SSDT-USB.aml.

IORegistry / XHC / USB

Для начала нужно положить USBInjectAll.kext и XHCI-200-series-injector.kext в папку /EFI/CLOVER/kexts/other. Первый нужен всем и скорее всего уже будет куда-либо установлен проверьте обычные места (/S/L/E /L/E). Второй необходим для материнских плат на чипсетах 200 серии, без него у меня не работал USB3. Далее нужно устранить ограничение на 15 портов, делается правкой /EFI/CLOVER/config.plist.

Ахтунг, никогда не редактируйте plist/xml и т.п. в приложениях типа TextEdit.

<key>KextsToPatch</key>
 <array>
 <dict>
 <key>Comment</key>
 <string>change 15 port limit to 26 in XHCI kext (200-series) 10.12</string>
 <key>Find</key>
 <data>
 g710////EA==
 </data>
 <key>Name</key>
 <string>AppleUSBXHCIPCI</string>
 <key>Replace</key>
 <data>
 g710////Gw==
 </data>
 </dict>
 ...

После перезагрузки у вас должны работать все имеющиеся USB порты. На этом можно было бы остановиться, но если делать по-уму, то дальше начинается забавная рутина. Суть — оставить только те порты, которые реально существуют на вашей машине и назначить им правильный тип.

Запускаем IORegistryExplorer и ищем HS01, находится он в ветке XHC. Смотрим список соседей. Я не удосужился сделать скриншот «до», но изначально там было 26 устройств типа HSxx SSxx и какие-то USRxx. Для каждого устройства есть набор параметров, из которых нас будет интересовать только port и UsbConnector.

Теперь развлекушка — нужно поочередно подключить к каждому USB 2.0 (черные) и USB 3.0 (обычно синие) разъему на корпусе и материнке USB 2.0 устройство, отследить изменения в IOReg и записать ID устройства, его порт и расположение. Типа такого: HS01 — <04 00 00 00> — Top MB USB3 port. Затем нужно подключить USB 3.0 устройство ко всем USB 3.0 портам и разъемам на материнской плате и сделать похожий список: SS03 — <13 00 00 00> — Internal USB3_1 header. В общем списке должно получиться USB2_count + USB3_count x 2 записей — для каждого USB3 порта будет одна HSxx запись и одна SSxx.

У меня получился такой список:

HS01 USB2 on Back bottom outer USB3 <01 00 00 00>
HS02 USB2 on Back bottom inner USB3 <02 00 00 00>
HS03 USB2 on Back top outer USB3 <03 00 00 00>
HS04 USB2 on Back top inner USB3 <04 00 00 00>
HS06 USB2 on Case top slot USB3 mobo header 1 <06 00 00 00>
HS08 USB2 on Case top slot USB3 mobo header 2 <08 00 00 00>
HS09 USB2 on Case bottom slot USB_1 mobo header <09 00 00 00>
HS11 USB2 on Case bottom slot USB_2 mobo header <0b 00 00 00>
HS13 USB2 on Back topmost inner USB2 <0d 00 00 00>
HS14 USB2 on Back topmost inner USB2 <0e 00 00 00>
SS01 USB3 on Back bottom outer USB3 <11 00 00 00>
SS02 USB3 on Back bottom inner USB3 <12 00 00 00>
SS03 USB3 on Back top outer USB3 <13 00 00 00>
SS04 USB3 on Back top inner USB3 <14 00 00 00>
SS06 USB3 on Case top slot USB3 mobo header 1 <16 00 00 00>
SS08 USB3 on Case top slot USB3 mobo header 2 <18 00 00 00>

В списке есть «дыры» — на внутренних коннекторах USB доступны по 2 порта, но у меня на корпус выведены только 1xUSB2 и 1xUSB3, то есть к оставшимся 4 разъемам я подключиться не могу. Можно их просто заполнить по порядку, но большого смысла нет, поскольку в конце рабочих портов все равно останется только 15.

С этой табличкой на руках запускаем maciASL, создаем новый dsl файл и заполняем нашими данными. Значение для UsbConnector такие: 0 для обычного USB2, 3 для USB3 type A, 10 для USB3 type C, 255 для внутреннего разъема для того самого Bluetooth. В итоге должно получиться что-то типа такого.

DefinitionBlock ("SSDT-USB.aml", "SSDT", 1, "sample", "USBFix", 0x00003000)
{
 // "USBInjectAllConfiguration" : override settings for USBInjectAll.kext
 Device(UIAC)
 {
 Name(_HID, "UIA00000")
 // "RehabManConFiguration"
 Name(RMCF, Package()
 {
 // XHC overrides for 100-series boards
 "8086_a2af", Package()
 {
 "port-count", Buffer() { 0x18, 0, 0, 0}, // Highest port number is SS** at 0xNN
 "ports", Package()
 { // TO COMPLETE THIS FILE, ADD ALL YOUR PORTS BELOW HERE, THEN SET port-count ABOVE
 "HS01", Package() // USB2 on Back bottom outer USB3 <01 00 00 00>
 {
 "UsbConnector", 3,
 "port", Buffer() { 0x01, 0, 0, 0 },
 },
 "HS02", Package() // USB2 on Back bottom inner USB3 <02 00 00 00>
 {
 "UsbConnector", 3,
 "port", Buffer() { 0x02, 0, 0, 0 },
 },
 "HS03", Package() // USB2 on Back top outer USB3 <03 00 00 00>
 {
 "UsbConnector", 3,
 "port", Buffer() { 0x03, 0, 0, 0 },
 },
 "HS04", Package() // USB2 on Back top inner USB3 <04 00 00 00>
 {
 "UsbConnector", 3,
 "port", Buffer() { 0x04, 0, 0, 0 },
 },
 "HS06", Package() // USB2 on Case top slot USB3 mobo header 1 <06 00 00 00>
 {
 "UsbConnector", 3,
 "port", Buffer() { 0x06, 0, 0, 0 },
 },
 "HS08", Package() // USB2 on Case top slot USB3 mobo header 2 <08 00 00 00>
 {
 "UsbConnector", 3,
 "port", Buffer() { 0x08, 0, 0, 0 },
 },
 "HS09", Package() // USB2 on Case bottom slot USB_1 mobo header <09 00 00 00> 
 {
 "UsbConnector", 0,
 "port", Buffer() { 0x09, 0, 0, 0 },
 },
 "HS11", Package() // Bluetooth on slot USB_2 mobo header <0b 00 00 00>
 {
 "UsbConnector", 255,
 "port", Buffer() { 0x0b, 0, 0, 0 },
 },
 "HS13", Package() // USB2 on Back topmost inner USB2 <0d 00 00 00>
 {
 "UsbConnector", 0,
 "port", Buffer() { 0x0d, 0, 0, 0 },
 },
 "HS14", Package() // USB2 on Back topmost outer USB2 <0e 00 00 00>
 {
 "UsbConnector", 0,
 "port", Buffer() { 0x0e, 0, 0, 0 },
 }, 
 "SS01", Package() // USB3 on Back bottom outer USB3 <11 00 00 00>
 {
 "UsbConnector", 3,
 "port", Buffer() { 0x11, 0, 0, 0 },
 },
 "SS02", Package() // USB3 on Back bottom inner USB3 <12 00 00 00>
 {
 "UsbConnector", 3,
 "port", Buffer() { 0x12, 0, 0, 0 },
 },
 "SS03", Package() // USB3 on Back top outer USB3 <13 00 00 00>
 {
 "UsbConnector", 3,
 "port", Buffer() { 0x13, 0, 0, 0 },
 },
 "SS04", Package() // USB3 on Back top inner USB3 <14 00 00 00>
 {
 "UsbConnector", 3,
 "port", Buffer() { 0x14, 0, 0, 0 },
 },
 "SS06", Package() // USB3 on Case top slot USB3 mobo header 1 <16 00 00 00>
 {
 "UsbConnector", 3,
 "port", Buffer() { 0x16, 0, 0, 0 },
 },
 "SS08", Package() // USB3 on Back bottom outer USB3 <11 00 00 00>
 {
 "UsbConnector", 3,
 "port", Buffer() { 0x18, 0, 0, 0 },
 },

},
 },
 })
 }
}

В port-count нужно вписать цифровое значение port самого последнего порта, у меня это SS08 и порт 0x18.

Полученный файл нужно сохранить в формате ACPI Machine Language Library (asl). Если по ходу компиляции никаких ошибок не будет, то полученный SSDT-USB.aml кладем в /EFI/CLOVER/ACPI/patched и перезагружаемся. Если все прошло нормально, то в XHC должны остаться только описанные порты, все они должны нормально работать.

Опционально — можно довести число портов до 15 и избавиться от патча в config.plist. Сделать это можно при помощи параметра загрузки uia_exclude в том же config.plist. У меня эта строчка выглядит так:

<key>Boot</key>
 <dict>
 <key>Arguments</key>
 <string>dart=0 nv_disable=1 uia_exclude=HS08;SS08</string>
 <key>Debug</key>
 ...

Я исключил порты HS08 и SS08, это внутренний разъем USB3_2, который я не использую — всего осталось 14 штук. В принципе, можно просто выкинуть пару портов из самого asl, наверно, поскольку еще 4 порта я вообще не вписал.

Размышления напоследок

  • Тип разъема мало на что-то влияет, по-моему. Разницы между 0 и 255 я не увидел — Bluetooth не заработал ни так, ни эдак, при этом обычная флэшка в обоих случаях работает.
  • У меня все синие порты вроде заявлены как USB 3.1 Gen 1 (он же новый 3.0), в системной информации показывает Speed: Up to 5 Gb/sec, но фактическую скорость померить нечем.
  • Зачем избавляться от патча, делающего доступными все порты? Чем чревато — непонятно.
  • USB 3.1 Gen 2 у меня нет, как и Type-C, так что двумя проблемами меньше.

Ссылки и респекты

Спам com.apple.nowplayingtouchui в консоли — решение

$
0
0

Мой хакинтош посетил призрак Тачбара, явился в виде вот такого спама в Console.app / system.log. На производительность не влияет, но неприятно.

Mar 2 17:38:44 Tosha com.apple.xpc.launchd[1] (com.apple.nowplayingtouchui): Service only ran for 0 seconds. Pushing respawn out by 10 seconds.
Mar 2 17:39:14 --- last message repeated 2 times ---
Mar 2 17:39:14 Tosha com.apple.xpc.launchd[1] (com.apple.nowplayingtouchui): Service only ran for 0 seconds. Pushing respawn out by 10 seconds.
Mar 2 17:39:44 --- last message repeated 2 times ---
Mar 2 17:39:44 Tosha com.apple.xpc.launchd[1] (com.apple.nowplayingtouchui): Service only ran for 0 seconds. Pushing respawn out by 10 seconds.
Mar 2 17:40:14 --- last message repeated 2 times ---

Проблема не специфична для хакинтошей, жалоб на подобное поведение хватает на форуме Apple, а решение я нашел на Реддите в macOS.

Шаг 1 — отключить поддержку Touch Bar, для этого в терминале пишем

launchctl unload -w /System/Library/LaunchAgents/com.apple.touchbar.agent.plist

Шаг 2, поскольку первый не помог. Возможно, нужно было перезагрузиться, но лень. Нужно отредактировать еще один причастный файл.

nano  /System/Library/LaunchAgents//com.apple.NowPlayingTouchUI.plist

И добавить под <dict> пару строчек <key>Disabled</key><true/>

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
 <key>Disabled</key>
 <true/>
 <key>EnablePressuredExit</key>
 <false/>
...

После этого можно приступать к отлову других блох, у macOS всегда найдется что написать в журнал, хоть на хакинтоше, хоть на православной технике Apple.

Подозреваю, это решение едва ли переживет какое-нибудь серьезное обновление системы, поэтому пишу это больше для памяти.

Viewing all 52 articles
Browse latest View live