1
0
Fork 0
mirror of https://github.com/tylernguyen/x1c6-hackintosh.git synced 2025-02-05 01:23:14 -06:00
READMEs, OpenCore configurations, patches, and notes for the Thinkpad X1 Carbon 6th Gen 2018 Hackintosh
Find a file
2020-11-07 11:46:59 -06:00
.github Big Update: Check Changelog.md 2020-11-03 11:58:35 -06:00
ACPI Added BIOS 1.45 dump 2020-04-07 01:01:14 -05:00
docs [ImgBot] Optimize images 2020-11-03 18:13:34 +00:00
EFI-install_USB Big Update: Check Changelog.md 2020-11-03 11:58:35 -06:00
EFI-OpenCore Issue #90 Fix SSDT-PLUG and rename to SSDT-PM 2020-11-05 20:49:43 -06:00
patches Fix S0-indicator 2020-11-07 13:17:44 +01:00
.gitignore Big Update: Check Changelog.md 2020-11-03 11:58:35 -06:00
_config.yml More refinements, see changelog 2020-03-31 00:38:22 -05:00
LICENSE Initial commit 2018-06-26 14:58:35 -05:00
README.md Updated ACPI Patches 2020-11-03 15:11:04 -06:00

macOS on Thinkpad X1 Carbon 6th Generation, Model 20KH*

macOS version BIOS MODEL OpenCore LICENSE

Critter

Check out my blog tylerspaper.com

READ THE ENTIRE README.MD BEFORE YOU START.

I am not responsible for any damages you may cause.

Should you find an error, or improve anything, be it in the config itself or in the my documentation, please consider opening an issue or a pull request to contribute.

I AM A ONE MAN TEAM, AND A FULL TIME STUDENT. SO, I MIGHT NOT BE ABLE TO RESPOND OR HELP YOU IN A TIMELY MANNER. BUT, I PROMISE I WILL GET TO YOU EVENTUALLY. PLEASE UNDERSTAND.

Lastly, if my work here helped you. Please consider donating, it would mean a lot to me.

Update

Recent | Changelog Archive

2020-11-3

Changed

  • OC to 0.6.3 and upgrade various Acidanthera kexts
  • Restructured docs: depricated legacy things and combined duplicates.
  • YogaSMC is now the preferred method to handle Fn keys instead of ThinkpadAssisstant.
    • Note that YogaSMC is still in its infancy, so you still prefer ThinkpadAssistant, use SSDT-Keyboard-Legacy.dsl and /patches/OpenCore Patches/ Keyboard-Legacy.plist
    • Thank you @zhen-zen for the great kext and app.
  • Updated config.plsit:
    • Removed depricated ACPI renames in accordance with new ACPI patches.
    • Added Arch value to each kext entry in accordance with new OpenCore doc.
    • Added Thunderbolt 3 Device Properties.
    • Added ExtendBTFeatureFlags value to replace BT4LEContinuityFixup
  • Reorganized subdirectories within /patches/ to make things easier to find and understand.
  • Renamed 3_README-POSTinstallation.md to SUMMARY.md since it's not really a step but more of an overview of what patches what.
  • More readble and better writing of SSDT-Keyboard
  • New SSDT-PNLF to accomodate AppleBacklightSmoother.kext
  • New battery patch SSDT-Battery that fixes accesses to 16byte-EC-field HWAC (Issue #82).
  • SSDT-Sleep is an all-in-one sleep patch over SSDT-PTSWAK, SSDT-GPRW, SSDT-EXT*
    • It is no longer necessary to set sleep mode to Linux in BIOS as it is now indepently set by SSDT-Sleep
  • If (_OSI ("Darwin")) and SSDT-DTPG are now replaced in favor of SSDT-Darwin and OSDW, just like in genuine Macs.
  • Removed USBPorts.kext in favor of patching/mapping via ACPI with SSDT-XHC1, SSDT-XHC2, and SSDT-USBX
  • README.md:
    • Turned different sections into menus for better readability.
    • Merged 3_README-POSTinstallation.md into the SUMMARY section.
  • Set HibernateMode to NVRAM instead of Auto

Added

  • update.sh script to automatically build and replace all ACPI patches
  • SSDT-HWAC to patch access to 16byte-EC-field HWAC
  • SSDT-EC to patch embedded controller for use with YogaSMC
  • SSDT-Debug, SSDT-HOOKS, and Debug.plist for debugging if needed
  • SSDT-INIT to configure system values: HPET, DYTC, and DPTF
  • YogaSMC.kext to interface with the device's EC. Make sure to also install the app and pref pane.
  • AppleBacklightSmoother.kext is just as its name implies.
  • BrightnessKeys.kext to handle Fn keys with ACPI renames.
  • Documentation of modding the Thunderbolt 3 controller.

Removed

  • SSDT-HPET, similar to genuine Macs, HPET is now disabled within SSDT-INIT

Remark

  • A large of these changes are due to the hardwork of @benbender, who debugged and authored many of the new ACPI patches. Thank you for your hard work!
SUMMARY

Non-Fuctional:

Feature Status Dependency Remarks
Fingerprint Reader DISABLED in BIOS to save power if not used in other OSes. Linux support was only recently added
Wireless WAN DISABLED in BIOS to save power if not used in other OSes. Unable to investigate as I have no need and my model did not come with WWAN.

Video and Audio

Feature Status Dependency Remarks
Full Graphics Accleration (QE/CI) WhateverGreen.kext -
Audio Recording AppleALC.kext with Layout ID = 21 -
Audio Playback AppleALC.kext with Layout ID = 21 -
Automatic Headphone Output Switching AppleALC.kext with Layout ID = 21 -

Power, Charge, Sleep and Hibernation

Feature Status Dependency Remarks
Battery Percentage Indication SSDT-Battery.aml and /patches/OpenCore Patches/Battery.plist
CPU Power Management (SpeedShift) XCPM and CPUFriend.kext, generate your own CPUFriendDataProvider with CPUFriendFriend or one-key-cpufriend.
iGPU Power Management XCPM, enabled by SSDT-PLUG.aml
NVMe Drive Battery Management NVMeFix.kext In my experience, NVMe drives will drain more power than SATA drives.
S3 Sleep/ Hibernation Mode 3 SSDT-Sleep.aml
Hibernation Mode 25 RTCMemoryFixup.kext and HibernationFixup.kext Supported, macOS uses mode 3 by default. Change to mode 25 via pmset.
Custom Charge Threshold SSDT-EC.aml, YogaSMC.kext, and YogaSMCPane Adjust with YogaSMCPane in System Preferences
Battery Life Native, comparable to Windows/Linux. Biggest impact is TB3, see docs/1_README-HARDWAREandBIOS.md Will need a modded BIOS to disable CFG Lock

Input/ Output

Feature Status Dependency Remarks
WiFi Native with BCM94360CS2. See /patches/ Network Patches/ otherwise.
Bluetooth Native with BCM94360CS2. See /patches/ Network Patches/ otherwise.
Ethernet IntelMausi.kext Needs Lenovo Ethernet adapter: Item page
HDMI hotplug Custom EDID Override /patches/Internal Displays/ Refer to Issue #60 if one does not exist already for your display.
4K UHD output via HDMI/ DisplayPort (Modded BIOS) See DMVT Pre-Allocated to 64M See docs/1_README-HARDWAREandBIOS.md for information about modding the BIOS.
4K UHD output via HDMI/ DisplayPort (Vanilla BIOS) See /patches/OpenCore Patches/4K-Output-wo-BIOSmod.plist -
USB 2.0, USB 3.0, and Micro SD Card Reader SSDT-XHC1.aml -
USB 3.1 ⚠️ SSDT-XHC2.aml -
USB Power Properties in macOS SSDT-USBX.aml -
Thunderbolt 3 (Cold Boot) SSDT-TB3.aml, TB3 device must be plugged in before boot.
Thunderbolt 3 Hotplug (Modded Controller and BIOS) ⚠️ SSDT-TB3.aml 3_README-other.md, Issue #24
Thunderbolt 3 Hotplug (Modded Controller and Vanilla BIOS) ⚠️ SSDT-TB3.aml 3_README-other.md,Issue #24
Thunderbolt 3 Hotplug (Vanilla Controller and Modded BIOS) ⚠️ SSDT-TB3.aml, ThunderboltReset.kext, GPIO3 Force Pwr and GPIO3 Force Pwr for PR05 checked in BIOS 3_README-other.md,Issue #24
Thunderbolt 3 Hotplug (Vanilla Controller and BIOS) ⚠️ SSDT-TB3.aml, ThunderboltReset.kext, and TbtForcePower.efi 3_README-other.md,Issue #24

Display, TrackPad, TrackPoint, and Keyboard

Feature Status Dependency Remarks
Brightness Adjustments WhateverGreen.kext, SSDT-PNLF.aml, AppleBacklightSmoother.kext, and BrightnessKeys.kext AppleBacklightSmoother.kext is optional for smoother birghtness adjustments
HiDPI (Optional) xzhih/one-key-hidpi Scaling issues post-sleep fixed with AAPL, ig-platform BAAnWQ==
TrackPoint VoodooPS2Controller.kext -
TrackPad VoodooPS2Controller.kext or VoodooSMBus.kext and VoodooRMI.kext I prefer VoodooRMI.kext so that is the repository default.
Built-in Keyboard VoodooPS2Controller.kext Optimizations recommended, see docs/3_README-other.md
Multimedia Keys BrightnessKeys.kext and YogaSMC or ThinkpadAssistant with legacy patches YogaSMC is the repo default, SSDT-Keyboard-Legacy.aml, patches/OpenCore Patches/ Keyboard-Legacy.plist if you want to use ThinkpadAssistant instead

macOS Continuity

Feature Status Dependency Remarks
iCloud, iMessage, FaceTime Whitelisted Apple ID, Valid SMBIOS See dortania /OpenCore-Install-Guide
Continuty Native with BCM94360CS2. ExtendBTFeatureFlags to True otherwise. See /patches/Network Patches/ for specific network card.
AirDrop Native with BCM94360CS2. ExtendBTFeatureFlags to True otherwise. See /patches/Network Patches/ for specific network card.
Sidecar Native with BCM94360CS2. ExtendBTFeatureFlags to True otherwise. iPad with >= iPadOS 13 Tested with iPad Mini with iPadOS 13.1.2
FileVault as configured in config.plsit per Dortania's Post-Install
Time Machine Native TimeMachine only backups your Macintosh partition. Manually backup your EFI partition using another method.
REFERENCES
  • Read these before you start:
  • No seriously, please read those.

REQUIREMENTS
  • A macOS machine(optional): to create the macOS installer.
  • Flash drive, 12GB or more, for the above purpose.
  • Xcode works fine for editing plist files on macOS, but I prefer PlistEdit Pro.
  • ProperTree if you need to edit plist files on Windows.
  • MaciASL, for patching ACPI tables and editing ACPI patches.
  • MountEFI to quickly mount EFI partitions.
  • IORegistryExplorer, for diagnosis.
  • Hackintool, for diagnostic ONLY, Hackintool should not be used for patching, it is outdated.
  • SPI Programmer CH341a and SOIC8 connector are needed if you are going to mod your BIOS/TB3 controller for optimizations and a better and more native macOS experience.
  • Patience and time, especially if this is your first time Hackintosh-ing.
HARDWARE
- These are relevant components on my machine which may differ from yours, keep these in mind as you will need to adjust accordingly, depending on your machine's configuration.
Category Component Remarks
CPU i7-8650U Generate your own CPUFriendDataProvider.kext. See SUMMARY
SSD Seagate Firecuda 520 500GB Dortania's Anti Hackintosh Buyers Guide
Display 14.0" (355mm) HDR WQHD (2560x1440) /patches/ Internal Displays/ and Issue #60
WiFi & BT BCM94360CS2 /patches/ Network Patches/ if non-native.
WWAN None Unless needed in other OSes, disable at BIOS to save power
GETTING STARTED

Before you do anything, please familiarize yourself with basic Hackintosh terminologies and the basic Hackintosh process by throughly reading Dortania guides as linked in REFERENCES

OTHER REPOSITORIES

CONTACT

https://tylerspaper.com/contact
Signal: +1 (202)-644-9951 *This is a Signal ONLY number. You will not get a reply of you text me at this number.

SUPPORT

https://tylerspaper.com/support/

CREDITS

The greatest thank you and appreciation to the Acidanthera team.

And to everyone else who supports and uses my project.

Please let me know if I missed you.