dieser kleine Fix ist speziell für IHC9 Mainboards gedacht. Er ermöglicht Sleep in 10.5.7/10.5.8. Der PC kann via Maus/Tastatur aufgeweckt werden und der "Gerät entfernt" Error verschwindet.
als erstes fügt ihr eine _DTGP method unter der _WAK method ein (wenn noch nicht vorhanden):
Method (DTGP, 5, NotSerialized)
{
If (LEqual (Arg0, Buffer (0x10)
{
/* 0000 */ 0xC6, 0xB7, 0xB5, 0xA0, 0x18, 0x13, 0x1C, 0x44,
/* 0008 */ 0xB0, 0xC9, 0xFE, 0x69, 0x5E, 0xAF, 0x94, 0x9B
}))
{
If (LEqual (Arg1, One))
{
If (LEqual (Arg2, Zero))
{
Store (Buffer (One)
{
0x03
}, Arg4)
Return (One)
}
If (LEqual (Arg2, One))
{
Return (One)
}
}
}
Store (Buffer (One)
{
0x00
}, Arg4)
Return (One)
}Dann sucht ihr im IOReg. Explorer eure ids von den USB Ports raus siehe Bild:

jetzt geht ihr in eure DSDT und bearbeitet zuerst alle UHCI Ports:
Device (USB0)
{
Name (_ADR, 0x001D0000)
Method (_S3D, 0, NotSerialized)
{
If (LEqual (OSFL, 0x02))
{
Return (0x02)
}
Return (0x03)
}
Name (_PRW, Package (0x02)
{
0x03,
//One in 0x03 ändern (für Wake Up verantwortlich)
0x03
})
//einfügen
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x02)
{
"device-id",
Buffer (0x04)
{
//hier eure Id eintragen (letzten 2 Stellen im IOReg. Exp. unter IOName)
//0x3A steht für ICH10. ICH10 Nutzer können diese Methode weglassen.
0x34, 0x3A, 0x00, 0x00
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}
}Bei manchen Gigabyte Boards wurden 2 Devices vertauscht.US31 muss das sein:
Name (_ADR, 0x001D0003)USB3 das:
Name (_ADR, 0x001A0000)Ihr müsst also evtl. die Device umbenennen.
Als nächstes werden die EHCI Methoden bearbeitet:
Device (USBE)
{
Name (_ADR, 0x001D0007)
Method (_S3D, 0, NotSerialized)
{
If (LEqual (OSFL, 0x02))
{
Return (0x02)
}
Return (0x03)
}
Name (_PRW, Package (0x02)
{
0x0D,
//One in 0x03 ändern (für Wake Up verantwortlich, funktioniert allerdings bei USB2 noch nicht)
0x03
})
//einfügen
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x06)
{
"device-id",
Buffer (0x04)
{
//hier eure Id eintragen (letzten 2 Stellen im IOReg. Exp. unter IOName)
//0x3A steht für ICH10. ICH10 Nutzer können diese Methode weglassen.
0x3A, 0x3A, 0x00, 0x00
},
"AAPL,clock-id",
Buffer (0x01)
{
//0x01 für erstes EHCI Device, 0x02 für zweites
0x01
},
"device_type",
Buffer (0x05)
{
"EHCI"
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}
}Im Anhang noch mal mein DSDT USB Teil.
Viele Grüße tuxianer



Sign In
Create Account









