mirror of
https://github.com/AskDavis/Getting-Started-With-ACPI.git
synced 2026-01-01 05:05:57 -08:00
Misc Fixes
- Inital lint'ing - Clean up README.md table - Add CONTRIBUTING.md - Add TROUBLESHOOTING.md
This commit is contained in:
@@ -8,8 +8,7 @@ With most modern laptop DSDTs, there's a variable called `GPEN` or `GPHD` which
|
||||
|
||||
So first things we need to do is find out what variable is used to enable our GPI0 device, lets open up our decompiled SSDT and search for `Device (GPI0)`. Should give you a desult similar to this:
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
What we care about from this is the `_STA` method:
|
||||
|
||||
@@ -24,24 +23,25 @@ Method (_STA, 0, NotSerialized)
|
||||
Return (0x0F)
|
||||
}
|
||||
```
|
||||
|
||||
What we want is for this to always return `0x0F` when booting macOS, so we want to make an SSDT that will return `GPHD == Zero` in macOS.
|
||||
|
||||
**NOTE that you may have the other way around where GPHD needs to be set as `One` to return `0x0F`**. And your device name may also be different, don't throw random SSDTs in thinking it'll work
|
||||
|
||||
Once you found the variable and what it should be set to, grab a copy of [SSDT-GPI0.dsl](https://github.com/khronokernel/Getting-Started-With-ACPI/blob/master/extra-files/SSDT-GPI0.dsl) and make the required edits. Then clean up with compiling it
|
||||
|
||||
## More examples
|
||||
|
||||
## More examples:
|
||||
|
||||

|
||||

|
||||
|
||||
With this example, we can see that we need both `SBRG` and `GPEN` to return `One`. If only one is present, it'll create some issues so in our SSDT we'll want to have both of them return `One`:
|
||||
|
||||
```
|
||||
DefinitionBlock("", "SSDT", 2, "ACDT", "GPI0", 0)
|
||||
{
|
||||
External(GPEN, FieldUnitObj)
|
||||
External(SBRG, FieldUnitObj)
|
||||
|
||||
|
||||
Scope (\)
|
||||
{
|
||||
If (_OSI ("Darwin"))
|
||||
|
||||
Reference in New Issue
Block a user