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:
@@ -7,16 +7,16 @@
|
||||
* B365
|
||||
* H310
|
||||
* H370
|
||||
* Z370 (Gigabtye and AsRock boards with newer BIOS versions)
|
||||
* Z370 (Gigabyte and AsRock boards with newer BIOS versions)
|
||||
* Z390
|
||||
* 400 series (Cometlake)
|
||||
* 495 series (Icelake)
|
||||
|
||||
So on newer Intel 300 series motherboards, manufactueres started pushing for a new type of system clock: **AWAC**( **A** **W**eird **A**ss **C**lock). One small problem, macOS doesn't know what the hell an AWAC clock is instead only familiar with the legacy **RTC**(**R**eal **T**ime **C**lock). So we need to figure out how to bring back the old clock, thats where `SSDT-AWAC` and `SSDT-RTC0` come in:
|
||||
So on newer Intel 300 series motherboards, manufactures started pushing for a new type of system clock: **AWAC**( **A** **W**eird **A**ss **C**lock). One small problem, macOS doesn't know what the hell an AWAC clock is instead only familiar with the legacy **RTC**(**R**eal **T**ime **C**lock). So we need to figure out how to bring back the old clock, thats where `SSDT-AWAC` and `SSDT-RTC0` come in:
|
||||
|
||||
* [SSDT-AWAC](https://github.com/acidanthera/OpenCorePkg/blob/master/Docs/AcpiSamples/SSDT-AWAC.dsl)
|
||||
* Disables AWAC and enables RTC
|
||||
* In your DSDT, there's a varaible called `STAS` used for holding either a `One` or `Zero` to determine which clock to use(`One` for RTC and `Zero` for AWAC)
|
||||
* In your DSDT, there's a variable called `STAS` used for holding either a `One` or `Zero` to determine which clock to use(`One` for RTC and `Zero` for AWAC)
|
||||
|
||||
* [SSDT-RTC0](https://github.com/acidanthera/OpenCorePkg/blob/master/Docs/AcpiSamples/SSDT-RTC0.dsl)
|
||||
* Used for creating a fake RTC device for macOS to play with
|
||||
@@ -33,7 +33,7 @@ To determine whether you need [SSDT-AWAC](https://github.com/acidanthera/OpenCor
|
||||
* If **nothing shows up** then no need to continue and **no need for this SSDT** as you have no AWAC. **Otherwise, continue on!**
|
||||
* If you get a result then you have an `AWAC` system clock present, then continue with the **next search for `STAS`**:
|
||||
|
||||

|
||||

|
||||
|
||||
As you can see we found the `STAS` in our DSDT, this means we're able to force enable our Legacy RTC. In this case, [SSDT-AWAC](https://github.com/acidanthera/OpenCorePkg/blob/master/Docs/AcpiSamples/SSDT-AWAC.dsl) will be used As-Is with no modifications required. Just need to compile. Note that `STAS` may be found in AWAC first instead of RTC like in our example, this is normal.
|
||||
|
||||
@@ -41,7 +41,7 @@ For systems where **no `STAS`** shows up **but** you do have `AWAC`, you can use
|
||||
|
||||
By default the SSDT uses `LPCB`, you can check what your system uses by just searching for `Name (_ADR, 0x001F0000)`. This address is used for Low Pin Count devices(LPC) but the device name can vary between `LPCB`, `LBC` or `LBC0`:
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
## [Now you're ready to compile the SSDT!](/Manual/compile.md)
|
||||
|
||||
@@ -17,6 +17,6 @@ By default it uses `PCI0.LPCB` for the PCI and LowPinCount path. The device name
|
||||
* Finding the PCI path:
|
||||
* Intel: Search `PNP0A08` (If multiple show up, use the first one)
|
||||
|
||||

|
||||

|
||||
|
||||
## [Now you're ready to compile the SSDT!](/Manual/compile.md)
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
CPU naming is fairly easy to figure out as well, open your decompiled DSDT and search for `Processor`. This should give you a result like this:
|
||||
|
||||

|
||||

|
||||
|
||||
As we can see, the first processor in our list is `PR00`. This is what we'll be applying the `plugin-type=1` property too. Now grab [SSDT-PLUG](https://github.com/acidanthera/OpenCorePkg/blob/master/Docs/AcpiSamples/SSDT-PLUG.dsl) and replace the default `CPU0` with our `PR00`. There's a couple things to note:
|
||||
|
||||
@@ -13,11 +13,11 @@ So in our final example, we'd have `_SB_.PR00` and `\_SB.PR00`
|
||||
|
||||
There are also some edge cases with `Processor`, specifically on HEDT series like X79, X99 and X299. This edge case is that the ACPI path is much longer and not so obvious:
|
||||
|
||||

|
||||

|
||||
|
||||
If we then search for instances of `CP00` we find that it's ACPI path is `SB.SCK0.CP00`:
|
||||
|
||||

|
||||

|
||||
|
||||
So for this X299 board, we'd change `\_PR.CPU0` with `\_SB.SCK0.CP00` and `External (_PR_.CPU0, ProcessorObj)` with `External (_SB_.SCK0.CP00, ProcessorObj)`
|
||||
|
||||
|
||||
@@ -36,8 +36,7 @@ Device (_SB.PCI0.SBUS.BUS0) <- Rename this
|
||||
```
|
||||
To find the correct pathing for your devices, grab [Hackintool](https://www.tonymacx86.com/threads/release-hackintool-v3-x-x.254559/) ([Github link](https://github.com/headkaze/Hackintool)) and head to the PCI tab:
|
||||
|
||||

|
||||
|
||||

|
||||
Look for the SMBus device under Subclass, then look beside and you'll see the ACPI path(under IOReg Name). To convert , omit `@...`
|
||||
|
||||
* `/PC00@0/SMBS@1F,4` -> `PC00.SMBS`
|
||||
|
||||
@@ -52,8 +52,9 @@ To find the PCI path of a GPU is fairly simple, best way to find it is running W
|
||||
* Under the Details Tab, search for "Location Paths"
|
||||
* Note some GPUs may be hiding under "BIOS device name"
|
||||
|
||||

|
||||

|
||||

|
||||
|
||||

|
||||
|
||||
|
||||
The second "ACPI" is what we care about:
|
||||
|
||||
@@ -53,9 +53,11 @@ To find the PCI path of a GPU is fairly simple, best way to find it is running W
|
||||
|
||||
* Open Device Manager
|
||||
* Select Display Adapters, then right click your GPU and select Properties
|
||||
* Under the Details Tab, search for "Loaction Paths"
|
||||
* Under the Details Tab, search for "Location Paths"
|
||||
|
||||

|
||||

|
||||
|
||||

|
||||
|
||||
|
||||
The second "ACPI" is what we care about:
|
||||
|
||||
Reference in New Issue
Block a user