mirror of
https://github.com/AskDavis/Getting-Started-With-ACPI.git
synced 2025-12-31 20:55:58 -08:00
I2C Trackpad improvements (#42)
This commit is contained in:
3
.gitmodules
vendored
3
.gitmodules
vendored
@@ -1,3 +0,0 @@
|
|||||||
[submodule "shared"]
|
|
||||||
path = shared
|
|
||||||
url = https://github.com/dortania/build-files.git
|
|
||||||
14
.markdownlint.json
Normal file
14
.markdownlint.json
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{
|
||||||
|
"default": true,
|
||||||
|
"line_length": false,
|
||||||
|
"no-alt-text": false,
|
||||||
|
"no-inline-html": false,
|
||||||
|
"header-increment": false,
|
||||||
|
"no-duplicate-header": false,
|
||||||
|
"fenced-code-language": false,
|
||||||
|
"no-emphasis-as-heading": false,
|
||||||
|
"single-title": false,
|
||||||
|
"ul-style": {
|
||||||
|
"style": "asterisk"
|
||||||
|
}
|
||||||
|
}
|
||||||
10
.markdownlintignore
Normal file
10
.markdownlintignore
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
/node_modules/
|
||||||
|
/_book/
|
||||||
|
*.json
|
||||||
|
/extra-files/
|
||||||
|
/.git/
|
||||||
|
/icons/
|
||||||
|
/images/
|
||||||
|
/styles/
|
||||||
|
/.github/
|
||||||
|
/.vuepress/
|
||||||
@@ -160,7 +160,6 @@ module.exports = {
|
|||||||
collapsable: true,
|
collapsable: true,
|
||||||
sidebarDepth: 2,
|
sidebarDepth: 2,
|
||||||
children: [
|
children: [
|
||||||
['/Laptops/trackpad-methods/prebuilt', 'Prebuilt'],
|
|
||||||
['/Laptops/trackpad-methods/manual', 'Manual'],
|
['/Laptops/trackpad-methods/manual', 'Manual'],
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -1,16 +1,50 @@
|
|||||||
# Fixing Trackpads: Manual
|
# Fixing Trackpads: Manual
|
||||||
|
|
||||||
* [Finding the ACPI path](#finding-the-acpi-path)
|
* [Checking GPI0](#checking-gpio)
|
||||||
* [Edits to the sample SSDT](#edits-to-the-sample-ssdt)
|
* [Edits to the sample SSDT](#edits-to-the-sample-ssdt)
|
||||||
* [Compiling the SSDT](#compiling-the-ssdt)
|
* [Enabling Trackpad](#enabling-trackpad)
|
||||||
* [Wrapping up](#wrapping-up)
|
* [Wrapping up](#wrapping-up)
|
||||||
|
|
||||||
## Finding the ACPI path
|
## Checking GPI0
|
||||||
|
|
||||||
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).
|
This page assumes that you have macOS installed as well as [IORegistryExplorer](https://github.com/khronokernel/IORegistryClone/blob/master/ioreg-302.zip).
|
||||||
|
|
||||||
Next search for `Device (GPI0)`. Should give you a result similar to this:
|
The first thing to check is whether the GPI0 device exists, which is required for VoodooI2C. The best way to check this is working is to use IORegistryExplorer.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Here, we can see that VoodooGPIO is attached to GPI0 so no edits are needed for GPI0. If this is the case for you, you can skip to the [next section](#enabling-trackpad).
|
||||||
|
|
||||||
|
If VoodooGPIO isn't attached, then you may need to modify some values to enable the `GPI0` device. In that case, you will need to find the GPI0 device in your DSDT.
|
||||||
|
|
||||||
|
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)`. You should get a result similar to this:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Below is the `_STA` method, which enables or disable the GPI0 device:
|
||||||
|
|
||||||
|
```
|
||||||
|
Method (_STA, 0, NotSerialized)
|
||||||
|
{
|
||||||
|
If ((SBRG == Zero))
|
||||||
|
{
|
||||||
|
Return (Zero)
|
||||||
|
}
|
||||||
|
|
||||||
|
If ((GPEN == Zero))
|
||||||
|
{
|
||||||
|
Return (Zero)
|
||||||
|
}
|
||||||
|
|
||||||
|
Return (0x0F)
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
We want the value returned from _STA to be non-zero (0x0F in this case) to enable the `GPI0` device. If either `SBRG` or `GPEN` is equal to zero, then zero will be returned and `GPI0` will be disabled. Generally, `SBRG` should not be modified, as modifying it can break the `GPI0` device. Only modify `GPEN` if you need to enable the `GPI0` device.
|
||||||
|
|
||||||
|
Here's some more examples:
|
||||||

|

|
||||||
|
|
||||||
What we care about from this is the `_STA` method:
|
What we care about from this is the `_STA` method:
|
||||||
@@ -27,58 +61,137 @@ Method (_STA, 0, NotSerialized)
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
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.
|
Here we would want to set `GPHD` to `Zero` so that 0x0F is returned.
|
||||||
|
|
||||||
**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
|
|
||||||
|
|
||||||
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
|
## Edits to the sample SSDT
|
||||||
|
|
||||||
Now that we have our ACPI path, lets grab our SSDT and get to work:
|
Now that we know what variables need to be changed, lets grab our SSDT and get to work:
|
||||||
|
|
||||||
* [SSDT-GPI0.dsl](https://github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/decompiled/SSDT-GPI0.dsl)
|
* [SSDT-GPI0.dsl](https://github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/decompiled/SSDT-GPI0.dsl)
|
||||||
|
|
||||||
From the second example, we'll want to set both GPEN and SBRG to `One` to allow it to operate in macOS:
|
From the first example, we'll want to set GPEN to `One` to allow it to operate in macOS:
|
||||||
|
|
||||||
**Before**:
|
```
|
||||||
|
// This is likely already set in the SSDT-GPIO you just downloaded
|
||||||
|
If (_OSI ("Darwin"))
|
||||||
|
{
|
||||||
|
GPEN = One
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
For the second example, you'd want to remove GPEN and use the below:
|
||||||
|
|
||||||
```
|
```
|
||||||
If (_OSI ("Darwin"))
|
If (_OSI ("Darwin"))
|
||||||
{
|
{
|
||||||
GPEN = One <- Proper variables
|
GPHD = Zero
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||

|
You will want to test the SSDT at this point by [compiling the SSDT](/Manual/compile.md) and adding it to your config.plist. VoodooGPIO should now be attached to the GPI0 device as shown at the top of the GPI0 section. If your trackpad still doesn't work after enabling the `GPI0` device, move on to the next section.
|
||||||
|
|
||||||
Following the example pathing we found, the SSDT should look something like this:
|
## Enabling Trackpad
|
||||||
|
|
||||||
**After**:
|
Often times, the I2C devices check to see if they are running in Windows before enabling themselves. Similarly to the `GPI0` device, these devices contain a `_STA` method.
|
||||||
|
|
||||||
|
::: details _STA Example (Optional)
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
The part we care about is the `_STA` method:
|
||||||
|
|
||||||
```
|
```
|
||||||
|
Method (_STA, 0, NotSerialized) // _STA: Status
|
||||||
External(GPEN, FieldUnitObj) <- Declare the right variables
|
|
||||||
External(SBRG, FieldUnitObj) <- Declare the right variables
|
|
||||||
|
|
||||||
Scope (\)
|
|
||||||
{
|
{
|
||||||
If (_OSI ("Darwin"))
|
Return (LSTA (SMD1))
|
||||||
{
|
}
|
||||||
GPEN = One <- Change to the right variables
|
|
||||||
SBRG = One <- Change to the right variables
|
|
||||||
}
|
|
||||||
```
|
```
|
||||||
|
|
||||||

|
In this case, `_STA` is referring to another method, `LSTA`. If we search for `Method (LSTA`, we'll see the below:
|
||||||
|
|
||||||
## Compiling the SSDT
|
```
|
||||||
|
Method (LSTA, 1, Serialized)
|
||||||
|
{
|
||||||
|
If (((Arg0 == 0x00) || (Arg0 == 0x03)))
|
||||||
|
{
|
||||||
|
Return (0x00)
|
||||||
|
}
|
||||||
|
|
||||||
With the SSDT done, you're now [ready to compile the SSDT!](/Manual/compile.md)
|
If (CondRefOf (OSYS))
|
||||||
|
{
|
||||||
|
If ((OSYS < 0x07DC))
|
||||||
|
{
|
||||||
|
Return (0x00)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Return (0x0F)
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
The value `OSYS`, stores information about the current OS running. We will want to look for any place in which `OSYS` is set (`OSYS = 0x07DC` for example). In this DSDT, this is set under `\_SB.PCI0._INI` as shown below:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
There are various checks for many different versions of Windows, but there is no check for `Darwin` (which Apple's ACPI usually checks for). We generally want to set `OSYS` to the highest possible value to enable the most features. In this case, the highest value is set when the version of Windows is "Windows 2015", or [Windows 10](https://docs.microsoft.com/en-us/windows-hardware/drivers/acpi/winacpi-osi#_osi-strings-for-windows-operating-systems). This means that we should set `OSYS` to `0x07DF`. Notice that this value is greater than `0x07DC`, which is the value that was checked for earlier. If we set `OSYS` to `0x07DF`, then the check in LSTA should return `0x0F`.
|
||||||
|
|
||||||
|
:::
|
||||||
|
|
||||||
|
The best way to patch these checks is to use _OSI to XOSI with SSDT-XOSI. You can also set `OSYS` within the scope of the I2C device, though this may not always work (The above example would not work here as LSTA is not within the scope of the I2C device).
|
||||||
|
|
||||||
|
### _OSI to XOSI
|
||||||
|
|
||||||
|
Requires the below SSDT and patch
|
||||||
|
|
||||||
|
* [SSDT-XOSI.dsl](/extra-files/decompiled/SSDT-XOSI.dsl) - If you need to edit [which versions of Windows the SSDT checks for](https://docs.microsoft.com/en-us/windows-hardware/drivers/acpi/winacpi-osi#_osi-strings-for-windows-operating-systems).
|
||||||
|
* [SSDT-XOSI.aml](/extra-files/compiled/SSDT-XOSI.aml) - Precompiled
|
||||||
|
* XOSI Rename (Add this under ACPI -> Patch in your config.plist):
|
||||||
|
|
||||||
|
| Comment | String | Change \_OSI to XOSI |
|
||||||
|
| :------ | :------ | :------- |
|
||||||
|
| Enabled | Boolean | YES |
|
||||||
|
| Count | Number | 0 |
|
||||||
|
| Limit | Number | 0 |
|
||||||
|
| Find | Data | 5f4f5349 |
|
||||||
|
| Replace | Data | 584f5349 |
|
||||||
|
|
||||||
|
::: details Dell Machines
|
||||||
|
|
||||||
|
You may need to add the below patch to allow the backlight keys to work.
|
||||||
|
Make sure that this patch appears **BEFORE** the previous \_OSI to XOSI patch in your config.plist
|
||||||
|
Credit to Rehabman for the below patch:
|
||||||
|
|
||||||
|
| Comment | String | Change \_OSID to XSID (to avoid match against \_OSI patch)
|
||||||
|
| :------ | :----- | :-------- |
|
||||||
|
| Enabled | Boolean | YES |
|
||||||
|
| Count | Number | 0 |
|
||||||
|
| Limit | Number | 0 |
|
||||||
|
| Find | Data | 4F534944 |
|
||||||
|
| Replace | Data | 58534944 |
|
||||||
|
|
||||||
|
:::
|
||||||
|
|
||||||
|
### Create OSYS Variable Under I2C Scope
|
||||||
|
|
||||||
|
You will need to find the device path where OSYS is checked, then create a new OSYS variable within that scope. This will only change OSYS for devices under this scope, which can allow for finer control over what is enabled. Note that in the example above, `LSTA` exists under `\_SB.PCI0.LSTA`, meaning that both `\_SB.PCI0._INI` and `\_SB.PCI0.LSTA` will control the same OSYS variable. If this is the case, this method will not work.
|
||||||
|
|
||||||
|
```
|
||||||
|
If (_OSI("Darwin")) {
|
||||||
|
Scope (\_SB.PCI0.I2C0) { // I2C0 scope
|
||||||
|
Name (OSYS, 0x7DF)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
::: tip Multiple Windows Versions
|
||||||
|
|
||||||
|
Windows will also return true for checks of earlier versions of Windows. For example, Windows 7 would return true for "Windows 2000" through "Windows 2009", but not any version after. This is important as some features are only enabled in earlier Windows checks. For example, DYTC thermal management on newer ThinkPads is only enabled in the check for "Windows 2001". You will need to check your own DSDT and see what values it sets and where they are used. At this point, you should [compiling the SSDT](/Manual/compile.md) and see if the trackpad works.
|
||||||
|
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Further Setup
|
||||||
|
|
||||||
|
If you need further help getting your trackpad to work, then the best place to look is [VoodooI2C's readme](https://github.com/VoodooI2C/VoodooI2C)
|
||||||
|
|
||||||
## Wrapping up
|
## Wrapping up
|
||||||
|
|
||||||
|
|||||||
@@ -5,13 +5,12 @@
|
|||||||
|
|
||||||
## What this SSDT does
|
## What this SSDT does
|
||||||
|
|
||||||
This SSDT is used to force enable our GPI0 for VoodooI2C to connect onto.
|
A big part of fixing I2C trackpads is enabling them within ACPI. For VoodooI2C to work, GPI0 needs to be enabled, as well as the Trackpad and I2C bus. The latter two devices are commonly disabled behind an OS check for Windows which need to be patched to work with macOS as well. Often times, GPI0 is already enabled and requires no modification.
|
||||||
|
|
||||||
With most modern laptop DSDTs, there's a variable called `GPEN` or `GPHD` which are used for setting the status of the GPI0 device. For us, we want to enable the device.
|
This section assumes that macOS is already installed. You may need to use a USB mouse to install macOS if your trackpad does not work yet.
|
||||||
|
|
||||||
## Methods to make this SSDT
|
## Methods to make this SSDT
|
||||||
|
|
||||||
For the trackpad fix, there are 2 methods you can choose from:
|
For the trackpad fix, there are only one method to choose from:
|
||||||
|
|
||||||
* [Prebuilt](/Laptops/trackpad-methods/prebuilt.md)
|
|
||||||
* [Manual](/Laptops/trackpad-methods/manual.md)
|
* [Manual](/Laptops/trackpad-methods/manual.md)
|
||||||
|
|||||||
@@ -25,7 +25,6 @@
|
|||||||
* [Prebuilt](/Laptops/backlight-methods/prebuilt.md)
|
* [Prebuilt](/Laptops/backlight-methods/prebuilt.md)
|
||||||
* [Manual](/Laptops/backlight-methods/manual.md)
|
* [Manual](/Laptops/backlight-methods/manual.md)
|
||||||
* [Trackpad GPI0](/Laptops/trackpad.md)
|
* [Trackpad GPI0](/Laptops/trackpad.md)
|
||||||
* [Prebuilt](/Laptops/trackpad-methods/prebuilt.md)
|
|
||||||
* [Manual](/Laptops/trackpad-methods/manual.md)
|
* [Manual](/Laptops/trackpad-methods/manual.md)
|
||||||
* [Disabling laptop dGPUs](/Laptops/laptop-disable.md)
|
* [Disabling laptop dGPUs](/Laptops/laptop-disable.md)
|
||||||
|
|
||||||
|
|||||||
1203
dictionary/dictionary.txt
Normal file
1203
dictionary/dictionary.txt
Normal file
File diff suppressed because it is too large
Load Diff
202
dictionary/opencorekeys.txt
Normal file
202
dictionary/opencorekeys.txt
Normal file
@@ -0,0 +1,202 @@
|
|||||||
|
4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14
|
||||||
|
4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102
|
||||||
|
7C436110-AB2A-4BBB-A880-FE41995C9F82
|
||||||
|
ACPI
|
||||||
|
APFS
|
||||||
|
ARTFrequency
|
||||||
|
AdviseWindows
|
||||||
|
AllowNvramReset
|
||||||
|
AllowSetDefault
|
||||||
|
AppleAudio
|
||||||
|
AppleBootPolicy
|
||||||
|
AppleCpuPmCfgLock
|
||||||
|
AppleDebug
|
||||||
|
AppleDebugLog
|
||||||
|
AppleEvent
|
||||||
|
AppleImageConversion
|
||||||
|
AppleKeyMap
|
||||||
|
ApplePanic
|
||||||
|
AppleRtcRam
|
||||||
|
AppleSmcIo
|
||||||
|
AppleUserInterfaceTheme
|
||||||
|
AppleXcpmCfgLock
|
||||||
|
AppleXcpmExtraMsrs
|
||||||
|
AppleXcpmForceBoost
|
||||||
|
AudioCodec
|
||||||
|
AudioDevice
|
||||||
|
AudioOut
|
||||||
|
AudioSupport
|
||||||
|
AuthRestart
|
||||||
|
AvoidRuntimeDefrag
|
||||||
|
BID
|
||||||
|
BIOSReleaseDate
|
||||||
|
BIOSVendor
|
||||||
|
BIOSVersion
|
||||||
|
BlessOverride
|
||||||
|
BoardAssetTag
|
||||||
|
BoardLocationInChassis
|
||||||
|
BoardManufacturer
|
||||||
|
BoardProduct
|
||||||
|
BoardRevision
|
||||||
|
BoardSerialNumber
|
||||||
|
BoardType
|
||||||
|
BoardVersion
|
||||||
|
Boot1f32
|
||||||
|
BootProtect
|
||||||
|
Booter
|
||||||
|
BundlePath
|
||||||
|
ChassisAssetTag
|
||||||
|
ChassisManufacturer
|
||||||
|
ChassisSerialNumber
|
||||||
|
ChassisType
|
||||||
|
ChassisVersion
|
||||||
|
ClearScreenOnModeSwitch
|
||||||
|
ConnectDrivers
|
||||||
|
ConsoleAttributes
|
||||||
|
ConsoleMode
|
||||||
|
Cpuid1Data
|
||||||
|
Cpuid1Mask
|
||||||
|
CustomSMBIOSGuid
|
||||||
|
DataHub
|
||||||
|
DevicePathsSupported
|
||||||
|
DeviceProperties
|
||||||
|
DevirtualiseMmio
|
||||||
|
DirectGopCacheMode
|
||||||
|
DirectGopRendering
|
||||||
|
DisableIoMapper
|
||||||
|
DisableRtcChecksum
|
||||||
|
DisableSingleUser
|
||||||
|
DisableVariableWrite
|
||||||
|
DisableWatchDog
|
||||||
|
DiscardHibernateMap
|
||||||
|
DisplayDelay
|
||||||
|
DisplayLevel
|
||||||
|
DummyPowerManagement
|
||||||
|
EnableJumpstart
|
||||||
|
EnableSafeModeSlide
|
||||||
|
EnableWriteUnprotector
|
||||||
|
ExecutablePath
|
||||||
|
ExistBootServicesDelay
|
||||||
|
ExposeSensitiveData
|
||||||
|
ExternalDiskIcons
|
||||||
|
FSBFrequency
|
||||||
|
FadtEnableReset
|
||||||
|
FindMask
|
||||||
|
FirmwareFeatures
|
||||||
|
FirmwareFeaturesMask
|
||||||
|
FirmwareVolume
|
||||||
|
ForceExitBootServices
|
||||||
|
HaltLevel
|
||||||
|
HashServices
|
||||||
|
HibernateMode
|
||||||
|
HideAuxiliary
|
||||||
|
HideSelf
|
||||||
|
HideVerbose
|
||||||
|
IgnoreInvalidFlexRatio
|
||||||
|
IgnoreTextInGraphics
|
||||||
|
IncreasePciBarSize
|
||||||
|
InitialTSC
|
||||||
|
JumpstartHotPlug
|
||||||
|
JumpstartHotplug
|
||||||
|
KeyFiltering
|
||||||
|
KeyForgetThreshold
|
||||||
|
KeyMergeThreshold
|
||||||
|
KeySupport
|
||||||
|
KeySupportMode
|
||||||
|
KeySwap
|
||||||
|
LapicKernelPanic
|
||||||
|
LegacyEnable
|
||||||
|
LegacyOverwrite
|
||||||
|
LegacySchema
|
||||||
|
Lifewire
|
||||||
|
MLB
|
||||||
|
MaxKernel
|
||||||
|
MemoryFormFactor
|
||||||
|
MinDate
|
||||||
|
MinKernel
|
||||||
|
MinVersion
|
||||||
|
MinimumVolume
|
||||||
|
MmioWhitelist
|
||||||
|
NormalizeHeaders
|
||||||
|
OSInfo
|
||||||
|
OemTableId
|
||||||
|
PickerAttributes
|
||||||
|
PickerAudioAssist
|
||||||
|
PickerMode
|
||||||
|
PlatformFeature
|
||||||
|
PlatformInfo
|
||||||
|
PlatformNVRAM
|
||||||
|
PlatformName
|
||||||
|
PlayChime
|
||||||
|
PlistPath
|
||||||
|
PointerSupport
|
||||||
|
PointerSupportMode
|
||||||
|
PollAppleHotKeys
|
||||||
|
PowerTimeoutKernelPanic
|
||||||
|
ProcessorType
|
||||||
|
ProtectMemoryRegions
|
||||||
|
ProtectSecureBoot
|
||||||
|
ProtectUefiServices
|
||||||
|
ProtocolOverrides
|
||||||
|
ProvideConsoleGop
|
||||||
|
ProvideCustomSlide
|
||||||
|
Quirks
|
||||||
|
ROM
|
||||||
|
RebaseRegions
|
||||||
|
RebuildAppleMemoryMap
|
||||||
|
ReconnectOnResChange
|
||||||
|
ReleaseUsbOwnership
|
||||||
|
ReplaceMask
|
||||||
|
ReplaceTabWithSpace
|
||||||
|
RequestBootVarFallback
|
||||||
|
RequestBootVarRouting
|
||||||
|
ReservedMemory
|
||||||
|
ResetHwSig
|
||||||
|
ResetLogoStatus
|
||||||
|
Resolution
|
||||||
|
SMBIOS
|
||||||
|
SanitiseClearScreen
|
||||||
|
ScanPolicy
|
||||||
|
SerialInit
|
||||||
|
SetupVirtualMap
|
||||||
|
ShowPicker
|
||||||
|
SignalAppleOS
|
||||||
|
SmcBranch
|
||||||
|
SmcPlatform
|
||||||
|
SmcRevision
|
||||||
|
SmcVersion
|
||||||
|
SpoofVendor
|
||||||
|
StartupPowerEvents
|
||||||
|
SyncRuntimePermissions
|
||||||
|
SysReport
|
||||||
|
SystemFamily
|
||||||
|
SystemManufacturer
|
||||||
|
SystemMemoryStatus
|
||||||
|
SystemProductName
|
||||||
|
SystemSKUNumber
|
||||||
|
SystemSerialNumber
|
||||||
|
SystemUUID
|
||||||
|
SystemVersion
|
||||||
|
TableLength
|
||||||
|
TableSignature
|
||||||
|
TakeoffDelay
|
||||||
|
Target
|
||||||
|
TextRenderer
|
||||||
|
ThirdPartyDrives
|
||||||
|
TimerResolution
|
||||||
|
UEFI
|
||||||
|
UIScale
|
||||||
|
UnblockFsConnect
|
||||||
|
UnicodeCollation
|
||||||
|
UpdateDataHub
|
||||||
|
UpdateNVRAM
|
||||||
|
UpdateSMBIOS
|
||||||
|
UpdateSMBIOSMode
|
||||||
|
Vault
|
||||||
|
VolumeAmplifier
|
||||||
|
WriteFlash
|
||||||
|
XhciPortLimit
|
||||||
|
boot0
|
||||||
|
bootia32
|
||||||
|
bootx64
|
||||||
|
snapshotted
|
||||||
Binary file not shown.
@@ -1,19 +1,10 @@
|
|||||||
// Source: https://github.com/daliansky/OC-little
|
// Source: https://github.com/daliansky/OC-little
|
||||||
DefinitionBlock("", "SSDT", 2, "DRTNIA", "GPI0", 0)
|
DefinitionBlock("", "SSDT", 2, "DRTNIA", "GPI0", 0)
|
||||||
{
|
{
|
||||||
External(GPEN, FieldUnitObj)
|
External(\GPEN, FieldUnitObj)
|
||||||
External(SBRG, FieldUnitObj)
|
|
||||||
|
|
||||||
Scope (\)
|
If (_OSI("Darwin"))
|
||||||
{
|
{
|
||||||
If (_OSI ("Darwin"))
|
\GPEN = One
|
||||||
{
|
|
||||||
GPEN = One
|
|
||||||
SBRG = One
|
|
||||||
}
|
|
||||||
Else
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,28 +1,12 @@
|
|||||||
/*
|
|
||||||
* Intel ACPI Component Architecture
|
|
||||||
* AML/ASL+ Disassembler version 20190509 (64-bit version)
|
|
||||||
* Copyright (c) 2000 - 2019 Intel Corporation
|
|
||||||
*
|
|
||||||
* Disassembling to symbolic ASL+ operators
|
|
||||||
*
|
|
||||||
* Disassembly of iASLYWTc6v.aml, Thu May 28 19:06:11 2020
|
|
||||||
*
|
|
||||||
* Original Table Header:
|
|
||||||
* Signature "SSDT"
|
|
||||||
* Length 0x00000143 (323)
|
|
||||||
* Revision 0x02
|
|
||||||
* Checksum 0x6C
|
|
||||||
* OEM ID "DRTNIA"
|
|
||||||
* OEM Table ID "XOSI"
|
|
||||||
* OEM Revision 0x00001000 (4096)
|
|
||||||
* Compiler ID "INTL"
|
|
||||||
* Compiler Version 0x20190509 (538510601)
|
|
||||||
*/
|
|
||||||
DefinitionBlock ("", "SSDT", 2, "DRTNIA", "XOSI", 0x00001000)
|
DefinitionBlock ("", "SSDT", 2, "DRTNIA", "XOSI", 0x00001000)
|
||||||
{
|
{
|
||||||
Method (XOSI, 1, NotSerialized)
|
Method (XOSI, 1, NotSerialized)
|
||||||
{
|
{
|
||||||
Local0 = Package (0x11)
|
// Based off of:
|
||||||
|
// https://docs.microsoft.com/en-us/windows-hardware/drivers/acpi/winacpi-osi#_osi-strings-for-windows-operating-systems
|
||||||
|
// Add OSes from the above list as needed, most only check up to Windows 2015
|
||||||
|
// but check what your DSDT looks for
|
||||||
|
Local0 = Package ()
|
||||||
{
|
{
|
||||||
"Windows 2001",
|
"Windows 2001",
|
||||||
"Windows 2001.1",
|
"Windows 2001.1",
|
||||||
@@ -33,7 +17,14 @@ DefinitionBlock ("", "SSDT", 2, "DRTNIA", "XOSI", 0x00001000)
|
|||||||
"Windows 2006 SP1",
|
"Windows 2006 SP1",
|
||||||
"Windows 2009",
|
"Windows 2009",
|
||||||
"Windows 2012",
|
"Windows 2012",
|
||||||
"Windows 2013",
|
"Windows 2013",
|
||||||
|
"Windows 2015",
|
||||||
|
"Windows 2016",
|
||||||
|
"Windows 2017",
|
||||||
|
"Windows 2018",
|
||||||
|
"Windows 2019",
|
||||||
|
"Windows 2020",
|
||||||
|
"Windows 2021",
|
||||||
"Microsoft Windows NT",
|
"Microsoft Windows NT",
|
||||||
"Microsoft Windows",
|
"Microsoft Windows",
|
||||||
"Microsoft WindowsME: Millennium Edition"
|
"Microsoft WindowsME: Millennium Edition"
|
||||||
|
|||||||
BIN
images/Laptops/trackpad-md/I2C1.png
Normal file
BIN
images/Laptops/trackpad-md/I2C1.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 453 KiB |
BIN
images/Laptops/trackpad-md/gpio-enabled.png
Normal file
BIN
images/Laptops/trackpad-md/gpio-enabled.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 234 KiB |
BIN
images/Laptops/trackpad-md/ini.png
Normal file
BIN
images/Laptops/trackpad-md/ini.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 486 KiB |
18
package.json
18
package.json
@@ -15,18 +15,18 @@
|
|||||||
"dev": "vuepress dev",
|
"dev": "vuepress dev",
|
||||||
"build": "vuepress build",
|
"build": "vuepress build",
|
||||||
"fix-lint": "run-script-os",
|
"fix-lint": "run-script-os",
|
||||||
"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:default": "(echo Attempting to fix lint... && markdownlint -c .markdownlint.json -p .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)",
|
"fix-lint:win32": "(echo Attempting to fix lint... && markdownlint -c .markdownlint.json -p .markdownlintignore **/*.md -f && echo Fixed successfully, please commit.) || (echo Fix failed! && exit 1)",
|
||||||
"lint": "run-script-os",
|
"lint": "run-script-os",
|
||||||
"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:default": "(echo Linting... && markdownlint -c .markdownlint.json -p .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:win32": "(echo Linting... && markdownlint -c .markdownlint.json -p .markdownlintignore **/*.md && echo Lint passed.) || (echo Lint failed! Please review and fix errors. && exit 1)",
|
||||||
"lint-ci": "run-script-os",
|
"lint-ci": "run-script-os",
|
||||||
"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:default": "(echo Linting... && markdownlint -c .markdownlint.json -p .markdownlintignore '**/*.md' && echo Lint passed.) || ((echo Lint failed, attempting fix... && markdownlint -c .markdownlint.json -p .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)",
|
"lint-ci:win32": "(echo Linting... && markdownlint -c .markdownlint.json -p .markdownlintignore **/*.md && echo Lint passed.) || ((echo Lint failed, attempting fix... && markdownlint -c .markdownlint.json -p .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",
|
"sort-dict": "node ./scripts/sortDict.js",
|
||||||
"spellcheck": "run-script-os",
|
"spellcheck": "run-script-os",
|
||||||
"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: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 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 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)",
|
||||||
"test": "run-script-os",
|
"test": "run-script-os",
|
||||||
"test:default": "npm run lint --silent; npm run spellcheck --silent",
|
"test:default": "npm run lint --silent; npm run spellcheck --silent",
|
||||||
"test:win32": "npm run lint --silent & npm run spellcheck --silent"
|
"test:win32": "npm run lint --silent & npm run spellcheck --silent"
|
||||||
|
|||||||
9
scripts/linkcheck.py
Normal file
9
scripts/linkcheck.py
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
from pathlib import Path
|
||||||
|
import subprocess
|
||||||
|
|
||||||
|
for i in [i for i in list(Path().resolve().glob("**/*.md")) if "node_modules" not in str(i.parent) and "_book" not in str(i.parent)]:
|
||||||
|
#bert = subprocess.run(['npx', 'markdown-link-check', '"' + str(i) + '"', '-c', '.markdownlinkcheck.json'], capture_output=True, shell=True, cwd=Path().resolve())
|
||||||
|
bert = subprocess.run('npx markdown-link-check "' + str(i) + '"', stdout=subprocess.PIPE, stderr=subprocess.STDOUT, shell=True, cwd=Path().resolve())
|
||||||
|
outpot = bert.stdout.decode().replace("\r", "").split("\n")
|
||||||
|
outpot = [i for i in outpot if ("FILE: " in i or " → Status: " in i) and " → Status: 429" not in i]
|
||||||
|
[print(i) for i in outpot]
|
||||||
26
scripts/sortDict.js
Normal file
26
scripts/sortDict.js
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
const fs = require("fs");
|
||||||
|
|
||||||
|
process.chdir(__dirname);
|
||||||
|
|
||||||
|
console.log("Reading dictionary.txt");
|
||||||
|
let dictionary = fs.readFileSync("../dictionary/dictionary.txt", { encoding: "UTF8" })
|
||||||
|
.replace("\r", "").split("\n");
|
||||||
|
|
||||||
|
let ocDictionary = fs.readFileSync("../dictionary/opencorekeys.txt", { encoding: "UTF8" })
|
||||||
|
.replace("\r", "").split("\n");
|
||||||
|
|
||||||
|
dictionary = dictionary.filter(string => string != "");
|
||||||
|
ocDictionary = ocDictionary.filter(string => string != "");
|
||||||
|
|
||||||
|
dictionary = dictionary.filter((string, index) => dictionary.indexOf(string) == index);
|
||||||
|
ocDictionary = ocDictionary.filter((string, index) => ocDictionary.indexOf(string) == index);
|
||||||
|
|
||||||
|
dictionary = dictionary.filter(string => !ocDictionary.includes(string));
|
||||||
|
|
||||||
|
console.log("Sorting...");
|
||||||
|
dictionary.sort();
|
||||||
|
ocDictionary.sort();
|
||||||
|
|
||||||
|
console.log("Writing dictionary.txt");
|
||||||
|
fs.writeFileSync("../dictionary/dictionary.txt", dictionary.join("\n"));
|
||||||
|
fs.writeFileSync("../dictionary/opencorekeys.txt", ocDictionary.join("\n"));
|
||||||
1
shared
1
shared
Submodule shared deleted from 9158b82160
@@ -43,7 +43,7 @@ Please see the **specific ACPI section of your config.plist**, all SSDTs needed
|
|||||||
| Clarksfield and Arrandale | N/A | [SSDT-EC](./Universal/ec-fix) | [SSDT-PNLF](./Laptops/backlight) | N/A | N/A | N/A | [IRQ SSDT](./Universal/irq) |
|
| Clarksfield and Arrandale | N/A | [SSDT-EC](./Universal/ec-fix) | [SSDT-PNLF](./Laptops/backlight) | N/A | N/A | N/A | [IRQ SSDT](./Universal/irq) |
|
||||||
| SandyBridge | [CPU-PM](https://dortania.github.io/OpenCore-Post-Install/universal/pm.html#sandy-and-ivy-bridge-power-management) (Run in Post-Install) | ^^ | ^^ | ^^ | ^^ | ^^ | ^^ |
|
| SandyBridge | [CPU-PM](https://dortania.github.io/OpenCore-Post-Install/universal/pm.html#sandy-and-ivy-bridge-power-management) (Run in Post-Install) | ^^ | ^^ | ^^ | ^^ | ^^ | ^^ |
|
||||||
| Ivy Bridge | ^^ | ^^ | ^^ | ^^ | ^^ | ^^ | ^^ |
|
| Ivy Bridge | ^^ | ^^ | ^^ | ^^ | ^^ | ^^ | ^^ |
|
||||||
| Haswell | [SSDT-PLUG](./Universal/plug) | ^^ | ^^ | [SSDT-GPI0](./Laptops/trackpad) | ^^ | ^^ | ^^ |
|
| Haswell | [SSDT-PLUG](./Universal/plug) | ^^ | ^^ | [SSDT-XOSI/SSDT-GPI0](./Laptops/trackpad) (Run in Post-Install) | ^^ | ^^ | ^^ |
|
||||||
| Broadwell | ^^ | ^^ | ^^ | ^^ | ^^ | ^^ | ^^ |
|
| Broadwell | ^^ | ^^ | ^^ | ^^ | ^^ | ^^ | ^^ |
|
||||||
| Skylake | ^^ | [SSDT-EC-USBX](./Universal/ec-fix) | ^^ | ^^ | ^^ | ^^ | N/A |
|
| Skylake | ^^ | [SSDT-EC-USBX](./Universal/ec-fix) | ^^ | ^^ | ^^ | ^^ | N/A |
|
||||||
| Kaby Lake | ^^ | ^^ | ^^ | ^^ | ^^ | ^^ | ^^ |
|
| Kaby Lake | ^^ | ^^ | ^^ | ^^ | ^^ | ^^ | ^^ |
|
||||||
|
|||||||
Reference in New Issue
Block a user