Запись вида PciRoot(0x0)/Pci(0x1b,0x0) пользователь обычно встречает в трёх местах: в конфиге загрузчика Clover или OpenCore при настройке хакинтоша, в свойствах устройства в Диспетчере устройств Windows (поле «Путь к экземпляру устройства») и в логах ошибок загрузки. В подавляющем большинстве случаев за адресом 0x1B на шине PCI скрывается встроенный аудиоконтроллер (High Definition Audio), и именно поэтому эта строка так часто мелькает в гайдах по настройке звука на хакинтоше.

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

Что означает запись PciRoot(0x0)/Pci(0x1b,0x0)

Это текстовое представление пути к устройству в иерархии шины PCI. Формат пришёл из спецификации UEFI/ACPI, где каждое устройство описывается цепочкой узлов от корня шины до конкретной функции.

  • 🌳 PciRoot(0x0) — корневой мост PCI с номером 0. На типичном десктопе или ноутбуке он один, поэтому почти всегда фигурирует ноль.
  • 🚌 Pci(0x1b,0x0) — устройство на шине: первое число (device, 0x1B = 27 в десятичной системе) — номер устройства, второе (function) — номер функции внутри него.
  • 🔊 Функция 0 устройства 0x1B — это классическое расположение контроллера Intel High Definition Audio на чипсетах Intel, начиная с поколений ICH6 и далее.

Важно понимать: адрес 0x1B — это типичное, но не гарантированное расположение аудиоконтроллера. На современных платформах Intel (начиная примерно с серий 100/200) аудио может сидеть на другом адресе (часто 0x1F, функция 3), а у AMD раскладка своя. Поэтому слепо копировать чужой конфиг — путь к нерабочему звуку.

Где именно встречается эта строка

Чаще всего пользователь натыкается на запись в конфигурационном файле config.plist загрузчика хакинтоша. В Clover путь к аудиоустройству прописывается в секции, отвечающей за инъекцию свойств устройств, чтобы macOS корректно определила кодек и применила нужный layout-id. В OpenCore аналогичный путь используется в секции DeviceProperties, только записывается в виде PciRoot(0x0)/Pci(0x1b,0x0) как ключ словаря.

Второй сценарий — Windows. Откройте свойства устройства в Диспетчере устройств, вкладку «Сведения» и выберите свойство вроде «Путь к экземпляру устройства» или «Физическое имя объекта устройства» — там можно увидеть похожую адресацию. Третий сценарий — логи UEFI-загрузчиков и утилиты вроде gfxutil или IORegistryExplorer в macOS, где путь нужен для точной идентификации железа.

📊 Где вы столкнулись с записью PciRoot(0x0)/Pci(0x1b,0x0)?