![](/user_photo/2706_HbeT2.jpg)
Hackintosh_from_A_to_Z_23.05.10
.pdf}
Device (IDE1)
{
Name (_ADR, 0x001F0002)
OperationRegion (PCI, PCI_Config, 0x40, 0x20) Field (PCI, DWordAcc, NoLock, Preserve)
{ |
|
ITM0, |
16, |
ITM1, |
16, |
SIT0, |
4, |
SIT1, |
4, |
|
Offset (0x08), |
UDC0, |
2, |
UDC1, |
2, |
|
Offset (0x0A), |
UDT0, |
8, |
UDT1, |
8, |
|
Offset (0x14), |
ICF0, |
2, |
ICF1, |
2, |
, |
6, |
WPPE, |
1, |
, |
1, |
FAS0, |
2, |
FAS1, |
2 |
} |
|
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x02)
{
"device-id", Buffer (0x04)
{
0x81, 0x26, 0x00, 0x00
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0)
}
Добавляем устройства
Все устройства могут находиться или на шине PCI0, если они встроенные,
или на этой же шине, но через мост для порта, в который устройство вставлено Само устройство может называться по-разному:
- видеокарта обычно GFX0, где 0 порядковый номер
-сетевая карта обычно LAN0
-звуковая карта обычно HDEF и т.д.
На примере видеокарты, вставляемой в порт pci express 16x:
GFX добавляется в качестве субустройства к POP на ASUS, и к PEGP или PEX на Gygabite
POP и PEGP, PEX - это pci-мосты для порта, в данном случае pci express 16x
Определить, какое устройство на каком мосту сидит, можно в IORegistryExplorer
Сеть
Пример для ASUS
Код:
Device (P0P1)
{
Name (_ADR, 0x001E0000)
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x0B, 0x04))
}
Method (_PRT, 0, NotSerialized)
{
If (PICM)
{
Return (AR01)
}
Return (PR01)
}
Device (LAN)
{
Name (_ADR, 0x00010000) Name (_SUN, One)
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x06)
{
"built-in", Buffer (One)
{
0x00
},
"device_type", Buffer (0x09)
{
"Ethernet"
},
"model", Buffer (0x35)
{
"Realtek RTL8139/810x Family Fast
Ethernet Controller"
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0)
}
}
}
Device (SBRG)
{
Name (_ADR, 0x001F0000)
Пример для Gigabyte
Код:
Method (_PRT, 0, NotSerialized)
{
If (LNot (PICF))
{
Return (PIC4)
}
Else
{
Return (API4)
}
}
Device (LAN0)
{
Name (_ADR, Zero)
Name (_PRW, Package (0x02)
{
0x0B,
0x04
})
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x08)
{
"built-in", Buffer (One)
{
0x01
},
"device_type", Buffer (0x09)
{
"ethernet"
},
"location", Buffer (0x02)
{
"1"
},
"name", Buffer (0x24)
{
"Realtek RTL8111/8168B PCI-E
Gigabit"
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0)
}
}
}
Device (PEX5)
{
Wi-fi
Пример для ASUS
Код:
Method (_PRT, 0, NotSerialized)
{
If (PICM)
{
Return (AR03)
}
Return (PR03)
}
Device (WLAN)
{
Name (_ADR, Zero) Name (_SUN, One)
Name (_PRW, Package (0x02)
{
0x09,
0x03
})
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x06)
{
"model", Buffer (0x17)
{
"Wireless Broadcom 4311"
},
"device-type", Buffer (0x09)
{
"Ethernet"
},
"built-in", Buffer (One)
{
0x01
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0)
}
OperationRegion (MINP, PCI_Config, Zero, 0x68) Field (MINP, ByteAcc, NoLock, Preserve)
{
Пример для Gigabyte
Код:
Method (_PRW, 0, NotSerialized)
{
Return (Package (0x02)
{
0x0B,
0x05
})
}
}
Device (ARPT)
{
Name (_ADR, 0x00020000) Name (_PRW, Package (0x02)
{
0x09,
0x03
})
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x08)
{
"AAPL,slot-name", Buffer (0x0B)
{
"PCI SLot 3"
},
"device_type", Buffer (0x08)
{
"airport"
},
"name", Buffer (0x19)
{
"Wireless Network Adapter"
},
"model", Buffer (0x0F)
{
"Atheros AR5008"
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0)
}
}
Device (LPCB)
{
Устройство Fire-Wire
Пример для ASUS
Код:
}
Method (_PRT, 0, NotSerialized)
{
If (PICM)
{
Return (AR01)
}
Return (PR01)
}
Device (FRWR)
{
Name (_ADR, 0x00030000) Name (_GPE, 0x18)
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x02)
{
"fwports", Buffer (0x04)
{
0x01, 0x00, 0x00, 0x00
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0)
}
}
}
Device (SBRG)
{
Пример для Gigabyte
Код:
}
Method (_PRW, 0, NotSerialized)
{
Return (Package (0x02)
{
0x0B,
0x05
})
}
Device (FRWR)
{
Name (_ADR, 0x00030000) Name (_GPE, 0x18)
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x02)
{
"fwports", Buffer (0x04)
{
0x01, 0x00, 0x00, 0x00
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0)
}
}
}
Device (LPCB)
{
Звук
Пример для ASUS
Код:
}
Method (NWAK, 1, NotSerialized)
{
}
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 (P0P2)
{
Пример для Gigabyte
Код:
}
Device (PX43)
{
Name (_ADR, 0x001F0003)
OperationRegion (PBAS, PCI_Config, 0x20, 0x02) Field (PBAS, ByteAcc, NoLock, Preserve)
{
BAS0, 16
}
Method (SMBB, 0, NotSerialized)
{
And (BAS0, 0xFFFE, Local0) Return (Local0)
}
}
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)
}
}
Name (BUFA, ResourceTemplate ()
{
Варианты Звука для разнык кодеков
ALC889a
Код:
Device (HDEF)