Switch to submodule

This commit is contained in:
Dhinak G
2020-12-29 13:30:21 -05:00
parent c0f0e1089e
commit ba5e41e388
32 changed files with 112 additions and 135 deletions

3
.gitmodules vendored Normal file
View File

@@ -0,0 +1,3 @@
[submodule "shared"]
path = shared
url = https://github.com/dortania/build-files.git

View File

@@ -203,7 +203,7 @@ module.exports = {
['/Universal/awac-methods/prebuilt', 'Prebuilt'],
['/Universal/awac-methods/ssdttime', 'SSDTTime'],
['/Universal/awac-methods/manual', 'Manual'],
['/Universal/awac-methods/manual-hedt', 'Manual-HEDT'],
['/Universal/awac-methods/manual-hedt', 'Manual HEDT'],
]
},
['/Universal/nvram', 'NVRAM PMC'],

View File

@@ -32,8 +32,8 @@ Some guidelines when contributing via PRs:
* Tools explicitly banned:
* UniBeast, MultiBeast and KextBeast
* More info can be found here: [Tonymacx86-stance](https://github.com/khronokernel/Tonymcx86-stance)
* Transmac
* Know for creating borked USB drives
* TransMac
* Known for creating borked USB drives
* Niresh Installers
* We'd like to avoid piracy with the guides

View File

@@ -7,10 +7,8 @@ By far the easiest method, all you need to do is download the following file:
* [SSDT-PNLF-CFL.aml](https://github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/compiled/SSDT-PNLF-CFL.aml)
* For Coffee Lake and newer
Main things to note with this method:
* Assumes GPU pathing, works great for 99% of devices but if you're having issues controlling backlight this may be something to look at
* Doesn't really teach you anything
* For most, this doesn't matter. But to some knowing what makes your hackintosh tick is part of the journey

View File

@@ -53,7 +53,7 @@ Once adapted to your config, head to the compile section
## Bumblebee Method
With some machines, the simple `.off` call won't keep the card off properly, that's where the Bumblebee method comes in. This SSDT will actually send the dGPU into D3 state being the lowest power state a device can support. Credit to Mameo for the original adaptation.
With some machines, the simple `.off` call won't keep the card off properly, that's where the Bumblebee method comes in. This SSDT will actually send the dGPU into D3 state being the lowest power state a device can support. Credit to Maemo for the original adaptation.
To start, grab [SSDT-NoHybGfx.dsl](https://github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/decompiled/SSDT-NoHybGfx.dsl.zip)

View File

@@ -5,10 +5,9 @@
* [Compiling the SSDT](#compiling-the-ssdt)
* [Wrapping up](#wrapping-up)
## Finding the ACPI path
Finding the ACPI pathing is quite easy actually, first open your decompiled DSDT you got from [Dumping the DSDT](/Manual/dump.md) and [Decompiling and Compiling](/Manual/compile.md) with either maciASL(if in macOS) or any other text editor if in Windows or Linux(VSCode has an [ACPI extension](https://marketplace.visualstudio.com/items?itemName=Thog.vscode-asl) that can also help).
Finding the ACPI pathing is quite easy actually, first open your decompiled DSDT you got from [Dumping the DSDT](/Manual/dump.md) and [Decompiling and Compiling](/Manual/compile.md) with either MaciASL(if in macOS) or any other text editor if in Windows or Linux(VSCode has an [ACPI extension](https://marketplace.visualstudio.com/items?itemName=Thog.vscode-asl) that can also help).
Next search for `Device (GPI0)`. Should give you a result similar to this:
@@ -38,7 +37,6 @@ Here's some 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`:
## Edits to the sample SSDT
Now that we have our ACPI path, lets grab our SSDT and get to work:

View File

@@ -2,8 +2,7 @@
* [What this SSDT does](#what-this-ssdt-does)
* [Methods to make this SSDT](#methods-to-make-this-ssdt)
## What this SSDT does
This SSDT is used to force enable our GPI0 for VoodooI2C to connect onto.

View File

@@ -2,9 +2,6 @@
So to start, we'll need to get a copy of your DSDT from your firmware. The easiest way is grabbing the DSDT.aml SSDTTime dumped for us earlier but here are some other options:
## From Windows
* [SSDTTime](https://github.com/corpnewt/SSDTTime)
@@ -45,14 +42,14 @@ With OpenCore 0.5.9, we have a new quirk called SysReport which will actually du
For the latter, you just need to replace the following files with [DEBUG version](https://github.com/acidanthera/OpenCorePkg/releases):
* EFI/BOOT/
* `BOOTx64.efi`
* EFI/OC/Bootstrap/
* `Bootstrap.efi`
* EFI/OC/Drivers/
* `OpenRuntime.efi`
* EFI/OC/
* `OpenCore.efi`
* EFI/BOOT/
* `BOOTx64.efi`
* EFI/OC/Bootstrap/
* `Bootstrap.efi`
* EFI/OC/Drivers/
* `OpenRuntime.efi`
* EFI/OC/
* `OpenCore.efi`
For the former, you can actually skip the ACPI section, return to the [OpenCore guide](https://dortania.github.io/OpenCore-Install-Guide/) and finish making the USB. Once booted to the picker, you can shut off the PC and check your USB:
@@ -62,8 +59,8 @@ And voila! You have a DSDT! Now you can continue on with making SSDTs
### UEFI Shell
For this, we'll want to grab [`acpidump.efi`](https://github.com/dortania/OpenCore-Install-Guide/tree/master/extra-files/acpidump.efi.zip) and add this to `EFI/OC/Tools` and in your config under `Misc -> Tools` with the argument: `-b -n DSDT -z` and select this option in OpenCore's picker.
For this, we'll want to grab [`acpidump.efi`](https://github.com/dortania/OpenCore-Install-Guide/tree/master/extra-files/acpidump.efi.zip) and add this to `EFI/OC/Tools` and in your config under `Misc -> Tools` with the argument: `-b -n DSDT -z` and select this option in OpenCore's picker.
If OpenCore is having issues running acpidump.efi from the boot picker, you can call it from the shell with [OpenShell](https://github.com/acidanthera/OpenCorePkg/releases)(reminder to add to both `EFI/OC/Tools` and in your config under `Misc -> Tools` ):
```
@@ -72,7 +69,7 @@ fs0:\> dir // to verify this is the right directory
Directory of fs0:\
01/01/01 3:30p EFI
fs0:\> cd EFI\OC\Tools
fs0:\EFI\OC\Tools> acpidump.efi -b -n DSDT -z
fs0:\EFI\OC\Tools> acpidump.efi -b -n DSDT -z
```
Once done, you should find your DSDT in the EFI/OC/Tools folder with a `.dat` extension. Rename this DSDT.dat file to DSDT.aml to help us down the line

View File

@@ -13,7 +13,7 @@ You can read more about ACPI and it's spec here: [ACPI 6.3 Manual](https://uefi.
macOS can be very picky about the devices present in the DSDT and so our job is to correct it. The main devices that need to be corrected for macOS to work properly:
* Embedded controllers(EC)
* All semi-modern intel machines have an EC (usually called H\_EC, ECDV, EC0, etc...) exposed in their DSDT, with many AMD systems also having it exposed. These controllers are generally not compatible with macOS and can cause panics, so then need to be hidden from macOS. macOS Catalina requires a device named `EC` to be present though, so a dummy EC is created.
* All semi-modern Intel machines have an EC (usually called H\_EC, ECDV, EC0, etc...) exposed in their DSDT, with many AMD systems also having it exposed. These controllers are generally not compatible with macOS and can cause panics, so then need to be hidden from macOS. macOS Catalina requires a device named `EC` to be present though, so a dummy EC is created.
* With laptops, the actual embedded controller still needs to be enabled for battery and hotkeys to work, and renaming the EC can additionally cause issues with windows, so creating a fake EC without disabling the real embedded controller is preferable.
* Plugin type
* This allows the use of XCPM providing native CPU power management on **Intel** Haswell and newer CPUs, the SSDT will connect to the first thread of the CPU. Not meant for AMD

View File

@@ -1,6 +1,5 @@
# Fixing System Clocks on HEDT: Manual
* [Finding the ACPI path](#finding-the-acpi-path)
* [Edits to the sample SSDT](#edits-to-the-sample-ssdt)
* [Compiling the SSDT](#compiling-the-ssdt)
@@ -8,7 +7,7 @@
## Seeing if you need SSDT-RTC0-RANGE
To start, first open your decompiled DSDT you got from [Dumping the DSDT](/Manual/dump.md) and [Decompiling and Compiling](/Manual/compile.md) with either maciASL(if in macOS) or any other text editor if in Windows or Linux(VSCode has an [ACPI extension](https://marketplace.visualstudio.com/items?itemName=Thog.vscode-asl) that can also help).
To start, first open your decompiled DSDT you got from [Dumping the DSDT](/Manual/dump.md) and [Decompiling and Compiling](/Manual/compile.md) with either MaciASL(if in macOS) or any other text editor if in Windows or Linux(VSCode has an [ACPI extension](https://marketplace.visualstudio.com/items?itemName=Thog.vscode-asl) that can also help).
Now search for `PNP0B00` and look at the `_CRS` entry within it:
@@ -23,10 +22,9 @@ Now the problem is that the OEM forgot to mat sections 0x72 and 0x73. Because of
And finally, verify if it has an _STA method as well. This will be used shortly
## Finding the ACPI path
Finding the ACPI pathing is quite easy actually, first open your decompiled DSDT you got from [Dumping the DSDT](/Manual/dump.md) and [Decompiling and Compiling](/Manual/compile.md) with either maciASL(if in macOS) or any other text editor if in Windows or Linux(VSCode has an [ACPI extension](https://marketplace.visualstudio.com/items?itemName=Thog.vscode-asl) that can also help).
Finding the ACPI pathing is quite easy actually, first open your decompiled DSDT you got from [Dumping the DSDT](/Manual/dump.md) and [Decompiling and Compiling](/Manual/compile.md) with either MaciASL(if in macOS) or any other text editor if in Windows or Linux(VSCode has an [ACPI extension](https://marketplace.visualstudio.com/items?itemName=Thog.vscode-asl) that can also help).
To start, search for the following:
@@ -79,8 +77,8 @@ Scope (_SB.PCI0.LPC0.RTC) <- Renamed
Scope (_SB.PCI0.LPC0) <- Renamed
/* <- Remove if your RTC device didn't have an _STA
Scope (RTC)
/* <- Remove if your RTC device didn't have an _STA
Scope (RTC)
{
Method (_STA, 0, NotSerialized) // _STA: Status
{
@@ -94,7 +92,7 @@ Scope (_SB.PCI0.LPC0) <- Renamed
}
}
}
*/ <- Remove if your RTC device didn't have an _STA
*/ <- Remove if your RTC device didn't have an _STA
```
![](../../images/Universal/awac-md/ssdt-after-rename-hedt.png)

View File

@@ -11,7 +11,7 @@
* **Note**: X99 and X299 see [here](../awac-methods/manual-hedt.md)
Finding which SSDT you need is quite easy actually, first open your decompiled DSDT you got from [Dumping the DSDT](/Manual/dump.md) and [Decompiling and Compiling](/Manual/compile.md) with either maciASL(if in macOS) or any other text editor if in Windows or Linux(VSCode has an [ACPI extension](https://marketplace.visualstudio.com/items?itemName=Thog.vscode-asl) that can also help).
Finding which SSDT you need is quite easy actually, first open your decompiled DSDT you got from [Dumping the DSDT](/Manual/dump.md) and [Decompiling and Compiling](/Manual/compile.md) with either MaciASL(if in macOS) or any other text editor if in Windows or Linux(VSCode has an [ACPI extension](https://marketplace.visualstudio.com/items?itemName=Thog.vscode-asl) that can also help).
Next search for `ACPI000E`. You should get something similar:

View File

@@ -31,5 +31,5 @@ For the RTC fix, there are 3 methods you can choose from:
* **Does not support HEDT**
* [Manual](/Universal/awac-methods/manual.md)
* For most users
* [Manual-HEDT](/Universal/awac-methods/manual-hedt.md)
* [Manual HEDT](/Universal/awac-methods/manual-hedt.md)
* For X99 and X299 users

View File

@@ -1,8 +1,8 @@
# Fixing Embedded Controller (SSDT-EC/USBX)
- [Fixing Embedded Controller (SSDT-EC/USBX)](#fixing-embedded-controller-ssdt-ecusbx)
- [What this SSDT does](#what-this-ssdt-does)
- [Methods to make this SSDT](#methods-to-make-this-ssdt)
* [Fixing Embedded Controller (SSDT-EC/USBX)](#fixing-embedded-controller-ssdt-ecusbx)
* [What this SSDT does](#what-this-ssdt-does)
* [Methods to make this SSDT](#methods-to-make-this-ssdt)
## What this SSDT does

View File

@@ -1,17 +1,17 @@
# Fixing Embedded Controllers: Manual
- [Fixing Embedded Controllers: Manual](#fixing-embedded-controllers-manual)
- [Finding the ACPI path](#finding-the-acpi-path)
- [DSDT](#dsdt)
- [DeviceManager](#devicemanager)
- [Edits to the sample SSDT](#edits-to-the-sample-ssdt)
- [Edge Cases](#edge-cases)
- [Multiple PNP0C09's show up](#multiple-pnp0c09s-show-up)
- [No PNP0C09 show up](#no-pnp0c09-show-up)
- [PNP0C09 already named `EC`](#pnp0c09-already-named-ec)
- [PNP0C09 already has an `_STA` method](#pnp0c09-already-has-an-_sta-method)
- [Compiling the SSDT](#compiling-the-ssdt)
- [Wrapping up](#wrapping-up)
* [Fixing Embedded Controllers: Manual](#fixing-embedded-controllers-manual)
* [Finding the ACPI path](#finding-the-acpi-path)
* [DSDT](#dsdt)
* [DeviceManager](#devicemanager)
* [Edits to the sample SSDT](#edits-to-the-sample-ssdt)
* [Edge Cases](#edge-cases)
* [Multiple PNP0C09's show up](#multiple-pnp0c09s-show-up)
* [No PNP0C09 show up](#no-pnp0c09-show-up)
* [PNP0C09 already named `EC`](#pnp0c09-already-named-ec)
* [PNP0C09 already has an `_STA` method](#pnp0c09-already-has-an-_sta-method)
* [Compiling the SSDT](#compiling-the-ssdt)
* [Wrapping up](#wrapping-up)
TO-DO:
@@ -26,7 +26,7 @@ To find the ACPI pathing, you have 2 methods:
### DSDT
Finding the ACPI pathing is quite easy actually, first open your decompiled DSDT you got from [Dumping the DSDT](/Manual/dump.md) and [Decompiling and Compiling](/Manual/compile.md) with either maciASL(if in macOS) or any other text editor if in Windows or Linux(VSCode has an [ACPI extension](https://marketplace.visualstudio.com/items?itemName=Thog.vscode-asl) that can also help).
Finding the ACPI pathing is quite easy actually, first open your decompiled DSDT you got from [Dumping the DSDT](/Manual/dump.md) and [Decompiling and Compiling](/Manual/compile.md) with either MaciASL(if in macOS) or any other text editor if in Windows or Linux(VSCode has an [ACPI extension](https://marketplace.visualstudio.com/items?itemName=Thog.vscode-asl) that can also help).
Next, search for `PNP0C09`. You should get something similar:
@@ -43,18 +43,18 @@ But now we get into edge case territory, what fun!
The main ones to check for are:
- [Fixing Embedded Controllers: Manual](#fixing-embedded-controllers-manual)
- [Finding the ACPI path](#finding-the-acpi-path)
- [DSDT](#dsdt)
- [DeviceManager](#devicemanager)
- [Edits to the sample SSDT](#edits-to-the-sample-ssdt)
- [Edge Cases](#edge-cases)
- [Multiple PNP0C09's show up](#multiple-pnp0c09s-show-up)
- [No PNP0C09 show up](#no-pnp0c09-show-up)
- [PNP0C09 already named `EC`](#pnp0c09-already-named-ec)
- [PNP0C09 already has an `_STA` method](#pnp0c09-already-has-an-_sta-method)
- [Compiling the SSDT](#compiling-the-ssdt)
- [Wrapping up](#wrapping-up)
* [Fixing Embedded Controllers: Manual](#fixing-embedded-controllers-manual)
* [Finding the ACPI path](#finding-the-acpi-path)
* [DSDT](#dsdt)
* [DeviceManager](#devicemanager)
* [Edits to the sample SSDT](#edits-to-the-sample-ssdt)
* [Edge Cases](#edge-cases)
* [Multiple PNP0C09's show up](#multiple-pnp0c09s-show-up)
* [No PNP0C09 show up](#no-pnp0c09-show-up)
* [PNP0C09 already named `EC`](#pnp0c09-already-named-ec)
* [PNP0C09 already has an `_STA` method](#pnp0c09-already-has-an-_sta-method)
* [Compiling the SSDT](#compiling-the-ssdt)
* [Wrapping up](#wrapping-up)
If none of the above apply to you, you're ready for the next section:
@@ -79,7 +79,6 @@ Now that we have our ACPI path, lets grab our SSDT and get to work:
* [SSDT-EC](https://github.com/acidanthera/OpenCorePkg/blob/master/Docs/AcpiSamples/SSDT-EC.dsl)
* For Broadwell and older
Now when opening this SSDT, you'll notice a few things. Mainly:
* Some code is commented out
@@ -110,8 +109,6 @@ Scope (_SB.PC00.LPC0) <- Renamed
![](../../images/Desktops/ssdt-after.png)
## Edge Cases
### Multiple PNP0C09's show up
@@ -132,17 +129,17 @@ When this happens, you'll only need to create a "dummy" EC for macOS.
Try searching for any devices named: "LPCB", "LPC0", "LPC", "SBRG", "PX40". If you have any of these, try using the LPC pathing of each of those device in place of the Embedded Controller's pathing.
Note that **DO NOT** uncomment the EC disaling code as there are no devices that are considered "EC" in your machine.
Note that **DO NOT** uncomment the EC disabling code as there are no devices that are considered "EC" in your machine.
### PNP0C09 already named `EC`
Congrats! No need to create an SSDT-EC! However you will still want USBX if you're skylake or newer.
Congrats! No need to create an SSDT-EC! However you will still want USBX if you're Skylake or newer.
Prebuilt can be grabbed here: [SSDT-USBX.aml](https://github.com/dortania/OpenCore-Post-Install/blob/master/extra-files/SSDT-USBX.aml)
### PNP0C09 already has an `_STA` method
This is the equivalent of not having an EC as we can't control it with our SSDT-EC, instead we'll need to create a "dummy" EC for macOS. You'll still want to find the PCI and LPC pathing for this device. So follow the guide as if you were creating a laptop SSDT-EC/USBX.
This is the equivalent of not having an EC as we can't control it with our SSDT-EC, instead we'll need to create a "dummy" EC for macOS. You'll still want to find the PCI and LPC pathing for this device. So follow the guide as if you were creating a laptop SSDT-EC/USBX.
Example of an EC with STA already:

View File

@@ -7,7 +7,7 @@
## Finding the ACPI device
Finding the ACPI pathing is quite easy actually, first open your decompiled DSDT you got from [Dumping the DSDT](/Manual/dump.md) and [Decompiling and Compiling](/Manual/compile.md) with either maciASL(if in macOS) or any other text editor if in Windows or Linux(VSCode has an [ACPI extension](https://marketplace.visualstudio.com/items?itemName=Thog.vscode-asl) that can also help).
Finding the ACPI pathing is quite easy actually, first open your decompiled DSDT you got from [Dumping the DSDT](/Manual/dump.md) and [Decompiling and Compiling](/Manual/compile.md) with either MaciASL(if in macOS) or any other text editor if in Windows or Linux(VSCode has an [ACPI extension](https://marketplace.visualstudio.com/items?itemName=Thog.vscode-asl) that can also help).
Next, search for the following devices:
@@ -21,7 +21,6 @@ If none of the 3 show up, you'll need to create an SSDT-IMEI.
The rest of this page will however assume none of those 3 devices showed up.
## Compiling the SSDT
So there's actually no edits required to SSDT-IMEI, you can either grab the source code and compile yourself or use the prebuilt
@@ -30,7 +29,6 @@ So there's actually no edits required to SSDT-IMEI, you can either grab the sour
* [SSDT-IMEI's source code](https://github.com/acidanthera/OpenCorePkg/blob/master/Docs/AcpiSamples/SSDT-IMEI.dsl)
With the SSDT done, you're now [ready to compile the SSDT!](/Manual/compile.md)
## Wrapping up

View File

@@ -1,8 +1,8 @@
# Fixing IMEI (SSDT-IMEI)
- [Fixing IMEI (SSDT-IMEI)](#fixing-imei-ssdt-imei)
- [What this SSDT does](#what-this-ssdt-does)
- [Methods to make this SSDT](#methods-to-make-this-ssdt)
* [Fixing IMEI (SSDT-IMEI)](#fixing-imei-ssdt-imei)
* [What this SSDT does](#what-this-ssdt-does)
* [Methods to make this SSDT](#methods-to-make-this-ssdt)
## What this SSDT does
@@ -12,11 +12,10 @@ The purpose of SSDT-IMEI is:
* The same applies when mixing Sandy Bridge motherboards with 7 series motherboards
* An extra issue that may pop up is that the IMEI won't appear in ACPI, which can lead to more issues as macOS expects there to be an ACPI device to apply device-id's. So to resolve, we'll want to verify if we have an IMEI device, and if not create a new device.
## Methods to make this SSDT
For the IMEI fix, there are 2 methods you can choose from:
* [Prebuilt](/Universal/imei-methods/prebuilt.md)
* The prebuilt are a bit bloated. It's recommended to use the method below.
* [Manual](/Universal/imei-methods/manual.md)
* [Manual](/Universal/imei-methods/manual.md)

View File

@@ -7,7 +7,7 @@
## Finding the ACPI path
Finding the ACPI pathing is quite easy actually, first open your decompiled DSDT you got from [Dumping the DSDT](/Manual/dump.md) and [Decompiling and Compiling](/Manual/compile.md) with either maciASL(if in macOS) or any other text editor if in Windows or Linux(VSCode has an [ACPI extension](https://marketplace.visualstudio.com/items?itemName=Thog.vscode-asl) that can also help).
Finding the ACPI pathing is quite easy actually, first open your decompiled DSDT you got from [Dumping the DSDT](/Manual/dump.md) and [Decompiling and Compiling](/Manual/compile.md) with either MaciASL(if in macOS) or any other text editor if in Windows or Linux(VSCode has an [ACPI extension](https://marketplace.visualstudio.com/items?itemName=Thog.vscode-asl) that can also help).
Next, search for the following:

View File

@@ -2,7 +2,7 @@
* [What this SSDT does](#what-this-ssdt-does)
* [Methods to make this SSDT](#methods-to-make-this-ssdt)
## What this SSDT does
This SSDT is required for all "true" 300 series motherboards(Z370 is excluded), it specifically brings back NVRAM support and requires very little configuration for the end user.
@@ -10,7 +10,7 @@ This SSDT is required for all "true" 300 series motherboards(Z370 is excluded),
* B360
* B365
* H310
* H370(HM370shouldn't require this)
* H370 (HM370 shouldn't require this)
* Z390
10th gen motherboards **do not** need this SSDT, NVRAM's native on these platforms.
@@ -21,4 +21,4 @@ The main ways to make this SSDT:
* [Prebuilt](/Universal/nvram-methods/prebuilt.md)
* [SSDTTime](/Universal/nvram-methods/ssdttime.md)
* [Manual](/Universal/nvram-methods/manual.md)
* [Manual](/Universal/nvram-methods/manual.md)

View File

@@ -16,7 +16,7 @@ To find the ACPI pathing, you have 2 methods:
### DSDT
CPU naming is fairly easy to figure out, first open your decompiled DSDT you got from [Dumping the DSDT](/Manual/dump.md) and [Decompiling and Compiling](/Manual/compile.md) with either maciASL(if in macOS) or any other text editor if in Windows or Linux(VSCode has an [ACPI extension](https://marketplace.visualstudio.com/items?itemName=Thog.vscode-asl) that can also help).
CPU naming is fairly easy to figure out, first open your decompiled DSDT you got from [Dumping the DSDT](/Manual/dump.md) and [Decompiling and Compiling](/Manual/compile.md) with either MaciASL(if in macOS) or any other text editor if in Windows or Linux(VSCode has an [ACPI extension](https://marketplace.visualstudio.com/items?itemName=Thog.vscode-asl) that can also help).
Next search for `Processor`. This should give you a result like this:
@@ -26,7 +26,7 @@ As we can see, the first processor in our list is `SB.PR00`. This is what we'll
**X99 and X299 note**:
Due to the different DSDT structure of these systems, you'll need to to actually check in multiple places as the pathing isn't as obvious:
Due to the different DSDT structure of these systems, you'll need to actually check in multiple places as the pathing isn't as obvious:
![](../../images/Universal/plug-md/processor-2.png)

View File

@@ -1,8 +1,8 @@
# Fixing Power Management (SSDT-PLUG)
- [Fixing Power Management (SSDT-PLUG)](#fixing-power-management-ssdt-plug)
- [What this SSDT does](#what-this-ssdt-does)
- [Methods to make this SSDT](#methods-to-make-this-ssdt)
* [Fixing Power Management (SSDT-PLUG)](#fixing-power-management-ssdt-plug)
* [What this SSDT does](#what-this-ssdt-does)
* [Methods to make this SSDT](#methods-to-make-this-ssdt)
## What this SSDT does
@@ -10,7 +10,7 @@ The purpose of SSDT-PLUG is to allow the kernel's XCPM(XNU's CPU Power Managemen
**Note**: SSDT-PLUG is only compatible with Intel's Haswell and newer CPUs, Sandy Bridge and Ivy Bridge will need to follow the [ssdtPRgen method](https://dortania.github.io/OpenCore-Post-Install/universal/pm.html#sandy-and-ivy-bridge-power-management)(in post-install) while AMD users should not use this(unless attempting to attach AGPM which is outside the scope of Dortania's guides)
* Ivy Bridge-E(HEDT/server) however is supported by XCPM
* Ivy Bridge-E(HEDT/server) however is supported by XCPM
## Methods to make this SSDT

View File

@@ -7,7 +7,7 @@
## Finding the ACPI path
Finding the ACPI pathing is quite easy actually, first open your decompiled DSDT you got from [Dumping the DSDT](/Manual/dump.md) and [Decompiling and Compiling](/Manual/compile.md) with either maciASL(if in macOS) or any other text editor if in Windows or Linux(VSCode has an [ACPI extension](https://marketplace.visualstudio.com/items?itemName=Thog.vscode-asl) that can also help).
Finding the ACPI pathing is quite easy actually, first open your decompiled DSDT you got from [Dumping the DSDT](/Manual/dump.md) and [Decompiling and Compiling](/Manual/compile.md) with either MaciASL(if in macOS) or any other text editor if in Windows or Linux(VSCode has an [ACPI extension](https://marketplace.visualstudio.com/items?itemName=Thog.vscode-asl) that can also help).
Next, search for the `Device (RHUB)`

View File

@@ -49,22 +49,24 @@ The specifics are due to [Endianness](https://en.wikipedia.org/wiki/Endianness)
### Linux
If you can run Linux, use command `lspci -vmmnnD -d 1002::0300`
```
$ lspci -vmmnnD -d 1002::0300
Slot: 0000:01:00.0
Class: VGA compatible controller [0300]
Vendor: Advanced Micro Devices, Inc. [AMD/ATI] [1002]
Device: Oland [Radeon HD 8570 / R7 240/340 / Radeon 520 OEM] [6611]
SVendor: Micro-Star International Co., Ltd. [MSI] [1462]
SDevice: Device [3740]
Rev: 87
Slot: 0000:01:00.0
Class: VGA compatible controller [0300]
Vendor: Advanced Micro Devices, Inc. [AMD/ATI] [1002]
Device: Oland [Radeon HD 8570 / R7 240/340 / Radeon 520 OEM] [6611]
SVendor: Micro-Star International Co., Ltd. [MSI] [1462]
SDevice: Device [3740]
Rev: 87
```
You can easily get
- Slot ID `0000:01:00.0`, we need it later
- Vendor ID `1002`, all AMD devices have this ID
- Device ID `6611`, this is what we care about
- Device name `Radeon HD 8570 / R7 240/340 / Radeon 520 OEM`, mainly cosmetic
* Slot ID `0000:01:00.0`, we need it later
* Vendor ID `1002`, all AMD devices have this ID
* Device ID `6611`, this is what we care about
* Device name `Radeon HD 8570 / R7 240/340 / Radeon 520 OEM`, mainly cosmetic
## Finding the ACPI Path of the GPU

View File

@@ -11,7 +11,6 @@ Super simple, just grab the SSDT and compile:
* [SSDT-UNC.dsl](https://github.com/acidanthera/OpenCorePkg/blob/master/Docs/AcpiSamples/SSDT-UNC.dsl)
See here how to compile: [Compiling ACPI](/Manual/compile.md)
## Wrapping up

View File

@@ -2,7 +2,7 @@
* [What this SSDT does](#what-this-ssdt-does)
* [Methods to make this SSDT](#methods-to-make-this-ssdt)
## What this SSDT does
This SSDT is required for all X99 and many X79 boards, it specifically disables unused devices in ACPI ensuing IOPCIFamily doesn't kernel panic. This requires very little configuration for the end user.
@@ -17,4 +17,4 @@ This SSDT is required for all X99 and many X79 boards, it specifically disables
The main ways to make this SSDT:
* [Prebuilt](/Universal/unc0-methods/prebuilt.md)
* [Manual](/Universal/unc0-methods/manual.md)
* [Manual](/Universal/unc0-methods/manual.md)

View File

@@ -1,6 +1,6 @@
# Cleanup
So you've made all your SSDTs but now there's one thing left: Adding them to Opencore
So you've made all your SSDTs but now there's one thing left: Adding them to OpenCore
The 2 main locations:

View File

@@ -15,18 +15,18 @@
"dev": "vuepress dev",
"build": "vuepress build",
"fix-lint": "run-script-os",
"fix-lint:default": "(echo Attempting to fix lint... && markdownlint '**/*.md' -f && echo Fixed successfully, please commit.) || (echo Fix failed! && exit 1)",
"fix-lint:win32": "(echo Attempting to fix lint... && markdownlint **/*.md -f && echo Fixed successfully, please commit.) || (echo Fix failed! && exit 1)",
"fix-lint:default": "(echo Attempting to fix lint... && markdownlint -c shared/.markdownlint.json -p shared/.markdownlintignore '**/*.md' -f && echo Fixed successfully, please commit.) || (echo Fix failed! && exit 1)",
"fix-lint:win32": "(echo Attempting to fix lint... && markdownlint -c shared/.markdownlint.json -p shared/.markdownlintignore **/*.md -f && echo Fixed successfully, please commit.) || (echo Fix failed! && exit 1)",
"lint": "run-script-os",
"lint:default": "(echo Linting... && markdownlint '**/*.md' && echo Lint passed.) || (echo Lint failed! Please review and fix errors. && exit 1)",
"lint:win32": "(echo Linting... && markdownlint **/*.md && echo Lint passed.) || (echo Lint failed! Please review and fix errors. && exit 1)",
"lint:default": "(echo Linting... && markdownlint -c shared/.markdownlint.json -p shared/.markdownlintignore '**/*.md' && echo Lint passed.) || (echo Lint failed! Please review and fix errors. && exit 1)",
"lint:win32": "(echo Linting... && markdownlint -c shared/.markdownlint.json -p shared/.markdownlintignore **/*.md && echo Lint passed.) || (echo Lint failed! Please review and fix errors. && exit 1)",
"lint-ci": "run-script-os",
"lint-ci:default": "(echo Linting... && markdownlint '**/*.md' && echo Lint passed.) || ((echo Lint failed, attempting fix... && markdownlint '**/*.md' -f && echo Fix generated successfully. Please apply the following diff using git apply && git diff) || echo Fix failed! && exit 1)",
"lint-ci:win32": "(echo Linting... && markdownlint **/*.md && echo Lint passed.) || ((echo Lint failed, attempting fix... && markdownlint **/*.md -f && echo Fix generated successfully. Please apply the following diff using git apply && git diff) || echo Fix failed! && exit 1)",
"sort-dict": "node ./scripts/sortDict.js",
"lint-ci:default": "(echo Linting... && markdownlint -c shared/.markdownlint.json -p shared/.markdownlintignore '**/*.md' && echo Lint passed.) || ((echo Lint failed, attempting fix... && markdownlint -c shared/.markdownlint.json -p shared/.markdownlintignore '**/*.md' -f && echo Fix generated successfully. Please apply the following diff using git apply && git diff) || echo Fix failed! && exit 1)",
"lint-ci:win32": "(echo Linting... && markdownlint -c shared/.markdownlint.json -p shared/.markdownlintignore **/*.md && echo Lint passed.) || ((echo Lint failed, attempting fix... && markdownlint -c shared/.markdownlint.json -p shared/.markdownlintignore **/*.md -f && echo Fix generated successfully. Please apply the following diff using git apply && git diff) || echo Fix failed! && exit 1)",
"sort-dict": "node ./shared/scripts/sortDict.js",
"spellcheck": "run-script-os",
"spellcheck:default": "(spellchecker --plugins spell indefinite-article repeated-words syntax-urls --dictionaries dictionary/dictionary.txt dictionary/opencorekeys.txt --files '**/*.md' && echo Spellcheck passed.) || (echo Spellcheck failed! Please review and fix errors/add words to dictionary as needed. && exit 1)",
"spellcheck:win32": "(spellchecker --plugins spell indefinite-article repeated-words syntax-urls --dictionaries dictionary/dictionary.txt dictionary/opencorekeys.txt --files **/*.md && echo Spellcheck passed.) || (echo Spellcheck failed! Please review and fix errors/add words to dictionary as needed. && exit 1)",
"spellcheck:default": "(spellchecker --plugins spell indefinite-article repeated-words syntax-urls --dictionaries shared/dictionary/dictionary.txt shared/dictionary/opencorekeys.txt --files '**/*.md' && echo Spellcheck passed.) || (echo Spellcheck failed! Please review and fix errors/add words to dictionary as needed. && exit 1)",
"spellcheck:win32": "(spellchecker --plugins spell indefinite-article repeated-words syntax-urls --dictionaries shared/dictionary/dictionary.txt shared/dictionary/opencorekeys.txt --files **/*.md && echo Spellcheck passed.) || (echo Spellcheck failed! Please review and fix errors/add words to dictionary as needed. && exit 1)",
"test": "run-script-os",
"test:default": "npm run lint --silent; npm run spellcheck --silent",
"test:win32": "npm run lint --silent & npm run spellcheck --silent"

1
shared Submodule

Submodule shared added at 9158b82160

View File

@@ -31,7 +31,7 @@ What are all these options?:
* IRQ patching, mainly needed for X79, X99 and laptop users(use option `C` to omit conflicting legacy IRQs)
* `2. FakeEC - OS-aware Fake EC`
* This is the SSDT-EC, required for Catalina users
* `3. FakeEC Laptop - OS-aware Fake EC`
* `3. FakeEC Laptop - OS-aware Fake EC`
* This is the SSDT-EC, but the laptop version only Builds Fake EC and leaves the existing EC devices untouched, again required for Catalina users
* `4. PluginType - Sets plugin-type = 1 on First ProcessorObj`
* This is the SSDT-PLUG, for Intel only
@@ -44,7 +44,6 @@ What are all these options?:
* `8. Dump DSDT - Automatically dump the system DSDT`
* Dumps your DSDT from your firmware
What we want to do is select option `8. Dump DSDT` first, then select the appropriate option(s) for your system.
> What about USBX?
@@ -55,12 +54,12 @@ For Skylake and newer plus AMD, you can grab a pre-built file here: [SSDT-USBX.a
## Adding to OpenCore
Don't forget that SSDTs need to be added to Opencore, reminder that .aml is complied, .dsl is code. **Add only the .aml file**:
Don't forget that SSDTs need to be added to OpenCore, reminder that .aml is complied, .dsl is code. **Add only the .aml file**:
* EFI/OC/ACPI
* config.plist -> ACPI -> Add
Reminder that Cmd/Crtl+R with ProperTree pointed at your OC folder will add all your SSDTs, kexts and .efi drivers to the config for you. **Do not add your DSDT to OpenCore, its already in your firmware**. If you are unsure what this is referring to, go back to the OpenCore guide and select your config based of the architecture of your CPU.
Reminder that Cmd/Ctrl+R with ProperTree pointed at your OC folder will add all your SSDTs, kexts and .efi drivers to the config for you. **Do not add your DSDT to OpenCore, its already in your firmware**. If you are unsure what this is referring to, go back to the OpenCore guide and select your config based of the architecture of your CPU.
For those who do not yet have a config.plist, you'll want to next head back to your respective OpenCore guides and create the config.plist:

View File

@@ -4,7 +4,7 @@ Well sadly some things are not handled by SSDTTime, well have no fear as making
* Dump DSDT(the one SSDTTime did for use will work)
* Decompile DSDT
* Make SSDTs based of of it(You'll need either MaciASL or a text editor for this)
* Make SSDTs based off of it(You'll need either MaciASL or a text editor for this)
* Compile SSDTs
Now continue forth and master the ways of ACPI!

View File

@@ -4,11 +4,11 @@ Creating SSDTs mainly fall into 3 camps:
* [Prebuilt SSDTs](../ssdt-methods/ssdt-prebuilt.md)
* They're universal but don't teach much
* For most users, we recommend this as it does not require any compling
* For most users, we recommend this as it does not require any compiling
* [Automated tools](../ssdt-methods/ssdt-easy.md)
* Mainly seen with SSDTTime, work much better than prebuilts as there's less bloat however doesn't teach you much
* [Manually creating them](../ssdt-methods/ssdt-long.md)
* Will always work, be much cleaner and get to learn about the process
* However requires you to deal with code
If you're not comfortable with editing and compiling code, we recommend the [prebuilt option](../ssdt-methods/ssdt-prebuilt.md)
If you're not comfortable with editing and compiling code, we recommend the [prebuilt option](../ssdt-methods/ssdt-prebuilt.md)

View File

@@ -1,4 +1,4 @@
# Pre-Built SSDTs
# Prebuilt SSDTs
Simply select your hardware type and generation, then download the associated files. Once downloaded, place them in your EFI under EFI/OC/ACPI and head back to [config.plist Setup](https://dortania.github.io/OpenCore-Install-Guide/config.plist/)
@@ -66,7 +66,6 @@ SSDT-EC:
* Required Ivy Bridge CPU with 6 series motherboard
* ie. H61, B65, Q65, P67, H67, Q67, Z68
Once downloaded, place them into your EFI folder under EFI/OC/ACPI and head back to the install guide
* [config.plist Setup](https://dortania.github.io/OpenCore-Install-Guide/config.plist/)
@@ -215,10 +214,8 @@ SSDT-RHUB:
:::
## Intel Laptop SSDTs
### Laptop Clarksfield and Arrandale
::: tip SSDTs required
@@ -503,10 +500,8 @@ SSDT-XOSI:
* Enables many Windows-only functionality in macOS
* Requires XOSI patch(covered later on)
:::
## Intel HEDT SSDTs
### Nehalem and Westmere
@@ -529,10 +524,8 @@ SSDT-EC:
:::
### Sandy and Ivy Bridge-E
::: tip SSDTs required
* [SSDT-PLUG-DRTNIA](https://github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/compiled/SSDT-PLUG-DRTNIA.aml)
@@ -632,7 +625,6 @@ SSDT-RTC0-RANGE-HEDT:
:::
## AMD SSDTs
### AMD Bulldozer/Jaguar
@@ -684,6 +676,3 @@ SSDT-CPUR:
* Used for fixing CPU definitions in ACPI, as macOS does not properly support the ACPI used in B550 and newer boards
:::

View File

@@ -59,16 +59,16 @@ Acpi table [DSDT] successfully installed and loaded
Pass 1 parse of [DSDT]
```
This is a common error on DSDTs that have methods that aren't supported by maciASL, the easiest way is to delete maciASL and make sure you grab it from Acidanthera's repo: [maciASL](https://github.com/acidanthera/MaciASL/releases)
This is a common error on DSDTs that have methods that aren't supported by MaciASL, the easiest way is to delete MaciASL and make sure you grab it from Acidanthera's repo: [MaciASL](https://github.com/acidanthera/MaciASL/releases)
## Invalid character (0x3D), expecting ASL keyword or name
![](/troubleshooting-md/invalid-parse.png)
Similar to the above error, you're running an outdated copy of maciASL. Make sure you're using the latest from Acidanthera's repo: [maciASL](https://github.com/acidanthera/MaciASL/releases)
Similar to the above error, you're running an outdated copy of MaciASL. Make sure you're using the latest from Acidanthera's repo: [MaciASL](https://github.com/acidanthera/MaciASL/releases)
## Syntax error, unexpected PARSEOP_ONE, expecting '('
![](/troubleshooting-md/invalid-parse.png)
Similar to the above 2 errors, you're running an outdated copy of maciASL. Make sure you're using the latest from Acidanthera's repo: [maciASL](https://github.com/acidanthera/MaciASL/releases)
Similar to the above 2 errors, you're running an outdated copy of MaciASL. Make sure you're using the latest from Acidanthera's repo: [MaciASL](https://github.com/acidanthera/MaciASL/releases)