PLEASE NOTE THIS GUIDE MAY OR MAY NOT BE DEPRECIATED.
This repository will no longer be maintained.
Last updated: April 25 2016
Note: This is NOT a spoonfeeding guide, other resources may be required to pull you up to speed. This page is meant to reduce the amount of googling and testing what works and what doesn't.
- Model: x230 2320-32U
- CPU: Intel i5-3210M 2.50GHz
- RAM: 12GB DDR3
- Storage: 128GB SSD
- OS: OS X El Capitan 10.11.4
- Bootloader: Clover v2.3K R3320 UEFI
- EFI BIOS: 2.65
- ECV BIOS: 1.14
- Power Management (C/P-states, fan RPM, speedstep, etc)
- Ethernet
- USB ports
- Battery status
- Keyboard, trackpad, trackpoint
- Sleep from menu + lid close sleep
- HD4000 (Brightness control with fn + k, fn + p and QE/CI active, external display with Mini-DP)
- Sound over Mini-DP -> HDMI
- Wireless (Using USB mini WLAN adapter with native drivers from manufacturer)
- Sound/Audio, automatic headphone detection, mute, volume controls fully working
- Webcam
- Bluetooth
- Built in mini-PCIE WLAN card (could swap card with Atheros 9280 and rebrand as Intel 6300)
- Card reader (never tried)
- Fingerprint reader
- VGA (does not exist on real apple computers)
- Sound works on resume after you sleep from menu. Afterwards, lid close and resume, sound will work
- Boot screen logo glitch, reduce with custom logo = none, config.plist in Clover edit
- -xcpm boot argument will cause kernel panic (KP)
Feature | Problem | Fix (tldr DSDT patches are your friend) |
---|---|---|
Sleep | Instant wake, device doesn't stay asleep | Apply DSDT USB3 instant wake 0x0, RTC patches |
Audio | No devices in sound preferences | Inject patched AppleHDA, codec is ALC297VC_v3 (layout-id in DSDT is hex, LayoutID in AppleHDA is dec) |
Battery and PM | No battery status, no native PM | Apply DSDT patch with Thinkpad x230i + Fix Mutex with non-zero synclevel |
GPU | Graphics not working natively | Apply DSDT patches for iGPU, brightness HD4000 + Low resolution |
USB | Ports not working/keeps device awake | Apply DSDT patches Ivy Bridge = Intel 7 series USB |
Sleep/power LED | LED remains in blinking state after wake | # add these lines into method _WAK after NVSS: _SB.PCI0.LPC.EC.LED (Zero, 0x80) _SB.PCI0.LPC.EC.LED (0x0A, 0x80) _SB.PCI0.LPC.EC.LED (0x07, Zero) |
Brightness Control | Brightness control keys don't respond | # _Q15 (Fn+F8) brightness down key into method label _Q15 replace_content begin Notify(_SB.PCI0.LPC.KBD, 0x0205)\n Notify(_SB.PCI0.LPC.KBD, 0x0285)\n end; # _Q14 (Fn+F9) brightness up key into method label _Q14 replace_content begin Notify(_SB.PCI0.LPC.KBD, 0x0206)\n Notify(_SB.PCI0.LPC.KBD, 0x0286)\n end; |
- DSDT patch HDEF + IRQ (layout-id is in hex) - preferred
- Clover config.plist
- HDAEnabler.kext
- Modify AppleHDA.kext by itself, rewrite AppleHDA.kext in /S/L/E, injecting with any method
- Live patch AppleHDA.kext + injecting DummyHDA.kext with any method
- CodecCommander loaded in /S/L/E w/ Kext Utility or with KextBeast + repair permissions/cache script
Commands to check AppleHDA, if anything returns empty = game over, restore default AppleHDA in /S/L/E and restart process
- Check AppleHDA kext load status: kextstat | grep -y applehda
- sudo touch /System/Library/Extensions && sudo kextcache -u /
- Use DCPIManager to check audio devices and if codec ID, revision, codec name are empty = bad
- Check custom loaded kext status: kextstat | grep -v com.apple
Item | Setting |
---|---|
Config/Network/Wake On Lan | Disabled |
USB UEFI BIOS Support | Enabled |
Always On USB | Disabled |
USB 3.0 Mode | Enabled |
Power Intel Rapid Start Technology | Disabled |
Serial SATA Controller Mode Option | AHCI |
Security Predesktop Authentication | Disabled |
Security Chip | Disabled |
Memory Protection Execution Prevention | Enabled |
Virtualization | Disabled |
Fingerprint Reader | Disabled |
Anti Theft | Disabled |
Computrace | Disabled |
Secure Boot | Disabled |
Startup Network Boot | PCI Lan |
UEFI/Legacy Boot | UEFI Only |
CSM Support | Disabled |
Boot Mode | Quick |
- Follow tonymacx86 Unibeast steps to make your USB (I don't personally use MultiBeast). http://www.tonymacx86.com/el-capitan-desktop-guides/172672-unibeast-install-os-x-el-capitan-any-supported-intel-based-pc.html
- Mount EFI partition of USB with EFI Mounter v3 (from tonymacx86).
- Copy Kexts to Kexts folder on the EFI partition.
- Change BIOS settings (settings key is F1).
- Boot USB (boot menu key is F12).
- Install Clover v2.3K R3320 UEFI .pkg - different version is OK, but must be UEFI.
- Config.plist can be shared if you wish, personal preferences, except injections.
- Patch your own DSDT's using guide on tonymacx86 from RehabMan, every system needs custom DSDT, no exceptions. http://www.tonymacx86.com/el-capitan-laptop-support/152573-guide-patching-laptop-dsdt-ssdts.html (trust me, it's worth the read)
- Patch your own SSDT's, you could use the same if CPU models are identical. http://www.tonymacx86.com/el-capitan-laptop-support/175801-guide-native-power-management-laptops.html
- Put SSDT.aml and DSDT.aml inside ACPI folder, patched, in EFI partition of OS drive.
- TRIM Enabler (if using SSD, every system in 2016 should have one imo)
- Disable boot graphics glitches (http://www.tonymacx86.com/el-capitan-laptop-support/175799-fix-resolve-boot-screen-garble.html) and set custom logo to none in config.plist
Patch should be entered into config.plist/KernelAndKextPatches/KextsToPatch.
Comment: Boot graphics glitch
Name: IOGraphicsFamily
Find: <0100007517>
Replace: <010000eb17>
- Battery: Thinkpad x230i
- iGPU: Brightness HD4000, Low resolution
- RTC fix
- Fix Mutex with non-zero synclevel
- Ivy Bridge = 7 series USB
- USB3 instant wake 0x0
- If using DSDT inject use HDEF + IRQ provided with patcher
http://www.tonymacx86.com/el-capitan-laptop-support/
Google is your best friend.