1
0
Fork 0
mirror of https://github.com/tylernguyen/x1c6-hackintosh.git synced 2025-02-05 09:33:13 -06:00

Lots of improvements, please check changelog

This commit is contained in:
Tyler Nguyen 2020-06-26 08:22:55 -05:00
parent b49f3062e1
commit a985053bc5
No known key found for this signature in database
GPG key ID: DB5B102B914991DA
35 changed files with 1524 additions and 687 deletions

1
.gitignore vendored
View file

@ -10,3 +10,4 @@ Library/Extensions/HighPointIOP.kext
Library/Extensions/HighPointRR.kext
Library/Extensions/PromiseSTEX.kext
Library/Extensions/SoftRAID.kext
SMBIOS.plist

View file

@ -0,0 +1,95 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>BuildMachineOSBuild</key>
<string>17G13035</string>
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleExecutable</key>
<string>VoodooRMI</string>
<key>CFBundleIdentifier</key>
<string>com.1Revenger1.VoodooRMI</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>VoodooRMI</string>
<key>CFBundlePackageType</key>
<string>KEXT</string>
<key>CFBundleShortVersionString</key>
<string>0.4</string>
<key>CFBundleSupportedPlatforms</key>
<array>
<string>MacOSX</string>
</array>
<key>CFBundleVersion</key>
<string>0.4</string>
<key>DTCompiler</key>
<string>com.apple.compilers.llvm.clang.1_0</string>
<key>DTPlatformBuild</key>
<string>9F2000</string>
<key>DTPlatformVersion</key>
<string>GM</string>
<key>DTSDKBuild</key>
<string>17E189</string>
<key>DTSDKName</key>
<string>macosx10.13</string>
<key>DTXcode</key>
<string>0941</string>
<key>DTXcodeBuild</key>
<string>9F2000</string>
<key>IOKitPersonalities</key>
<dict>
<key>RMIDevice</key>
<dict>
<key>CFBundleIdentifier</key>
<string>com.1Revenger1.VoodooRMI</string>
<key>Configuration</key>
<dict>
<key>DisableWhileTypingTimeout</key>
<integer>500</integer>
<key>TrackstickMultiplier</key>
<integer>5</integer>
<key>TrackstickScrollMultiplierX</key>
<integer>5</integer>
<key>TrackstickScrollMultiplierY</key>
<integer>5</integer>
</dict>
<key>IOClass</key>
<string>RMIBus</string>
<key>IOProbeScore</key>
<integer>2910</integer>
<key>IOProviderClass</key>
<string>RMISMBus</string>
</dict>
<key>RMISMBus</key>
<dict>
<key>CFBundleIdentifier</key>
<string>com.1Revenger1.VoodooRMI</string>
<key>IOClass</key>
<string>RMISMBus</string>
<key>IOProbeScore</key>
<integer>500</integer>
<key>IOProviderClass</key>
<string>VoodooSMBusDeviceNub</string>
</dict>
</dict>
<key>NSHumanReadableCopyright</key>
<string>Copyright © 2020 1Revenger1. All rights reserved.</string>
<key>OSBundleLibraries</key>
<dict>
<key>com.apple.iokit.IOHIDFamily</key>
<string>2.0</string>
<key>com.apple.kpi.iokit</key>
<string>18.5</string>
<key>com.apple.kpi.libkern</key>
<string>18.5</string>
<key>com.apple.kpi.mach</key>
<string>18.5</string>
<key>de.leo-labs.VoodooSMBus</key>
<string>2.1</string>
</dict>
<key>OSBundleRequired</key>
<string>Console</string>
</dict>
</plist>

View file

@ -0,0 +1,76 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>BuildMachineOSBuild</key>
<string>17G13035</string>
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleExecutable</key>
<string>VoodooInput</string>
<key>CFBundleIdentifier</key>
<string>me.kishorprins.VoodooInput</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>VoodooInput</string>
<key>CFBundlePackageType</key>
<string>KEXT</string>
<key>CFBundleShortVersionString</key>
<string>1.0.6</string>
<key>CFBundleSupportedPlatforms</key>
<array>
<string>MacOSX</string>
</array>
<key>CFBundleVersion</key>
<string>1.0.6</string>
<key>DTCompiler</key>
<string>com.apple.compilers.llvm.clang.1_0</string>
<key>DTPlatformBuild</key>
<string>9F2000</string>
<key>DTPlatformVersion</key>
<string>GM</string>
<key>DTSDKBuild</key>
<string>17E189</string>
<key>DTSDKName</key>
<string>macosx10.13</string>
<key>DTXcode</key>
<string>0941</string>
<key>DTXcodeBuild</key>
<string>9F2000</string>
<key>IOKitPersonalities</key>
<dict>
<key>Voodoo Input</key>
<dict>
<key>CFBundleIdentifier</key>
<string>me.kishorprins.VoodooInput</string>
<key>IOClass</key>
<string>VoodooInput</string>
<key>IOProbeScore</key>
<integer>200</integer>
<key>IOPropertyMatch</key>
<dict>
<key>VoodooInputSupported</key>
<true/>
</dict>
<key>IOProviderClass</key>
<string>IOService</string>
</dict>
</dict>
<key>NSHumanReadableCopyright</key>
<string>Copyright © 2019 Kishor Prins. All rights reserved.</string>
<key>OSBundleLibraries</key>
<dict>
<key>com.apple.iokit.IOHIDFamily</key>
<string>2.0</string>
<key>com.apple.kpi.iokit</key>
<string>14</string>
<key>com.apple.kpi.libkern</key>
<string>14</string>
<key>com.apple.kpi.mach</key>
<string>13.0</string>
</dict>
<key>OSBundleRequired</key>
<string>Root</string>
</dict>
</plist>

View file

@ -0,0 +1,115 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>files</key>
<dict/>
<key>files2</key>
<dict/>
<key>rules</key>
<dict>
<key>^Resources/</key>
<true/>
<key>^Resources/.*\.lproj/</key>
<dict>
<key>optional</key>
<true/>
<key>weight</key>
<real>1000</real>
</dict>
<key>^Resources/.*\.lproj/locversion.plist$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>1100</real>
</dict>
<key>^Resources/Base\.lproj/</key>
<dict>
<key>weight</key>
<real>1010</real>
</dict>
<key>^version.plist$</key>
<true/>
</dict>
<key>rules2</key>
<dict>
<key>.*\.dSYM($|/)</key>
<dict>
<key>weight</key>
<real>11</real>
</dict>
<key>^(.*/)?\.DS_Store$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>2000</real>
</dict>
<key>^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/</key>
<dict>
<key>nested</key>
<true/>
<key>weight</key>
<real>10</real>
</dict>
<key>^.*</key>
<true/>
<key>^Info\.plist$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>20</real>
</dict>
<key>^PkgInfo$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>20</real>
</dict>
<key>^Resources/</key>
<dict>
<key>weight</key>
<real>20</real>
</dict>
<key>^Resources/.*\.lproj/</key>
<dict>
<key>optional</key>
<true/>
<key>weight</key>
<real>1000</real>
</dict>
<key>^Resources/.*\.lproj/locversion.plist$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>1100</real>
</dict>
<key>^Resources/Base\.lproj/</key>
<dict>
<key>weight</key>
<real>1010</real>
</dict>
<key>^[^/]+$</key>
<dict>
<key>nested</key>
<true/>
<key>weight</key>
<real>10</real>
</dict>
<key>^embedded\.provisionprofile$</key>
<dict>
<key>weight</key>
<real>20</real>
</dict>
<key>^version\.plist$</key>
<dict>
<key>weight</key>
<real>20</real>
</dict>
</dict>
</dict>
</plist>

View file

@ -0,0 +1,125 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>files</key>
<dict/>
<key>files2</key>
<dict>
<key>PlugIns/VoodooInput.kext</key>
<dict>
<key>cdhash</key>
<data>
gBdThkR8m9/gtvD9Z2KxYBK6oro=
</data>
<key>requirement</key>
<string>cdhash H"881d29fc8cf0eb6fcd23679deb0d7837fdce9a85" or cdhash H"80175386447c9bdfe0b6f0fd6762b16012baa2ba"</string>
</dict>
</dict>
<key>rules</key>
<dict>
<key>^Resources/</key>
<true/>
<key>^Resources/.*\.lproj/</key>
<dict>
<key>optional</key>
<true/>
<key>weight</key>
<real>1000</real>
</dict>
<key>^Resources/.*\.lproj/locversion.plist$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>1100</real>
</dict>
<key>^Resources/Base\.lproj/</key>
<dict>
<key>weight</key>
<real>1010</real>
</dict>
<key>^version.plist$</key>
<true/>
</dict>
<key>rules2</key>
<dict>
<key>.*\.dSYM($|/)</key>
<dict>
<key>weight</key>
<real>11</real>
</dict>
<key>^(.*/)?\.DS_Store$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>2000</real>
</dict>
<key>^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/</key>
<dict>
<key>nested</key>
<true/>
<key>weight</key>
<real>10</real>
</dict>
<key>^.*</key>
<true/>
<key>^Info\.plist$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>20</real>
</dict>
<key>^PkgInfo$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>20</real>
</dict>
<key>^Resources/</key>
<dict>
<key>weight</key>
<real>20</real>
</dict>
<key>^Resources/.*\.lproj/</key>
<dict>
<key>optional</key>
<true/>
<key>weight</key>
<real>1000</real>
</dict>
<key>^Resources/.*\.lproj/locversion.plist$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>1100</real>
</dict>
<key>^Resources/Base\.lproj/</key>
<dict>
<key>weight</key>
<real>1010</real>
</dict>
<key>^[^/]+$</key>
<dict>
<key>nested</key>
<true/>
<key>weight</key>
<real>10</real>
</dict>
<key>^embedded\.provisionprofile$</key>
<dict>
<key>weight</key>
<real>20</real>
</dict>
<key>^version\.plist$</key>
<dict>
<key>weight</key>
<real>20</real>
</dict>
</dict>
</dict>
</plist>

View file

@ -0,0 +1,528 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>BuildMachineOSBuild</key>
<string>17G13035</string>
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleExecutable</key>
<string>VoodooSMBus</string>
<key>CFBundleIdentifier</key>
<string>de.leo-labs.VoodooSMBus</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>VoodooSMBus</string>
<key>CFBundlePackageType</key>
<string>KEXT</string>
<key>CFBundleShortVersionString</key>
<string>2.1</string>
<key>CFBundleSupportedPlatforms</key>
<array>
<string>MacOSX</string>
</array>
<key>CFBundleVersion</key>
<string>2.1</string>
<key>DTCompiler</key>
<string>com.apple.compilers.llvm.clang.1_0</string>
<key>DTPlatformBuild</key>
<string>9F2000</string>
<key>DTPlatformVersion</key>
<string>GM</string>
<key>DTSDKBuild</key>
<string>17E189</string>
<key>DTSDKName</key>
<string>macosx10.13</string>
<key>DTXcode</key>
<string>0941</string>
<key>DTXcodeBuild</key>
<string>9F2000</string>
<key>IOKitPersonalities</key>
<dict>
<key>Custom MT2 Personality</key>
<dict>
<key>ApplePreferenceCapability</key>
<integer>2</integer>
<key>ApplePreferenceIdentifier</key>
<string>com.apple.AppleMultitouchTrackpad</string>
<key>ApplePreferencesDefaultPreferences</key>
<dict>
<key>ActuateDetents</key>
<integer>0</integer>
<key>Clicking</key>
<integer>1</integer>
<key>DragLock</key>
<integer>0</integer>
<key>Dragging</key>
<integer>0</integer>
<key>FirstClickThreshold</key>
<integer>1</integer>
<key>ForceSuppressed</key>
<true/>
<key>SecondClickThreshold</key>
<integer>1</integer>
<key>TrackpadCornerSecondaryClick</key>
<integer>0</integer>
<key>TrackpadFiveFingerPinchGesture</key>
<integer>2</integer>
<key>TrackpadFourFingerHorizSwipeGesture</key>
<integer>2</integer>
<key>TrackpadFourFingerPinchGesture</key>
<integer>2</integer>
<key>TrackpadFourFingerVertSwipeGesture</key>
<integer>2</integer>
<key>TrackpadHorizScroll</key>
<integer>1</integer>
<key>TrackpadMomentumScroll</key>
<true/>
<key>TrackpadPinch</key>
<integer>1</integer>
<key>TrackpadRightClick</key>
<true/>
<key>TrackpadRotate</key>
<integer>1</integer>
<key>TrackpadScroll</key>
<true/>
<key>TrackpadThreeFingerDrag</key>
<false/>
<key>TrackpadThreeFingerHorizSwipeGesture</key>
<integer>2</integer>
<key>TrackpadThreeFingerVertSwipeGesture</key>
<integer>2</integer>
</dict>
<key>CFBundleIdentifier</key>
<string>com.apple.driver.AppleTopCaseHIDEventDriver</string>
<key>DefaultMultitouchProperties</key>
<dict>
<key>ActuationSupported</key>
<false/>
<key>ExtractAndPostDeviceButtonState</key>
<true/>
<key>ForceSupported</key>
<false/>
<key>HIDServiceSupport</key>
<true/>
<key>IOCFPlugInTypes</key>
<dict>
<key>0516B563-B15B-11DA-96EB-0014519758EF</key>
<string>AppleMultitouchDriver.kext/Contents/PlugIns/MultitouchHID.plugin</string>
</dict>
<key>MT Built-In</key>
<true/>
<key>MTHIDDevice</key>
<true/>
<key>MTPowerStatsDisable</key>
<true/>
<key>SupportsGestureScrolling</key>
<true/>
<key>TrackpadFourFingerGestures</key>
<true/>
<key>TrackpadMomentumScroll</key>
<true/>
<key>TrackpadSecondaryClickCorners</key>
<true/>
<key>TrackpadThreeFingerDrag</key>
<true/>
<key>parser-options</key>
<integer>39</integer>
<key>parser-type</key>
<integer>1000</integer>
</dict>
<key>DeviceUsagePairs</key>
<array>
<dict>
<key>DeviceUsage</key>
<integer>2</integer>
<key>DeviceUsagePage</key>
<integer>1</integer>
</dict>
</array>
<key>DoReportIntervalHack</key>
<true/>
<key>HIDAccelCurves</key>
<array>
<dict>
<key>HIDAccelGainLinear</key>
<integer>65536</integer>
<key>HIDAccelIndex</key>
<integer>0</integer>
<key>HIDAccelTangentSpeedLinear</key>
<integer>484966</integer>
<key>HIDAccelTangentSpeedParabolicRoot</key>
<integer>1376256</integer>
</dict>
<dict>
<key>HIDAccelGainCubic</key>
<integer>5243</integer>
<key>HIDAccelGainLinear</key>
<integer>64881</integer>
<key>HIDAccelGainParabolic</key>
<integer>32768</integer>
<key>HIDAccelIndex</key>
<integer>8192</integer>
<key>HIDAccelTangentSpeedLinear</key>
<integer>478413</integer>
<key>HIDAccelTangentSpeedParabolicRoot</key>
<integer>1310720</integer>
</dict>
<dict>
<key>HIDAccelGainCubic</key>
<integer>6554</integer>
<key>HIDAccelGainLinear</key>
<integer>64225</integer>
<key>HIDAccelGainParabolic</key>
<integer>43254</integer>
<key>HIDAccelIndex</key>
<integer>32768</integer>
<key>HIDAccelTangentSpeedLinear</key>
<integer>471859</integer>
<key>HIDAccelTangentSpeedParabolicRoot</key>
<integer>1245184</integer>
</dict>
<dict>
<key>HIDAccelGainCubic</key>
<integer>7864</integer>
<key>HIDAccelGainLinear</key>
<integer>62915</integer>
<key>HIDAccelGainParabolic</key>
<integer>54395</integer>
<key>HIDAccelIndex</key>
<integer>45056</integer>
<key>HIDAccelTangentSpeedLinear</key>
<integer>465306</integer>
<key>HIDAccelTangentSpeedParabolicRoot</key>
<integer>1179648</integer>
</dict>
<dict>
<key>HIDAccelGainCubic</key>
<integer>9830</integer>
<key>HIDAccelGainLinear</key>
<integer>61604</integer>
<key>HIDAccelGainParabolic</key>
<integer>65536</integer>
<key>HIDAccelIndex</key>
<integer>57344</integer>
<key>HIDAccelTangentSpeedLinear</key>
<integer>458752</integer>
<key>HIDAccelTangentSpeedParabolicRoot</key>
<integer>1114112</integer>
</dict>
<dict>
<key>HIDAccelGainCubic</key>
<integer>11796</integer>
<key>HIDAccelGainLinear</key>
<integer>60293</integer>
<key>HIDAccelGainParabolic</key>
<integer>75366</integer>
<key>HIDAccelIndex</key>
<integer>65536</integer>
<key>HIDAccelTangentSpeedLinear</key>
<integer>458752</integer>
<key>HIDAccelTangentSpeedParabolicRoot</key>
<integer>1048576</integer>
</dict>
<dict>
<key>HIDAccelGainCubic</key>
<integer>13763</integer>
<key>HIDAccelGainLinear</key>
<integer>58327</integer>
<key>HIDAccelGainParabolic</key>
<integer>85197</integer>
<key>HIDAccelIndex</key>
<integer>98304</integer>
<key>HIDAccelTangentSpeedLinear</key>
<integer>458752</integer>
<key>HIDAccelTangentSpeedParabolicRoot</key>
<integer>983040</integer>
</dict>
<dict>
<key>HIDAccelGainCubic</key>
<integer>15729</integer>
<key>HIDAccelGainLinear</key>
<integer>56361</integer>
<key>HIDAccelGainParabolic</key>
<integer>95027</integer>
<key>HIDAccelIndex</key>
<integer>131072</integer>
<key>HIDAccelTangentSpeedLinear</key>
<integer>458752</integer>
<key>HIDAccelTangentSpeedParabolicRoot</key>
<integer>917504</integer>
</dict>
<dict>
<key>HIDAccelGainCubic</key>
<integer>18350</integer>
<key>HIDAccelGainLinear</key>
<integer>54395</integer>
<key>HIDAccelGainParabolic</key>
<integer>108790</integer>
<key>HIDAccelIndex</key>
<integer>163840</integer>
<key>HIDAccelTangentSpeedLinear</key>
<integer>458752</integer>
<key>HIDAccelTangentSpeedParabolicRoot</key>
<integer>851968</integer>
</dict>
<dict>
<key>HIDAccelGainCubic</key>
<integer>23593</integer>
<key>HIDAccelGainLinear</key>
<integer>65536</integer>
<key>HIDAccelGainParabolic</key>
<integer>123208</integer>
<key>HIDAccelIndex</key>
<integer>196608</integer>
<key>HIDAccelTangentSpeedLinear</key>
<integer>458752</integer>
<key>HIDAccelTangentSpeedParabolicRoot</key>
<integer>786432</integer>
</dict>
</array>
<key>HIDDisallowRemappingOfPrimaryClick</key>
<true/>
<key>HIDPointerAccelerationTable</key>
<data>AACAAFVTQioABwAAAAAAAgAEAAAABAAAABAAAAAQAAAAACAAAA0AAIAAAACAAAABQAAAAYAAAAIAAAAC4AAAAwAAAATgAAAEAAAAB0AAAAUAAAAKAAAABgAAAA1AAAAIAAAAFgAAAArAAAAjAAAADQAAAC8AAAAOwAAAOMAAABBAAABBAAAAEcAAAEjAAAAAUAAADwAAgAAAAIAAAAEAAAABQAAAAYAAAAJAAAACAAAAA4AAAAKAAAAE4AAAAwAAAAZgAAAEAAAACgAAAAUAAAAOQAAABgAAABNAAAAIAAAAHsAAAArAAAAuwAAADQAAADyAAAAOwAAARwAAABBAAABPwAAAEcAAAFiAAAAAgAAADwAAgAAAAIAAAAEAAAABYAAAAYAAAAKgAAACAAAABEAAAAKAAAAGAAAAAwAAAAgAAAAEAAAADQAAAAUAAAASwAAABgAAABkAAAAIAAAAKAAAAArAAAA7wAAADQAAAEuAAAAOwAAAV0AAABBAAABgQAAAEcAAAGkAAAAAsAAADwAAgAAAAIAAAAEAAAABoAAAAYAAAAMAAAACAAAABQAAAAKAAAAHQAAAAwAAAAnAAAAEAAAAEEAAAAUAAAAXgAAABgAAAB/AAAAIAAAAMgAAAArAAABKAAAADQAAAFyAAAAOwAAAaQAAABBAAABywAAAEcAAAHrAAAAA4AAADwAAgAAAAKAAAAEAAAABwAAAAYAAAANgAAACAAAABeAAAAKAAAAIoAAAAwAAAAvAAAAEAAAAE8AAAAUAAAAdQAAABgAAACfAAAAIAAAAPcAAAArAAABZAAAADQAAAG3AAAAOwAAAe0AAABBAAACFQAAAEcAAAIxAAAABAAAADwAAgAAAAMAAAAEAAAACAAAAAYAAAAPgAAACAAAABsAAAAKAAAAKQAAAAwAAAA5gAAAEAAAAGMAAAAUAAAAkwAAABgAAADLAAAAIAAAATUAAAArAAABugAAADQAAAIMAAAAOwAAAj0AAABBAAACXAAAAEcAAAJxA</data>
<key>HIDPointerAccelerationType</key>
<string>HIDTrackpadAcceleration</string>
<key>HIDScrollAccelCurves</key>
<array>
<dict>
<key>HIDAccelGainLinear</key>
<integer>65536</integer>
<key>HIDAccelIndex</key>
<integer>0</integer>
<key>HIDAccelTangentSpeedLinear</key>
<integer>393216</integer>
<key>HIDAccelTangentSpeedParabolicRoot</key>
<integer>786432</integer>
</dict>
<dict>
<key>HIDAccelGainLinear</key>
<integer>62259</integer>
<key>HIDAccelGainParabolic</key>
<integer>39322</integer>
<key>HIDAccelIndex</key>
<integer>8192</integer>
<key>HIDAccelTangentSpeedLinear</key>
<integer>406323</integer>
<key>HIDAccelTangentSpeedParabolicRoot</key>
<integer>786432</integer>
</dict>
<dict>
<key>HIDAccelGainLinear</key>
<integer>58982</integer>
<key>HIDAccelGainParabolic</key>
<integer>58982</integer>
<key>HIDAccelIndex</key>
<integer>32768</integer>
<key>HIDAccelTangentSpeedLinear</key>
<integer>419430</integer>
<key>HIDAccelTangentSpeedParabolicRoot</key>
<integer>786432</integer>
</dict>
<dict>
<key>HIDAccelGainLinear</key>
<integer>55706</integer>
<key>HIDAccelGainParabolic</key>
<integer>78643</integer>
<key>HIDAccelIndex</key>
<integer>45056</integer>
<key>HIDAccelTangentSpeedLinear</key>
<integer>432538</integer>
<key>HIDAccelTangentSpeedParabolicRoot</key>
<integer>786432</integer>
</dict>
<dict>
<key>HIDAccelGainLinear</key>
<integer>52429</integer>
<key>HIDAccelGainParabolic</key>
<integer>91750</integer>
<key>HIDAccelIndex</key>
<integer>57344</integer>
<key>HIDAccelTangentSpeedLinear</key>
<integer>445645</integer>
<key>HIDAccelTangentSpeedParabolicRoot</key>
<integer>786432</integer>
</dict>
<dict>
<key>HIDAccelGainLinear</key>
<integer>49152</integer>
<key>HIDAccelGainParabolic</key>
<integer>104858</integer>
<key>HIDAccelIndex</key>
<integer>65536</integer>
<key>HIDAccelTangentSpeedLinear</key>
<integer>458752</integer>
<key>HIDAccelTangentSpeedParabolicRoot</key>
<integer>786432</integer>
</dict>
<dict>
<key>HIDAccelGainLinear</key>
<integer>45875</integer>
<key>HIDAccelGainParabolic</key>
<integer>117965</integer>
<key>HIDAccelIndex</key>
<integer>98304</integer>
<key>HIDAccelTangentSpeedLinear</key>
<integer>471859</integer>
<key>HIDAccelTangentSpeedParabolicRoot</key>
<integer>786432</integer>
</dict>
<dict>
<key>HIDAccelGainLinear</key>
<integer>42598</integer>
<key>HIDAccelGainParabolic</key>
<integer>131072</integer>
<key>HIDAccelIndex</key>
<integer>131072</integer>
<key>HIDAccelTangentSpeedLinear</key>
<integer>484966</integer>
<key>HIDAccelTangentSpeedParabolicRoot</key>
<integer>786432</integer>
</dict>
<dict>
<key>HIDAccelGainLinear</key>
<integer>39322</integer>
<key>HIDAccelGainParabolic</key>
<integer>144179</integer>
<key>HIDAccelIndex</key>
<integer>163840</integer>
<key>HIDAccelTangentSpeedLinear</key>
<integer>498074</integer>
<key>HIDAccelTangentSpeedParabolicRoot</key>
<integer>786432</integer>
</dict>
<dict>
<key>HIDAccelGainLinear</key>
<integer>36045</integer>
<key>HIDAccelGainParabolic</key>
<integer>157286</integer>
<key>HIDAccelIndex</key>
<integer>196608</integer>
<key>HIDAccelTangentSpeedLinear</key>
<integer>511181</integer>
<key>HIDAccelTangentSpeedParabolicRoot</key>
<integer>786432</integer>
</dict>
</array>
<key>HIDScrollAccelerationTable</key>
<data>AACAAFVTQioABwAAAAAAAQABAAAAAQAAAAAgAAAQAABxOwAATOMAAwAAAAdgAAAEwAAADoAAAAbxSgAX6V4ACVeCACMQWgALZ6EALBF7AA2N1AA03ToAD36aADvQuAASWKAARl01ABUAAABO2dgAF8AAAFXK7QAas+UAW2FQAB2QAABe0qoAIL75AGEgywAkLXsAYnXvACewAABjRl8AAIAAABMAAHE7AABWfwABAAAAAuAAAAIAAAAJYAAAAwAAABIAAAAEwAAAIMAAAAaAAAAwgAAACGp5AEH9tgAK7bUAV4ZuAA0B2ABrPTkADv1/AIEEcAAQy5gAkdRWABJouQCe3VAAE+c/AKikCgAXAucAtn2SABot3ADARE4AHVjQAMX4OgAg35IAytuYACQ4bgDO7mUAJ6CXANIwowAAsAAAFAAAcTsAAGFOAADAAAABwAAAAQAAAANgAAACAAAADCAAAAMAAAAW4AAABMAAACnAAAAGQAAAOsAAAAfOggBP7OcACgWAAGo8rgAL658AhMCkAA2RCwCfR+EADzjIALWDbwAQ/k8AxqbEABLNUQDUeCMAFepmAOTKxwAZoVYA8qFmAB1CvwD7fXwAIQuCAQFpdAAkS20BBVKIACegAAEIK4wAAOAAABQAAHE7AABtdwAAwAAAAeAAAAEAAAAD4AAAAgAAAA6AAAADAAAAHEAAAATAAAA0AAAABgAAAEdAAAAHN4wAXL7hAAkAAACAwAAACoAAAKGAAAALz7IAvU7UAA01yQDadikADvtPAPKF4gARLu4BCSWiABUlDwEfV8QAGT9oASzRKgAdChkBNQrGACDz5QE6cR4AJEARAT3XdgAnn1YBQMHWAABQAAATAABxOwAAS7AAAQAAAAJgAAACAAAABuAAAAMAAAAMYAAABMAAABcAAAAGwAAAJAAAAAkAAAAyAAAACz1uAEFngAANcE8AUMGhAA+sTQBgSTMAEagdAG5NTAATT9YAd9WQABTQfgB+26MAF3odAIbYXQAagocAjp+lAB2J6QCTvnkAIN/yAJdcWwAkO0IAmYu9ACegOACacdcAAQAAABUAAHE7AABWfwAAwAAAAiAAAAEAAAAEgAAAAYAAAAqAAAACAAAAEaAAAAMAAAAhgAAABMAAAD6AAAAFwAAAVEAAAAbAAABrAAAACAAAAIxAAAAJAAAAqYAAAApAAADKwAAAC8AAAPTAAAANwAABJAAAABAAAAFEn9IAFEAAAV49zAAZAAABbrsYABzQAAFz78AAIOAAAXhvwAAkIAABem/AACegAAF8JGg=</data>
<key>HIDScrollAccelerationType</key>
<string>HIDTrackpadScrollAcceleration</string>
<key>HIDScrollResolution</key>
<integer>26214400</integer>
<key>IOCFPlugInTypes</key>
<dict>
<key>0516B563-B15B-11DA-96EB-0014519758EF</key>
<string>AppleMultitouchDriver.kext/Contents/PlugIns/MultitouchHID.plugin</string>
</dict>
<key>IOClass</key>
<string>AppleMultitouchTrackpadHIDEventDriver</string>
<key>IOProbeScore</key>
<integer>9999</integer>
<key>IOProviderClass</key>
<string>IOHIDInterface</string>
<key>MTEventSource</key>
<true/>
<key>ProductIDArray</key>
<array>
<integer>628</integer>
</array>
<key>TrackpadEmbedded</key>
<true/>
<key>VendorID</key>
<integer>1452</integer>
</dict>
<key>ELANTouchpadDriver</key>
<dict>
<key>CFBundleIdentifier</key>
<string>de.leo-labs.VoodooSMBus</string>
<key>Configuration</key>
<dict>
<key>DisableWhileTrackpoint</key>
<true/>
<key>DisableWhileTrackpointTimeoutMs</key>
<integer>500</integer>
<key>DisableWhileTypingTimeoutMs</key>
<integer>400</integer>
<key>IgnoreSetTouchpadStatus</key>
<false/>
</dict>
<key>IOClass</key>
<string>ELANTouchpadDriver</string>
<key>IOProbeScore</key>
<integer>400</integer>
<key>IOProviderClass</key>
<string>VoodooSMBusDeviceNub</string>
<key>RM,deliverNotifications</key>
<true/>
</dict>
<key>Native Multitouch Engine</key>
<dict>
<key>CFBundleIdentifier</key>
<string>de.leo-labs.VoodooSMBus</string>
<key>IOClass</key>
<string>VoodooI2CNativeEngine</string>
<key>IOMatchCategory</key>
<string>VoodooI2CNativeEngine</string>
<key>IOProviderClass</key>
<string>VoodooI2CMultitouchInterface</string>
</dict>
<key>VoodooSMBusControllerDriver</key>
<dict>
<key>Addresses</key>
<array>
<integer>44</integer>
<integer>21</integer>
</array>
<key>CFBundleIdentifier</key>
<string>de.leo-labs.VoodooSMBus</string>
<key>IOClass</key>
<string>VoodooSMBusControllerDriver</string>
<key>IOPCIMatch</key>
<string>0x9d238086 0xa3238086</string>
<key>IOPCIMatchComment</key>
<string>Intel SMBus Controller i80 (9d23: Sunrise Point-LP (PCH), a323: Cannon Lake-H (PCH))</string>
<key>IOProbeScore</key>
<integer>400</integer>
<key>IOProviderClass</key>
<string>IOPCIDevice</string>
</dict>
<key>VoodooSMBusIntelLpssI2C</key>
<dict>
<key>CFBundleIdentifier</key>
<string>de.leo-labs.VoodooSMBus</string>
<key>IOClass</key>
<string>VoodooSMBusIntelLpssI2C</string>
<key>IOPCIMatch</key>
<string>0x9d608086</string>
<key>IOPCIMatchComment</key>
<string>Dummy IntelLpssI2CDriver</string>
<key>IOProbeScore</key>
<integer>400</integer>
<key>IOProviderClass</key>
<string>IOPCIDevice</string>
</dict>
</dict>
<key>NSHumanReadableCopyright</key>
<string>Copyright © 2019 leo-labs. All rights reserved.</string>
<key>OSBundleCompatibleVersion</key>
<string>2.1</string>
<key>OSBundleLibraries</key>
<dict>
<key>com.apple.iokit.IOHIDFamily</key>
<string>2.0</string>
<key>com.apple.iokit.IOPCIFamily</key>
<string>2.9</string>
<key>com.apple.kpi.iokit</key>
<string>18.5</string>
<key>com.apple.kpi.libkern</key>
<string>18.5</string>
<key>com.apple.kpi.mach</key>
<string>18.5</string>
</dict>
<key>OSBundleRequired</key>
<string>Root</string>
</dict>
</plist>

View file

@ -0,0 +1,50 @@
/*
* VoodooSMBusDeviceNub.hpp
* SMBus Controller Driver for macOS X
*
* Copyright (c) 2019 Leonard Kleinhans <leo-labs>
*
*/
#ifndef VoodooSMBusDeviceNub_hpp
#define VoodooSMBusDeviceNub_hpp
#include <IOKit/IOService.h>
class VoodooSMBusControllerDriver;
class VoodooSMBusSlaveDevice;
typedef UInt8 u8;
#ifndef EXPORT
#define EXPORT __attribute__((visibility("default")))
#endif
class EXPORT VoodooSMBusDeviceNub : public IOService {
OSDeclareDefaultStructors(VoodooSMBusDeviceNub);
public:
bool init() override;
bool attach(IOService* provider, UInt8 address);
bool start(IOService* provider) override;
void stop(IOService* provider) override;
void free(void) override;
void handleHostNotify();
void setSlaveDeviceFlags(unsigned short flags);
IOReturn writeByteData(u8 command, u8 value);
IOReturn readByteData(u8 command);
IOReturn readBlockData(u8 command, u8 *values);
IOReturn writeByte(u8 value);
IOReturn writeBlockData(u8 command, u8 length, const u8 *values);
IOReturn wakeupController();
private:
VoodooSMBusControllerDriver* controller;
void releaseResources();
VoodooSMBusSlaveDevice* slave_device;
void handleHostNotifyThreaded();
};
#endif /* VoodooSMBusDeviceNub_hpp */

View file

@ -0,0 +1,132 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>files</key>
<dict>
<key>Resources/Headers/VoodooSMBusDeviceNub.hpp</key>
<data>
Gkz/vNrHlRcTeb3TNsAqUb24aZ4=
</data>
</dict>
<key>files2</key>
<dict>
<key>Resources/Headers/VoodooSMBusDeviceNub.hpp</key>
<dict>
<key>hash</key>
<data>
Gkz/vNrHlRcTeb3TNsAqUb24aZ4=
</data>
<key>hash2</key>
<data>
OgYn96uJNktmjX+20pkPJEVgMAFTgyFCGxbanbDpdzA=
</data>
</dict>
</dict>
<key>rules</key>
<dict>
<key>^Resources/</key>
<true/>
<key>^Resources/.*\.lproj/</key>
<dict>
<key>optional</key>
<true/>
<key>weight</key>
<real>1000</real>
</dict>
<key>^Resources/.*\.lproj/locversion.plist$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>1100</real>
</dict>
<key>^Resources/Base\.lproj/</key>
<dict>
<key>weight</key>
<real>1010</real>
</dict>
<key>^version.plist$</key>
<true/>
</dict>
<key>rules2</key>
<dict>
<key>.*\.dSYM($|/)</key>
<dict>
<key>weight</key>
<real>11</real>
</dict>
<key>^(.*/)?\.DS_Store$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>2000</real>
</dict>
<key>^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/</key>
<dict>
<key>nested</key>
<true/>
<key>weight</key>
<real>10</real>
</dict>
<key>^.*</key>
<true/>
<key>^Info\.plist$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>20</real>
</dict>
<key>^PkgInfo$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>20</real>
</dict>
<key>^Resources/</key>
<dict>
<key>weight</key>
<real>20</real>
</dict>
<key>^Resources/.*\.lproj/</key>
<dict>
<key>optional</key>
<true/>
<key>weight</key>
<real>1000</real>
</dict>
<key>^Resources/.*\.lproj/locversion.plist$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>1100</real>
</dict>
<key>^Resources/Base\.lproj/</key>
<dict>
<key>weight</key>
<real>1010</real>
</dict>
<key>^[^/]+$</key>
<dict>
<key>nested</key>
<true/>
<key>weight</key>
<real>10</real>
</dict>
<key>^embedded\.provisionprofile$</key>
<dict>
<key>weight</key>
<real>20</real>
</dict>
<key>^version\.plist$</key>
<dict>
<key>weight</key>
<real>20</real>
</dict>
</dict>
</dict>
</plist>

View file

@ -38,14 +38,6 @@
<key>Path</key>
<string>SSDT-ALS0.aml</string>
</dict>
<dict>
<key>Comment</key>
<string>SBUS</string>
<key>Enabled</key>
<true/>
<key>Path</key>
<string>SSDT-SBUS.aml</string>
</dict>
<dict>
<key>Comment</key>
<string>Thinkpad Keyboard (Need x1c6-keyboard.plist)</string>
@ -94,14 +86,6 @@
<key>Path</key>
<string>SSDT-DMAC.aml</string>
</dict>
<dict>
<key>Comment</key>
<string>Fake MCHC (Completeness)</string>
<key>Enabled</key>
<true/>
<key>Path</key>
<string>SSDT-MCHC.aml</string>
</dict>
<dict>
<key>Comment</key>
<string>Fake PMCR (Completeness)</string>
@ -492,254 +476,6 @@
<data>
</data>
</dict>
<dict>
<key>Comment</key>
<string>Mutex:MDGS=0</string>
<key>Count</key>
<integer>0</integer>
<key>Enabled</key>
<true/>
<key>Find</key>
<data>
AU1ER1MH
</data>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data>
</data>
<key>OemTableId</key>
<data>
</data>
<key>Replace</key>
<data>
AU1ER1MA
</data>
<key>ReplaceMask</key>
<data>
</data>
<key>Skip</key>
<integer>0</integer>
<key>TableLength</key>
<integer>0</integer>
</dict>
<dict>
<key>Comment</key>
<string>Mutex:MCPU=0</string>
<key>Count</key>
<integer>0</integer>
<key>Enabled</key>
<true/>
<key>Find</key>
<data>
AU1DUFUH
</data>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data>
</data>
<key>OemTableId</key>
<data>
</data>
<key>Replace</key>
<data>
AU1DUFUA
</data>
<key>ReplaceMask</key>
<data>
</data>
<key>Skip</key>
<integer>0</integer>
<key>TableLength</key>
<integer>0</integer>
</dict>
<dict>
<key>Comment</key>
<string>Mutex:BATM=0</string>
<key>Count</key>
<integer>0</integer>
<key>Enabled</key>
<true/>
<key>Find</key>
<data>
AUJBVE0H
</data>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data>
</data>
<key>OemTableId</key>
<data>
</data>
<key>Replace</key>
<data>
AUJBVE0A
</data>
<key>ReplaceMask</key>
<data>
</data>
<key>Skip</key>
<integer>0</integer>
<key>TableLength</key>
<integer>0</integer>
</dict>
<dict>
<key>Comment</key>
<string>Mutex:MSMI=0</string>
<key>Count</key>
<integer>0</integer>
<key>Enabled</key>
<true/>
<key>Find</key>
<data>
AU1TTUkH
</data>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data>
</data>
<key>OemTableId</key>
<data>
</data>
<key>Replace</key>
<data>
AU1TTUkA
</data>
<key>ReplaceMask</key>
<data>
</data>
<key>Skip</key>
<integer>0</integer>
<key>TableLength</key>
<integer>0</integer>
</dict>
<dict>
<key>Comment</key>
<string>Mutex:BFWM=0</string>
<key>Count</key>
<integer>0</integer>
<key>Enabled</key>
<true/>
<key>Find</key>
<data>
AUJGV00H
</data>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data>
</data>
<key>OemTableId</key>
<data>
</data>
<key>Replace</key>
<data>
AUJGV00A
</data>
<key>ReplaceMask</key>
<data>
</data>
<key>Skip</key>
<integer>0</integer>
<key>TableLength</key>
<integer>0</integer>
</dict>
<dict>
<key>Comment</key>
<string>Mutex:XDHK=0</string>
<key>Count</key>
<integer>0</integer>
<key>Enabled</key>
<true/>
<key>Find</key>
<data>
AVhESEsH
</data>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data>
</data>
<key>OemTableId</key>
<data>
</data>
<key>Replace</key>
<data>
AVhESEsA
</data>
<key>ReplaceMask</key>
<data>
</data>
<key>Skip</key>
<integer>0</integer>
<key>TableLength</key>
<integer>0</integer>
</dict>
<dict>
<key>Comment</key>
<string>Mutex:MWMI=0</string>
<key>Count</key>
<integer>0</integer>
<key>Enabled</key>
<true/>
<key>Find</key>
<data>
AU1XTUkH
</data>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data>
</data>
<key>OemTableId</key>
<data>
</data>
<key>Replace</key>
<data>
AU1XTUkA
</data>
<key>ReplaceMask</key>
<data>
</data>
<key>Skip</key>
<integer>0</integer>
<key>TableLength</key>
<integer>0</integer>
</dict>
<dict>
<key>Comment</key>
<string>Mutex:NPWM=0</string>
<key>Count</key>
<integer>0</integer>
<key>Enabled</key>
<true/>
<key>Find</key>
<data>
AU5QV00H
</data>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data>
</data>
<key>OemTableId</key>
<data>
</data>
<key>Replace</key>
<data>
AU5QV00A
</data>
<key>ReplaceMask</key>
<data>
</data>
<key>Skip</key>
<integer>0</integer>
<key>TableLength</key>
<integer>0</integer>
</dict>
<dict>
<key>Comment</key>
<string>_PTS to ZPTS(1,N)</string>
@ -1148,6 +884,40 @@
<data>
</data>
</dict>
<dict>
<key>Comment</key>
<string>_Q74 to XQ74 (FnLock - Fn + Esc)</string>
<key>Count</key>
<integer>1</integer>
<key>Enabled</key>
<true/>
<key>Find</key>
<data>
X1E3NA==
</data>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data>
</data>
<key>OemTableId</key>
<data>
</data>
<key>Replace</key>
<data>
WFE3NA==
</data>
<key>ReplaceMask</key>
<data>
</data>
<key>Skip</key>
<integer>0</integer>
<key>TableLength</key>
<integer>0</integer>
<key>TableSignature</key>
<data>
</data>
</dict>
</array>
<key>Quirks</key>
<dict>
@ -1224,30 +994,30 @@
<data>
FlkAAA==
</data>
<key>enable-hdmi20</key>
<key>disable-external-gpu</key>
<data>
AQAAAA==
</data>
<key>framebuffer-con1-alldata</key>
<data>
AQUJAAAIAADHAwAA
</data>
<key>framebuffer-con1-enable</key>
<data>
AQAAAA==
</data>
<key>framebuffer-con1-type</key>
<key>framebuffer-con2-alldata</key>
<data>
AAgAAA==
AgQKAAAEAADHAwAA
</data>
<key>framebuffer-fbmem</key>
<key>framebuffer-con2-enable</key>
<data>
AACQAA==
AQAAAA==
</data>
<key>framebuffer-patch-enable</key>
<data>
AQAAAA==
</data>
<key>framebuffer-stolenmem</key>
<data>
AAAwAQ==
</data>
</dict>
</dict>
<key>Delete</key>
@ -1417,6 +1187,70 @@
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>BundlePath</key>
<string>VoodooRMI.kext/Contents/Plugins/VoodooInput.kext</string>
<key>Comment</key>
<string>Input for Synaptics SMBUS touchpad support</string>
<key>Enabled</key>
<true/>
<key>ExecutablePath</key>
<string>Contents/MacOS/VoodooInput</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string></string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>BundlePath</key>
<string>VoodooSMBus.kext</string>
<key>Comment</key>
<string>Synaptics SMBUS touchpad support</string>
<key>Enabled</key>
<true/>
<key>ExecutablePath</key>
<string>Contents/MacOS/VoodooSMBus</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string></string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>BundlePath</key>
<string>VoodooRMI.kext</string>
<key>Comment</key>
<string>Synaptics SMBUS touchpad support</string>
<key>Enabled</key>
<true/>
<key>ExecutablePath</key>
<string>Contents/MacOS/VoodooRMI</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string></string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>BundlePath</key>
<string>VoodooPS2Controller.kext/Contents/Plugins/VoodooInput.kext</string>
<key>Comment</key>
<string></string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/VoodooInput</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string></string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>BundlePath</key>
<string>VoodooPS2Controller.kext</string>
@ -1433,29 +1267,13 @@
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>BundlePath</key>
<string>VoodooPS2Controller.kext/Contents/Plugins/VoodooInput.kext</string>
<key>Comment</key>
<string></string>
<key>Enabled</key>
<true/>
<key>ExecutablePath</key>
<string>Contents/MacOS/VoodooInput</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string></string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>BundlePath</key>
<string>VoodooPS2Controller.kext/Contents/Plugins/VoodooPS2Mouse.kext</string>
<key>Comment</key>
<string>Mouse</string>
<key>Enabled</key>
<true/>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/VoodooPS2Mouse</string>
<key>MaxKernel</key>
@ -1471,7 +1289,7 @@
<key>Comment</key>
<string>Trackpad</string>
<key>Enabled</key>
<true/>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/VoodooPS2Trackpad</string>
<key>MaxKernel</key>
@ -1590,7 +1408,76 @@
</data>
</dict>
<key>Patch</key>
<array/>
<array>
<dict>
<key>Base</key>
<string></string>
<key>Comment</key>
<string>KBL-DVMTpatch-10.15-10.15.1-10.15.2-10.15.3 (Enable 4K UHD HDMI/DisplayPort Output)</string>
<key>Count</key>
<integer>0</integer>
<key>Enabled</key>
<true/>
<key>Find</key>
<data>
D4KnAwAA
</data>
<key>Identifier</key>
<string>com.apple.driver.AppleIntelKBLGraphicsFramebuffer</string>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data>
</data>
<key>MaxKernel</key>
<string>19.3.0</string>
<key>MinKernel</key>
<string></string>
<key>Replace</key>
<data>
D4IAAAAA
</data>
<key>ReplaceMask</key>
<data>
</data>
<key>Skip</key>
<integer>0</integer>
</dict>
<dict>
<key>Base</key>
<string></string>
<key>Comment</key>
<string>KBL-DVMTpatch-10.15.4 (Enable 4K UHD HDMI/DisplayPort Output)</string>
<key>Count</key>
<integer>0</integer>
<key>Enabled</key>
<true/>
<key>Find</key>
<data>
D4KPAwAA
</data>
<key>Identifier</key>
<string>com.apple.driver.AppleIntelKBLGraphicsFramebuffer</string>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data>
</data>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>19.4.0</string>
<key>Replace</key>
<data>
D4IAAAAA
</data>
<key>ReplaceMask</key>
<data>
</data>
<key>Skip</key>
<integer>0</integer>
</dict>
</array>
<key>Quirks</key>
<dict>
<key>AppleCpuPmCfgLock</key>
@ -1634,7 +1521,7 @@
<key>ConsoleAttributes</key>
<integer>0</integer>
<key>HibernateMode</key>
<string>None</string>
<string>Auto</string>
<key>HideAuxiliary</key>
<false/>
<key>PickerAudioAssist</key>

View file

@ -19,17 +19,39 @@ See [`docs/5_README-other`](https://github.com/tylernguyen/x1c6-hackintosh/blob/
`CPUFriendDataProvider` can be generated with [CPUFriendFriend](https://github.com/corpnewt/CPUFriendFriend_) or [one-key-cpufriend](https://github.com/stevezhengshiqi/one-key-cpufriend). This is especially important if you have a different CPU than mine. Even if you have the same CPU as me, you may prefer a different Energy Performance Preference (EPP) so do generate your own CPUFriendDataProvider.
> ## Important Note:
Unlike Clover, where SSDT patches are only being applied when booting macOS. OpenCore will apply SSDT patches regardless of the operating system. This is critical when multi-booting, since Windows and Linux do not need the additional patches that macOS does. In many cases, if Windows/Linux fails to boot under OpenCore, it is likely that your macOS intended SSDT patch(s) is being applied universally. To prevent OpenCore from doing this, it is important that your SSDT patches specify its intended OS, which in our case is "Darwin."
See highlighted example:
![OpenCore SSDT patching notice](https://raw.githubusercontent.com/tylernguyen/x1c6-hackintosh/master/docs/assets/img/OpenCore%20SSDT%20patching%20notice.png)
> ## Checking your OpenCore config.plist
It is important to keep your OpenCore config.plist properly up-to-spec, as OpenCore configurations tend to change accordingly with OpenCore versions. A good resource to check your config plist is https://opencore.slowgeek.com/.
> ## `config.plist` Comments:
* Notes on kexts and ACPI patches are on the respective Add OpenCore entry.
* Injects AppleALC layout-id `21`:
`Device Properties` > `PciRoot(0x0)/Pci(0x1f,0x3)` > `layout-id`:
* Intel iGPU and HDMI patches:
`Device Properties` > `PciRoot(0x0)/Pci(0x2,0x0)` >
* `device-id` = `16590000` per [WhateverGreen/IntelHD.en.md](https://github.com/acidanthera/WhateverGreen/blob/master/Manual/FAQ.IntelHD.en.md)
* FileVault compatibility:
* Misc -> Boot
* `PollAppleHotKeys` set to YES(While not needed can be helpful)
* Misc -> Security
* `AuthRestart` set to YES(Enables Authenticated restart for FileVault 2 so password is not required on reboot. Can be considered a security risk so optional)
* NVRAM -> Add -> 4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14
* `UIScale` set to `02` for high resolution small displays
* UEFI -> Input
* `KeySupport` set to YES(Only when using OpenCore's builtin input, users of OpenUsbKbDxe should avoid)
* UEFI -> Output
* `ProvideConsoleGop` to YES
* UEFI -> ProtocolOverrides
* `FirmwareVolume` set to YES
* `AppleSmcIo` set to YES(this replaces VirtualSMC.efi)
* UEFI -> Quirks
* `RequestBootVarRouting` set to YES
* OpenCanopy Support:
I prefer OpenCanopy for its looks. However, it is completely optional and can take up space in your EFI. If you would rather use OpenCore's built in picker. Change `PickerMode` to `Builtin` and remove `OpenCanopy.efi` from `UEFI` > `Drivers`.
* OpenCore tools and utilities are removed for a clean setup and can be added when needed.
> ## Updating:
To update your OpenCore folder to my current version, simply backup your `PlatformInfo` information and move it to the new OpenCore config. Keep in mind that, depending on your setup, you may wish to keep other settings you've made so make sure to note your OpenCore `config.plist` changes as you make them.

View file

@ -184,13 +184,13 @@
</dict>
<dict>
<key>BundlePath</key>
<string>VoodooPS2Controller.kext</string>
<string>VoodooPS2Controller.kext/Contents/Plugins/VoodooInput.kext</string>
<key>Comment</key>
<string>VoodooPS2Controller</string>
<string></string>
<key>Enabled</key>
<true/>
<key>ExecutablePath</key>
<string>Contents/MacOS/VoodooPS2Controller</string>
<string>Contents/MacOS/VoodooInput</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
@ -200,13 +200,13 @@
</dict>
<dict>
<key>BundlePath</key>
<string>VoodooPS2Controller.kext/Contents/Plugins/VoodooInput.kext</string>
<string>VoodooPS2Controller.kext</string>
<key>Comment</key>
<string></string>
<string>VoodooPS2Controller</string>
<key>Enabled</key>
<true/>
<key>ExecutablePath</key>
<string>Contents/MacOS/VoodooInput</string>
<string>Contents/MacOS/VoodooPS2Controller</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>

View file

@ -25,38 +25,53 @@
##### Recent | [Changelog Archive](https://github.com/tylernguyen/x1c6-hackintosh/blob/master/docs/CHANGELOG.md)
> ### 2020-6-1
> ### 2020-6-26
#### Added
- `VoodooRMI` as alternative trackpad option. **Enabled by default, feel free to revert back to `VoodooPS2Mouse` and `VoodooPS2Trackpad` if you prefer**. *Note, there's currently a bug with RMI where the touchpad would not load once in a while. The RMI kext uploaded in this repo has a temp fix by me (See [VoodooSMBUS/PR](https://github.com/VoodooSMBus/VoodooSMBus/pull/41)). However, the issue is still ongoing and the dev team is aware of it. I'm switching this repo to VoodooRMI because I believe it's the future and I want to possible bugs to be reported to be fixed for the kext's first stable release.
- Kernel patches to enable 4K external graphics, thank you so much [@benbender](https://github.com/benbender)
- `XQ74` patch in `SSDT-Keyboard` to support `FnLock` HUD per ThinkpadAssistant 1.8.0
- In [EFI-OpenCore/README.md](https://github.com/tylernguyen/x1c6-hackintosh/blob/master/EFI-OpenCore/README.md), I've added a short section explaining why certain variables are the way they are in my `config.plist`. I will continue to update this section with more details as time goes on.
#### Changed
- OpenCore to 0.5.9
- Upgraded various Acidanthera kexts.
- Recompiled various SSDT with new iasl libraries.
- Replaced `SSDT-EXT3` with `SSDT-LED`
- Change SSDT OEM ID to `tyler` to somewhat track distributions and usage across various projects
- iGPU Framebuffer patching for HDMI issue in Catalina.
- In Catalina/WhateverGreen version, for some reasons my previous framebuffer patches for HDMI no longer worked. So I re-did the patch in mode details but eventually the property that fixed it was `disable-external-gpu` or `-wegnoegpu`. For some strange reasons, that variable activated on-board HDMI. See [similar reports here](https://www.tonymacx86.com/threads/guide-general-framebuffer-patching-guide-hdmi-black-screen-problem.269149/page-123). I'm going to create an issue on acidanthera/bugtracker soon to report to the dev team. In the mean time, keep this property if you rely on HDMI and do not have an eGPU. Delete this property if you have an eGPU (You're likely using the HDMI on the eGPU anyway).
- Fixed `VoodooPS2` kexts loading order.
- Various reference docs to dortania.
- `HibernateMode` to `Auto`
#### Removed
- Unnecessary Mutex OpenCore patches, all Mutex are already 0 in stock `DSDT`.
- `SSDT-MCHC` and `SSDT-SBUS` for `VoodooRMI` compatibility.
> ## SUMMARY:
**`In short, x1c6-hackintosh is very stable and is currently my daily driver. I fully recommend this project to anyone looking for a MacBook alternative.`**
| Fully functional | Non-functional | Semi-functional. Additional pulls needed and welcomed. |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| WiFi, Bluetooth, Apple Continuity ✅ \*need [network card replacement](https://github.com/tylernguyen/x1c6-hackintosh/blob/master/docs/1_README-HARDWAREandBIOS.md) | Fingerprint Reader (not needed, DISABLED at BIOS) ❌ | Video Output: Currently only output `2560x1440`. Though capable of 4K `4096x2150`. See [Issue #40](https://github.com/tylernguyen/x1c6-hackintosh/issues/40) ⚠️ |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------- |
| WiFi, Bluetooth, Apple Continuity ✅ \*need [network card replacement](https://github.com/tylernguyen/x1c6-hackintosh/blob/master/docs/1_README-HARDWAREandBIOS.md) | Fingerprint Reader (not needed, DISABLED at BIOS) ❌ | Power management and optimizations. See [Issue #28](https://github.com/tylernguyen/x1c6-hackintosh/issues/28) ⚠️ |
| USB A, USB C, Webcam, Audio Playback/Recording Sleep, Ethernet, Intel Graphics, TrackPoint and Trackpad, MicroSD card reader ✅ | Wireless WAN (DISABLED at BIOS) \*ENABLED if you have a 2nd drive connected❌ | Thunderbolt 3 hotplug partially working. See [Issue #24](https://github.com/tylernguyen/x1c6-hackintosh/issues/24#issuecomment-603183002) ⚠️ |
| iCloud suite: App Store, iMessage, FaceTime, iCloud Drive, etc... ✅ | Hibernation ❌ | Power management and optimizations. See [Issue #28](https://github.com/tylernguyen/x1c6-hackintosh/issues/28) ⚠️ |
| iCloud suite: App Store, iMessage, FaceTime, iCloud Drive, etc... ✅ | Hibernation mode 25 ❌ CMOS error, see [Issue #44](https://github.com/tylernguyen/x1c6-hackintosh/issues/44) | |
| Multimedia Fn keys ✅ \*need [ThinkpadAssistant](https://github.com/MSzturc/ThinkpadAssistant) | | |
| PM981 installation. ✅ See [Issue #43](https://github.com/tylernguyen/x1c6-hackintosh/issues/43) | | |
| 4K UHD via HDMI/DisplayPort. ✅ \*one minor quirk with Recovery and macOS updates, See [Issue #28](https://github.com/tylernguyen/x1c6-hackintosh/issues/28#issuecomment-649107190) | | |
**For more information regarding certain features, please refer to [`docs/3_README-POSTinstallation.md`](https://github.com/tylernguyen/x1c6-hackintosh/blob/master/docs/3_README-POSTinstallation.md)**
> ## NEEDED:
A macOS machine would be VERY useful: to create install drives, and for when your ThinkPad cannot boot. Though it is not completely necessary.
Flash drive, 16GB or more.
Xcode works fine for editing plist files, but I prefer [PlistEdit Pro](https://www.fatcatsoftware.com/plisteditpro/).
Flash drive, 12GB or more.
Xcode works fine for editing plist files on macOS, but I prefer [PlistEdit Pro](https://www.fatcatsoftware.com/plisteditpro/).
[ProperTree](https://github.com/corpnewt/ProperTree) if you need to edit plist files on Windows.
[MaciASL](https://github.com/acidanthera/MaciASL), for patching ACPI tables.
[MountEFI](https://github.com/corpnewt/MountEFI) to quickly mount EFI partitions.
[IOJones](https://github.com/acidanthera/IOJones), for diagnosis.
[Hackintool](https://www.insanelymac.com/forum/topic/335018-hackintool-v286/), for diagnosis.
[Hackintool](https://www.insanelymac.com/forum/topic/335018-hackintool-v286/), for diagnostic ONLY, Hackintool should not be used for patching, it is outdated.
> ## WHERE TO START:
@ -100,10 +115,14 @@ TrackPad: PS/2
> ## Read These (References):
- [dortania Hackintosh guides](https://github.com/dortania)
- [The Vanilla Laptop Guide](https://fewtarius.gitbook.io/laptopguide/)
- [dortania's Hackintosh guides](https://github.com/dortania)
- [dortania/ Getting Started with ACPI](https://dortania.github.io/Getting-Started-With-ACPI/)
- [dortania/ vanilla laptop guide](https://dortania.github.io/vanilla-laptop-guide/)
- [dortania/ opencore `laptop` guide](https://dortania.github.io/oc-laptop-guide/)
- [dortania/ opencore `desktop` guide](https://dortania.github.io/OpenCore-Desktop-Guide/)
- [dortania/ opencore `multiboot`](https://github.com/dortania/OpenCore-Multiboot)
- [dortania/ `USB map` guide](https://github.com/dortania/USB-Map-Guide)
- Daliansky's [Hackintool tutorial](https://translate.google.com/translate?js=n&sl=auto&tl=en&u=https://blog.daliansky.net/Intel-FB-Patcher-tutorial-and-insertion-pose.html).
- [Getting Started with ACPI](https://khronokernel.github.io/Getting-Started-With-ACPI/)
- [WhateverGreen Intel HD Manual](https://github.com/acidanthera/WhateverGreen/blob/master/Manual/FAQ.IntelHD.en.md)
> ## OTHER x1c6-hackintosh REPOSITORIES:
@ -115,7 +134,7 @@ Create a pull request if you like to be added, final decision at my discreation.
> ## CONTACT:
https://tylerspaper.com/contact
Signal: (202)-644-9951 \*This is a Signal ONLY number. You will not get a reply of you text me at this number.
Signal: +1 (202)-644-9951 \*This is a Signal ONLY number. You will not get a reply of you text me at this number.
> ## DONATE AND SUPPORT:
@ -128,8 +147,11 @@ https://tylerspaper.com/support/
[@corpnewt](https://github.com/corpnewt) for CPUFriendFriend.
[@Sniki](https://github.com/Sniki) and [@goodwin](https://github.com/goodwin) for ALCPlugFix.
[@xzhih](https://github.com/xzhih) for one-key-hidpi.
[@daliansky](https://github.com/daliansky) for all the hotpatches.
[@daliansky](https://github.com/daliansky) for various hotpatches.
[@velaar](https://github.com/velaar) for your continual support and contributions.
[@benbender](https://github.com/benbender) for the the 4K output patch.
[@Porco-Rosso](https://github.com/Porco-Rosso) putting up with my requests to test repo changes.
[@MSzturc](https://github.com/MSzturc) for adding my requested features to ThinkpadAssistant.
The greatest thank you and appreciation to [@Acidanthera](https://github.com/acidanthera), without whom's work, none of this would be possible.

View file

@ -1,7 +1,10 @@
> ## Partitioning to dual-boot on one drive:
Please refer to [dortania/ opencore `multiboot`](https://github.com/dortania/OpenCore-Multiboot).
*Note that on the x1c6, it is possible, and better to dual boot off of a second drive in the WWAN slot.
> ## Creating a macOS Installation Media:
> ### If you have a macOS machine:
1. Download macOS installer from the App Store.
2. Erase the installation media as GUID Partition Map, Mac OS Extended "Journaled". Name it "Install macOS (MacOS version)" - Example: "Install macOS Catalina".
3. Use 'createinstallermedia' command to copy installer to install media. [guide](https://support.apple.com/en-us/ht201372)
@ -13,3 +16,8 @@
8. Complete the installation.
9. Boot into the newly installed Hackintosh partition using the installation media. That is to say, boot into the installtion media for OpenCore to boot into the installed Hackintosh partition.
10. Proceed with post installation configurations.
> ### If you do not have a macOS machine:
Use [gibMacOS](https://github.com/corpnewt/gibMacOS) to create installation media on Windows/Linux. I prefer an offline installation as opposed to the recovery method.
> ## **Refer to [Dortania](https://github.com/dortania) for more detailed documentations.**

View file

@ -24,20 +24,20 @@ For the kexts you will be using, make sure to create matching entries within `Op
| Bluetooth | ✅ | Native with BCM94360CS2. `BrcmFirmwareRepo.kext`, `BrcmPatchRAM3.kext`, and `BrcmBluetoothInjector.kext` otherwise. | See `patches/OpenCore Patches/` for specific network card. |
| Continuty | ✅ | Native with BCM94360CS2. `BT4LEContiunityFixup.kext` otherwise. Working Blutetooth and WiFi setup | See `patches/OpenCore Patches/` for specific network card. |
| AirDrop | ✅ | Native with BCM94360CS2. `BT4LEContiunityFixup.kext` otherwise. Working Blutetooth and WiFi setup | See `patches/OpenCore Patches/` for specific network card. |
| TrackPoint | ✅ | Patched `VoodooPS2Controller.kext` | - |
| TrackPad | ✅ | `VoodooPS2Controller.kext` | - |
| Built-in Keyboard | ✅ | `VoodooPS2Controller.kext` Optimizations recommended, see [`docs/5_README-other.md`](https://github.com/tylernguyen/x1c6-hackintosh/blob/master/docs/3_README-POSTinstallation.md) | - |
| TrackPoint | ✅ | `VoodooPS2Controller.kext` | - |
| TrackPad | ✅ | `VoodooPS2Controller. kext` or `VoodooRMI.kext` | - |
| Built-in Keyboard | ✅ | `VoodooPS2Controller.kext` and [ThinkpadAssistant](https://github.com/MSzturc/ThinkpadAssistant). Optimizations recommended, see [`docs/5_README-other.md`](https://github.com/tylernguyen/x1c6-hackintosh/blob/master/docs/5_README-other.md) | - |
| Battery Percentage Indication | ✅ | `SSDT-OCBAT0-TP_tx80_x1c6th.aml` | Use [MaciASL](https://bitbucket.org/RehabMan/os-x-maciasl-patchmatic/downloads/) |
| CPU Power Management (SpeedShift) | ✅ | `XCPM` and `CPUFriend.kext`, generate your own CPUFriendDataProvider with [CPUFriendFriend](https://github.com/corpnewt/CPUFriendFriend_) or [one-key-cpufriend](https://github.com/stevezhengshiqi/one-key-cpufriend). |
| IGPU Power Management | ✅ | `XCPM`, enabled by `SSDT-PLUG-_PR.PR00.aml` | - |
| PCIe Ethernet | ✅ | `IntelMausi.kext` | Needs Lenovo Ethernet adapter | |
| Audio Recording | ✅ | `AppleALC.kext` with Layout ID = 21 | - |
| Audio Playback | ✅ | `AppleALC.kext` with Layout ID = 21 | - |
| Automatic Headphone Output Switching | ✅ | `ALCPlugFix` | - |
| Automatic Headphone Output Switching | ✅ | [ALCPlugFix](https://github.com/tylernguyen/x1c6-hackintosh/tree/master/patches/ALCPlugFix) | - |
| Full Graphics Accleration (QE/CI) | ✅ | `WhateverGreen.kext` | - |
| Brightness Adjustments | ✅ | `WhateverGreen.kext` and `SSDT-PNLF-SKL_KBL.aml` | - |
| Micro SD Card Reader | ✅ | Custom `USBPorts.kext` See current OpenCore-EFI kext folder. You can create your own with Hackintool. | - |
| USB 3.1 | ✅ | Custom `USBPorts.kext` See current OpenCore-EFI kext folder. You can create your own with Hackintool. | - |
| Micro SD Card Reader | ✅ | Custom `USBPorts.kext` See current OpenCore-EFI kext folder. You can create your own with [USBMap](https://github.com/corpnewt/USBMap). | - |
| USB 3.1 | ✅ | Custom `USBPorts.kext` See current OpenCore-EFI kext folder. You can create your own with [USBMap](https://github.com/corpnewt/USBMap). | - |
| DisplayPort on Thunderbolt 3 Dock | ⚠️ | `SSDT-TB3.aml`, `IOElectrify.kext` | [More details](https://github.com/tylernguyen/x1c6-hackintosh/issues/24#issuecomment-603183002) |
| Thunderbolt 3 Dock (Port Replicator) | ✅ | `SSDT-TB3.aml`, `IOElectrify.kext` | - |
| Thunderbolt 3 Hotplug | ⚠️ | `SSDT-TB3.aml`, `IOElectrify.kext` | [More details](https://github.com/tylernguyen/x1c6-hackintosh/issues/24#issuecomment-603183002) |

View file

@ -24,6 +24,13 @@ Should your source DSDT be similar enough (in regards to certain items in these
## Some patches here may be unused. Refer to the current OpenCore-EFI folder to see which one I am currently using. While other patches may be needed case-by-case, such as the WiFi/Bluetooth patches.
> ## Important Note:
Unlike Clover, where SSDT patches are only being applied when booting macOS. OpenCore will apply SSDT patches regardless of the operating system. This is critical when multi-booting, since Windows and Linux do not need the additional patches that macOS does. In many cases, if Windows/Linux fails to boot under OpenCore, it is likely that your macOS intended SSDT patch(s) is being applied universally. To prevent OpenCore from doing this, it is important that your SSDT patches specify its intended OS, which in our case is "Darwin."
See highlighted example:
![OpenCore SSDT patching notice](https://raw.githubusercontent.com/tylernguyen/x1c6-hackintosh/master/docs/assets/img/OpenCore%20SSDT%20patching%20notice.png)
## Some Thinkpad machines are `LPC` and some are`LPCB`. Please examine your own DSDT and modify patches as needed.
> ### Non-native WiFi and Bluetooth
@ -33,13 +40,13 @@ Should your source DSDT be similar enough (in regards to certain items in these
\*Notice that these patches require additional kexts to be installed. See them in `Kernel/Add/`
> ### SSDT-OCBAT0-TP_tx80_x1c6th - Enabling Battery Status in macOS
> ### SSDT-OCBAT0-TP_tx80_x1c6th - Enables Battery Status in macOS
**Need `OpenCore Patches/ TPbattery.plist`**
- Single battery system: only `BAT0` in ACPI, no `BAT1`.
> ### SSDT-PLUG-\_PR.PR00 - Enablaing Native Intel Power Managements
> ### SSDT-PLUG-\_PR.PR00 - Enables Native Intel Power Managements
Why?: `Processor` search in DSDT, rename `PR` to other variables as needed.
@ -65,11 +72,11 @@ Why?: `Processor` search in DSDT, rename `PR` to other variables as needed.
}
```
> ### SSDT-PNLF-SKL_KBL - Enabling Brightness Mangement in macOS
> ### SSDT-PNLF-SKL_KBL - Enables Brightness Management in macOS
iGPU is `PCI0.GFX0`
Why?: `Skylake/ KabyLake/ KabyLake-R` CPU.
Used in conjuction with `WhateverGreen.kext`
Used in conjunction with `WhateverGreen.kext`
> ### SSDT-HPET
@ -88,7 +95,7 @@ For multimedia functions:
- Remap 4: F7 (Dual Display) to F16 (for use with ThinkpadAssistant)
- Remap 5: F8 (Network) to F17 (for use with ThinkpadAssistant)
- Remap 6: F9 (Settings) to F18 (for use with ThinkpadAssistant)
- Remap 7: F10 (Bluetooth) to [Shift+Down]
- Remap 7: F10 (Bluetooth) to [Left Shift + F8] ((for use with ThinkpadAssistant))
- Remap 8: F11 (Keyboard) to [Shift+Up]
- Remap 9: F12 (Star) to F19 (for use with ThinkpadAssistant)
- Remap 10: PrtSc to F13
@ -120,18 +127,10 @@ Look up `_PTS` and `_WAK` in source DSDT and confirm the following, modify if di
- PTSWAK extension patch. Solve the problem that some machines need to press any key to light up the screen after waking up. When using, you should inquire whether the `PNP0C0D` device name and path already exist in the patch file, such as`_SB.PCI0.LPCB.LID0`. If not, add it yourself.
> ### SSDT-SBUS
Why?: `0x001F0004` under Device (SBUS).
> ### SSDT-DMAC
Why?: `PNP0200` is missing in DSDT.
> ### SSDT-MCHC
Why?: `MCHC` is missing in DSDT.
> ### SSDT-PMCR
Why?: `PMCR`,`APP9876` missing in DSDT.

View file

@ -15,6 +15,8 @@
- Disable Power Nap for both [`Battery`](https://github.com/tylernguyen/x1c6-hackintosh/blob/master/docs/assets/img/macOS%20Settings/Batter_powernap.png) and [`Power Adapter`](https://github.com/tylernguyen/x1c6-hackintosh/blob/master/docs/assets/img/macOS%20Settings/Poweradt_powernap.png).
- Disable [`Wake for Network Access`](https://github.com/tylernguyen/x1c6-hackintosh/blob/master/docs/assets/img/macOS%20Settings/Poweradt_powernap.png) in `Power Adapter`.
- Uncheck [`Allow Bluetooth devices to wake this computer`](https://github.com/tylernguyen/x1c6-hackintosh/blob/master/docs/assets/img/macOS%20Settings/Bluetooth_wake.png).
- Do not disable `hibernatefile`.
- `sudo pmset -a tcpkeepalive 0` to disable Network while sleeping.
> ## Multimedia Fn Key Patching:

View file

@ -3,6 +3,28 @@
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
> ### 2020-6-26
#### Added
- `VoodooRMI` as alternative trackpad option. **Enabled by default, feel free to revert back to `VoodooPS2Mouse` and `VoodooPS2Trackpad` if you prefer**. *Note, there's currently a bug with RMI where the touchpad would not load once in a while. The RMI kext uploaded in this repo has a temp fix by me (See [VoodooSMBUS/PR](https://github.com/VoodooSMBus/VoodooSMBus/pull/41)). However, the issue is still ongoing and the dev team is aware of it. I'm switching this repo to VoodooRMI because I believe it's the future and I want to possible bugs to be reported to be fixed for the kext's first stable release.
- Kernel patches to enable 4K external graphics, thank you so much [@benbender](https://github.com/benbender)
- `XQ74` patch in `SSDT-Keyboard` to support `FnLock` HUD per ThinkpadAssistant 1.8.0
- In [EFI-OpenCore/README.md](https://github.com/tylernguyen/x1c6-hackintosh/blob/master/EFI-OpenCore/README.md), I've added a short section explaining why certain variables are the way they are in my `config.plist`. I will continue to update this section with more details as time goes on.
#### Changed
- iGPU Framebuffer patching for HDMI issue in Catalina.
- In Catalina/WhateverGreen version, for some reasons my previous framebuffer patches for HDMI no longer worked. So I re-did the patch in mode details but eventually the property that fixed it was `disable-external-gpu` or `-wegnoegpu`. For some strange reasons, that variable activated on-board HDMI. See [similar reports here](https://www.tonymacx86.com/threads/guide-general-framebuffer-patching-guide-hdmi-black-screen-problem.269149/page-123). I'm going to create an issue on acidanthera/bugtracker soon to report to the dev team. In the mean time, keep this property if you rely on HDMI and do not have an eGPU. Delete this property if you have an eGPU (You're likely using the HDMI on the eGPU anyway).
- Fixed `VoodooPS2` kexts loading order.
- Various reference docs to dortania.
- `HibernateMode` to `Auto`
#### Removed
- Unnecessary Mutex OpenCore patches, all Mutex are already 0 in stock `DSDT`.
- `SSDT-MCHC` and `SSDT-SBUS` for `VoodooRMI` compatibility.
> ### 2020-6-1
#### Changed

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 118 KiB

After

Width:  |  Height:  |  Size: 114 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 135 KiB

After

Width:  |  Height:  |  Size: 131 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 125 KiB

After

Width:  |  Height:  |  Size: 121 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 248 KiB

After

Width:  |  Height:  |  Size: 245 KiB

View file

@ -133,254 +133,6 @@
<data>
</data>
</dict>
<dict>
<key>Comment</key>
<string>Mutex:MDGS=0</string>
<key>Count</key>
<integer>0</integer>
<key>Enabled</key>
<true/>
<key>Find</key>
<data>
AU1ER1MH
</data>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data>
</data>
<key>OemTableId</key>
<data>
</data>
<key>Replace</key>
<data>
AU1ER1MA
</data>
<key>ReplaceMask</key>
<data>
</data>
<key>Skip</key>
<integer>0</integer>
<key>TableLength</key>
<integer>0</integer>
</dict>
<dict>
<key>Comment</key>
<string>Mutex:MCPU=0</string>
<key>Count</key>
<integer>0</integer>
<key>Enabled</key>
<true/>
<key>Find</key>
<data>
AU1DUFUH
</data>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data>
</data>
<key>OemTableId</key>
<data>
</data>
<key>Replace</key>
<data>
AU1DUFUA
</data>
<key>ReplaceMask</key>
<data>
</data>
<key>Skip</key>
<integer>0</integer>
<key>TableLength</key>
<integer>0</integer>
</dict>
<dict>
<key>Comment</key>
<string>Mutex:BATM=0</string>
<key>Count</key>
<integer>0</integer>
<key>Enabled</key>
<true/>
<key>Find</key>
<data>
AUJBVE0H
</data>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data>
</data>
<key>OemTableId</key>
<data>
</data>
<key>Replace</key>
<data>
AUJBVE0A
</data>
<key>ReplaceMask</key>
<data>
</data>
<key>Skip</key>
<integer>0</integer>
<key>TableLength</key>
<integer>0</integer>
</dict>
<dict>
<key>Comment</key>
<string>Mutex:MSMI=0</string>
<key>Count</key>
<integer>0</integer>
<key>Enabled</key>
<true/>
<key>Find</key>
<data>
AU1TTUkH
</data>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data>
</data>
<key>OemTableId</key>
<data>
</data>
<key>Replace</key>
<data>
AU1TTUkA
</data>
<key>ReplaceMask</key>
<data>
</data>
<key>Skip</key>
<integer>0</integer>
<key>TableLength</key>
<integer>0</integer>
</dict>
<dict>
<key>Comment</key>
<string>Mutex:BFWM=0</string>
<key>Count</key>
<integer>0</integer>
<key>Enabled</key>
<true/>
<key>Find</key>
<data>
AUJGV00H
</data>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data>
</data>
<key>OemTableId</key>
<data>
</data>
<key>Replace</key>
<data>
AUJGV00A
</data>
<key>ReplaceMask</key>
<data>
</data>
<key>Skip</key>
<integer>0</integer>
<key>TableLength</key>
<integer>0</integer>
</dict>
<dict>
<key>Comment</key>
<string>Mutex:XDHK=0</string>
<key>Count</key>
<integer>0</integer>
<key>Enabled</key>
<true/>
<key>Find</key>
<data>
AVhESEsH
</data>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data>
</data>
<key>OemTableId</key>
<data>
</data>
<key>Replace</key>
<data>
AVhESEsA
</data>
<key>ReplaceMask</key>
<data>
</data>
<key>Skip</key>
<integer>0</integer>
<key>TableLength</key>
<integer>0</integer>
</dict>
<dict>
<key>Comment</key>
<string>Mutex:MWMI=0</string>
<key>Count</key>
<integer>0</integer>
<key>Enabled</key>
<true/>
<key>Find</key>
<data>
AU1XTUkH
</data>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data>
</data>
<key>OemTableId</key>
<data>
</data>
<key>Replace</key>
<data>
AU1XTUkA
</data>
<key>ReplaceMask</key>
<data>
</data>
<key>Skip</key>
<integer>0</integer>
<key>TableLength</key>
<integer>0</integer>
</dict>
<dict>
<key>Comment</key>
<string>Mutex:NPWM=0</string>
<key>Count</key>
<integer>0</integer>
<key>Enabled</key>
<true/>
<key>Find</key>
<data>
AU5QV00H
</data>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data>
</data>
<key>OemTableId</key>
<data>
</data>
<key>Replace</key>
<data>
AU5QV00A
</data>
<key>ReplaceMask</key>
<data>
</data>
<key>Skip</key>
<integer>0</integer>
<key>TableLength</key>
<integer>0</integer>
</dict>
</array>
</dict>
</dict>

View file

@ -357,6 +357,40 @@
<data>
</data>
</dict>
<dict>
<key>Comment</key>
<string>_Q74 to XQ74 (FnLock - Fn + Esc)</string>
<key>Count</key>
<integer>1</integer>
<key>Enabled</key>
<true/>
<key>Find</key>
<data>
X1E3NA==
</data>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data>
</data>
<key>OemTableId</key>
<data>
</data>
<key>Replace</key>
<data>
WFE3NA==
</data>
<key>ReplaceMask</key>
<data>
</data>
<key>Skip</key>
<integer>0</integer>
<key>TableLength</key>
<integer>0</integer>
<key>TableSignature</key>
<data>
</data>
</dict>
</array>
</dict>
</dict>

View file

@ -4,16 +4,12 @@
//
DefinitionBlock ("", "SSDT", 2, "tyler", "HPET", 0x00000000)
{
External (_SB.PCI0.LPCB, DeviceObj) // (from opcode)
External (_SB.PCI0.LPCB.HPET, DeviceObj) // (from opcode)
Name (\_SB.PCI0.LPCB.HPET._CRS, ResourceTemplate () // _CRS: Current Resource Settings
{
IRQNoFlags()
{0}
IRQNoFlags()
{8}
IRQNoFlags()
{11}
IRQNoFlags ()
{0,8,11}
Memory32Fixed (ReadWrite,
0xFED00000, // Address Base
0x00000400, // Address Length

View file

@ -1,23 +1,66 @@
/*
LED1 is F4 - Mic Mute
LED2 is Keyboard Backlight
LED3 is FnLock LED
*/
DefinitionBlock("", "SSDT", 2, "tyler", "x1input", 0)
{
External(_SB.PCI0.LPCB.KBD, DeviceObj)
External(_SB.PCI0.LPCB.EC, DeviceObj)
External(_SB.PCI0.LPCB.EC.XQ6A, MethodObj)
External(_SB.PCI0.LPCB.EC.XQ15, MethodObj)
External(_SB.PCI0.LPCB.EC.XQ14, MethodObj)
External(_SB.PCI0.LPCB.EC.XQ16, MethodObj)
External(_SB.PCI0.LPCB.EC.XQ64, MethodObj)
External(_SB.PCI0.LPCB.EC.XQ66, MethodObj)
External(_SB.PCI0.LPCB.EC.XQ60, MethodObj)
External(_SB.PCI0.LPCB.EC.XQ61, MethodObj)
External(_SB.PCI0.LPCB.EC.XQ62, MethodObj)
External(_SB.PCI0.LPCB.EC.XQ1F, MethodObj)
External(_SB.PCI0.LPCB.EC.HKEY.MMTS, MethodObj)
External(_SB.PCI0.LPCB.EC.HKEY.MMTG, MethodObj)
External(_SB.PCI0.LPCB.EC.HKEY.MLCS, MethodObj)
External(_SB.PCI0.LPCB.EC.XQ74, MethodObj) // FnLock
External(_SB.PCI0.LPCB.EC.XQ6A, MethodObj) // F4 - Mic Mute
External(_SB.PCI0.LPCB.EC.XQ15, MethodObj) // F5
External(_SB.PCI0.LPCB.EC.XQ14, MethodObj) // F6
External(_SB.PCI0.LPCB.EC.XQ16, MethodObj) // F7
External(_SB.PCI0.LPCB.EC.XQ64, MethodObj) // F8
External(_SB.PCI0.LPCB.EC.XQ66, MethodObj) // F9
External(_SB.PCI0.LPCB.EC.XQ60, MethodObj) // F10
External(_SB.PCI0.LPCB.EC.XQ61, MethodObj) // F11
External(_SB.PCI0.LPCB.EC.XQ62, MethodObj) // F12
External(_SB.PCI0.LPCB.EC.XQ1F, MethodObj) // Keyboard Backlight (Fn+Space)
External(_SB.PCI0.LPCB.EC.HKEY.MHKQ, MethodObj) // FnLock LED
External(_SB.PCI0.LPCB.EC.HKEY.MMTS, MethodObj) // F4 - Mic Mute LED
External(_SB.PCI0.LPCB.EC.HKEY.MLCS, MethodObj) // Keyboard Backlight LED
Scope (_SB.PCI0.LPCB.EC)
{
Name (LED3, Zero)
Method (_Q74, 0, NotSerialized) // FnLock (Fn + Esc)
{
If (_OSI ("Darwin"))
{
// Toggle FnLock LED
If ((LED3 == Zero))
{
// Right Shift + F18
Notify (\_SB.PCI0.LPCB.KBD, 0x012A)
Notify (\_SB.PCI0.LPCB.KBD, 0x0369)
Notify (\_SB.PCI0.LPCB.KBD, 0x01aa)
// 0x02 = Enable LED
\_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x02)
LED3 = One
}
Else
{
// Left Shift + F18
Notify (\_SB.PCI0.LPCB.KBD, 0x0136)
Notify (\_SB.PCI0.LPCB.KBD, 0x0369)
Notify (\_SB.PCI0.LPCB.KBD, 0x01b6)
// 0x00 = Disable LED
\_SB.PCI0.LPCB.EC.HKEY.MHKQ (Zero)
LED3 = Zero
}
}
Else
{
// Call original _Q74 method.
\_SB.PCI0.LPCB.EC.XQ74()
}
}
Name (LED1, Zero)
// _Q6A - Microphone Mute
Method (_Q6A, 0, NotSerialized) // F4 - Microphone Mute = F20

View file

@ -1,25 +0,0 @@
// This SSDT adds the missing Memory (DRAM) Controller to the system.
DefinitionBlock ("", "SSDT", 2, "tyler", "MCHC", 0x00000000)
{
External (_SB_.PCI0, DeviceObj)
Scope (_SB.PCI0)
{
Device (MCHC)
{
Name (_ADR, Zero) // _ADR: Address
Method (_STA, 0, NotSerialized) // _STA: Status
{
If (_OSI ("Darwin"))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
}
}
}

View file

@ -1,47 +0,0 @@
//
DefinitionBlock ("", "SSDT", 2, "tyler", "SBUS", 0)
{
External (_SB_.PCI0.SBUS, DeviceObj)
Scope (_SB.PCI0.SBUS)
{
Device (BUS0)
{
Name (_CID, "smbus")
Name (_ADR, Zero)
Device (DVL0)
{
Name (_ADR, 0x57)
Name (_CID, "diagsvault")
Method (_DSM, 4, NotSerialized)
{
If (!Arg2)
{
Return (Buffer (One)
{
0x03
})
}
Return (Package (0x02)
{
"address",
0x57
})
}
}
Method (_STA, 0, NotSerialized)
{
If (_OSI ("Darwin"))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
}
}
}