Jump to content
Uoc Nguyen

Thinkpad T430 - Mavericks 10.9.x - Yosemite 10.10

104 posts in this topic

Recommended Posts

Download

http://goo.gl/qlWGgU

 


UPDATE

 


10.10.1 - Nov 18, 2014:

- Updated to 10.10.1

- Use modified Apple's IOBluetoothFamily.kext version for Bluetooth.

- Switch back to Apple's AppleHDA.kext.

- Patch on the fly using CLOVER for AppleHDA and AppleIntelFramebufferCapri

- Use NVIDIA Web Driver, URL to download from this thread: topic/301416-nvidia-web-driver-updates-for-yosemite/

- BIOS settings: set boot mode to Both (UEFI & Legacy), UEFI First to avoid problem with Optimus and NVIDIA Discrete mode

 


10.10 beta 5 - Oct 13, 2014:

- Updated to 10.10 beta 5

- Added package for 10.10: Bluetooth work with old IOBluetoothFamily.kext from 10.9.x. Updated DSDT for NVIDIA, Optimus and Intel only.

- Move to mega.co.nz for better hosting and versioning.

 


10.10 beta 3 - Sep 26, 2014:

Anyone tried 10.10 Yosemite? I tried last night and it's work with some issues, but useable. I have updated to Beta 3 also.

Here is some screenshots:

 

post-206862-0-14962300-1412026300_thumb.png

post-206862-0-19564200-1412026313_thumb.png

 

Short summary:

 

- Bluetooth

- NVIDIA not work (DP1, not tested on Beta3)

- Intel HD4000: native res but no QE/CI

- Sound: Need to patch AppleHDA.kext for layout 28

- Battery: need new patch in DSDT (use tluck's T420 DSDT work)

- Sleep / Shutdown work as Mavericks

 

 

Quick way:

 

- Update your CLOVER first to latest: sourceforge.net/projects/cloverefiboot/files/latest/download

- Create bootable usb or partition using this guide: http://www.insanelymac.com/forum/topic/298521-easy-yosemite-1010-usb-installer-updated-9-2-2014/

Note: you will need to copy BaseSystem.dmg (it is big as 470MB) so you will need at least 8GB USB. I have 6.5GB partition and it is fit for setup size but I don't have room for modding (kext, backup...)

- Download CLOVER package from tluck's topic then extract, backup your kexts and copy all EFI/CLOVER/kexts/10.10/*.kext to /S/L/E/

- Add kext-dev-mode=1 to CLOVER kernel argument.

- After install / upgrade you will need to re-copy all kexts.

 

Update 1: Never mind, NVIDIA work well after repair permission. System FAN and Thermal Sensor for NVIDIA not show (need to patch with new DSDT)

Update 2:

- System FAN, GPU and other thermal sensor work after update DSDT, updated HW Monitor and latest FakeSMC.

- NVIDIA Work but not detect / turn on built-in monitor, need to detect displays in displays settings to turn it on after boot.

- Bluetooth still not work

- Sound work with VoodooHDA

- Battery work

 

Look like CPU throttled too much, it is stick at 3Ghz most time and temperature is about 90oC @@, might need to generate SSDT or can be Yosemite issue. The temperature is about ~50-60oC with Intel HD4000.

 


 

10.9.3:

 

  • ​HWMonitor version 6.8.1307 support FAN sensor (Check for update inside app and install FakeSMC and all it's plugins)
  • NVIDIA: new version not work, replace with old working kexts (NV*.kext)
  • Intel HD 4000 Capri: patch with Platform-ID `0300 6601` - Hex: `01 00 00 00 02 00 00 00 30 02 00 00`
  • AppleHDA: patch-hda-3.1 NOT work - Work with VoodooHDA 2.8.4 (download from zip file here or pkg installer here
  • AppleIntelCPUPowerManagement.kext patch with AICPMPatch

  • Bluetooth: using modified kext from #26 (thanks @eilatuno)

  • Others old kexts: AppleACPIPlatform.kext, IOUSBFamily.kext
  • Shutdown / Restart / Sleep work well using latest CLOVER r2671


 

10.9.1:

  • Sound stop working as AppleHDA.kext updated for VoiceOver bug fix, re-patch with patch AppleHDA script 3.1 from this thread
  • Everything work well as 10.9.0 as last. Still have problem with Shutdown / Restart / Sleep


 

 

STATUS

 


* Working parts:

  • Intel HD 4000 (Capri): Full resolution: 1600x900, QE/CI
  • NVIDIA GF108M (NVS 5400M):  Full resolution: 1600x900, QE/CI
  • VGA, Display Port
  • Wired network / Ethernet
  • Think Light, Keyboard backlit (BIOS controlled)
  • Webcam
  • Mic, Speaker, Audio Jack
  • Bluetooth
  • Trackpoint, Touchpad
  • USB 3.0
  • Battery
  • UEFI with CLOVER r2366
  • Keyboard. Multimedia keys: Sleep, Prev / Play / Pause / Next (Brightness control with Fn-F8/F9 not work)
  • Shutdown / Restart / Sleep

* NOT working parts:

  • Intel Centrino Advanced-N 6205 Wireless adapter
  • Card reader


 

HOW TO

 

1. Create Mac OS X Maverick 10.9 USB installer: Google it!

 

2. Install CLOVER EFI bootloader or Chameleon

Use my config.plist if you install CLOVER

NOTE: need to change the SMBIOS hardware section and CustomUUID to your own hardware.

 

3. Backup and copy kexts from attached file

 

4. Option: install LCD display profile

 

5. Option: install HWMonitor.app 

 

6. DSDT: Use diff tool to apply diff changes

a) I'm using 3 different DSDT file for 3 graphic config mode:

  • DSDT.d.dsl / DSDT.d.aml: for Discrete graphic only BIOS config
    • VGA, Mini-DP work well but hottest
    • Temperatures on my machine:
      • CPU: avg: 65oC, range: 60-85
      • GPU: avg: 60oC, range: 56-74
  • DSDT.o.dsl / DSDT.o.aml: for Optimus graphic BIOS config - NOTE: you will need to backup & remove  /S/L/E/NVDA* because of OS X not support Optimus mode and it caused conflict loading video driver.
  • DSDT.i.dsl / DSDT.i.aml: for Integrated graphic only BIOS config

B) Optimus & Integrated gave me much more cooler temperatures but NO VGA, Min-DP - I usually use Integrated mode for travelling and Discrete mode for work because I need extend to my external Dell monitor.

 

c) Temperatures when using Integrated only mode:

  • CPU: avg: 45oC, range: 40-70-80

d) I added FAN control to DSDT based on T420 / W520 guides, Thinkvantage button will be used to toggle turbo fan mode.

 

7. SSDT: I used auto generated P-States and C-States CLOVER's option

 


 

Hardware Specifications

 


 

- Model: Thinkpad T430 2344BMU
- lshw -numeric on Ubuntu 13.10

 

Hardware specs

 

 

HOSTNAME
    description: Notebook
    product: 2344BMU (LENOVO_MT_2344)
    vendor: LENOVO
    version: ThinkPad T430
    serial: [REMOVED]
    width: 64 bits
    capabilities: smbios-2.7 dmi-2.7 vsyscall32
    configuration: administrator_password=disabled chassis=notebook family=ThinkPad T430 power-on_password=disabled sku=LENOVO_MT_2344 uuid=[REMOVED]
  *-core
       description: Motherboard
       product: 2344BMU
       vendor: LENOVO
       physical id: 0
       version: Win8 Pro DPK TPG
       serial: [REMOVED]
       slot: Not Available
     *-cpu
          description: CPU
          product: Intel® Core i5-3320M CPU @ 2.60GHz
          vendor: Intel Corp.
          physical id: 1
          bus info: cpu@0
          version: Intel® Core i5-3320M CPU @ 2.60GHz
          serial: None
          slot: CPU Socket - U3E1
          size: 1200MHz
          capacity: 1200MHz
          width: 64 bits
          clock: 100MHz
          capabilities: x86-64 fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms cpufreq
          configuration: cores=2 enabledcores=2 threads=4
        *-cache:0
             description: L1 cache
             physical id: 3
             slot: L1-Cache
             size: 32KiB
             capacity: 32KiB
             capabilities: internal write-through instruction
        *-cache:1
             description: L2 cache
             physical id: 4
             slot: L2-Cache
             size: 256KiB
             capacity: 256KiB
             capabilities: internal write-through unified
        *-cache:2
             description: L3 cache
             physical id: 5
             slot: L3-Cache
             size: 3MiB
             capacity: 3MiB
             capabilities: internal write-back unified
     *-cache
          description: L1 cache
          physical id: 2
          slot: L1-Cache
          size: 32KiB
          capacity: 32KiB
          capabilities: internal write-through data
     *-memory
          description: System Memory
          physical id: 7
          slot: System board or motherboard
          size: 16GiB
        *-bank:0
             description: SODIMM DDR3 Synchronous 1333 MHz (0.8 ns)
             product: CMSO8GX3M1A1333C9
             vendor: AMI
             physical id: 0
             serial: 00000000
             slot: ChannelA-DIMM0
             size: 8GiB
             width: 64 bits
             clock: 1333MHz (0.8ns)
        *-bank:1
             description: SODIMM DDR3 Synchronous 1333 MHz (0.8 ns)
             product: CMSO8GX3M1A1333C9
             vendor: AMI
             physical id: 1
             serial: 00000000
             slot: ChannelB-DIMM0
             size: 8GiB
             width: 64 bits
             clock: 1333MHz (0.8ns)
     *-firmware
          description: BIOS
          vendor: LENOVO
          physical id: c
          version: G1ET94WW (2.54 )
          date: 04/22/2013
          size: 128KiB
          capacity: 11MiB
          capabilities: pci pnp upgrade shadowing cdboot bootselect edd int13floppy720 int5printscreen int9keyboard int14serial int17printer int10video acpi usb biosbootspecification uefi
     *-pci
          description: Host bridge
          product: 3rd Gen Core processor DRAM Controller [8086:154]
          vendor: Intel Corporation [8086]
          physical id: 100
          bus info: pci@0000:00:00.0
          version: 09
          width: 32 bits
          clock: 33MHz
        *-pci:0
             description: PCI bridge
             product: Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port [8086:151]
             vendor: Intel Corporation [8086]
             physical id: 1
             bus info: pci@0000:00:01.0
             version: 09
             width: 32 bits
             clock: 33MHz
             capabilities: pci pm msi pciexpress normal_decode bus_master cap_list
             configuration: driver=pcieport
             resources: irq:42 ioport:5000(size=4096) memory:f0000000-f10fffff ioport:c0000000(size=301989888)
           *-display
                description: VGA compatible controller
                product: GF108M [NVS 5400M] [10DE:DEF]
                vendor: NVIDIA Corporation [10DE]
                physical id: 0
                bus info: pci@0000:01:00.0
                version: a1
                width: 64 bits
                clock: 33MHz
                capabilities: pm msi pciexpress vga_controller bus_master cap_list rom
                configuration: driver=nvidia latency=0
                resources: irq:16 memory:f0000000-f0ffffff memory:c0000000-cfffffff memory:d0000000-d1ffffff ioport:5000(size=128) memory:f1000000-f107ffff
        *-display
             description: VGA compatible controller
             product: 3rd Gen Core processor Graphics Controller [8086:166]
             vendor: Intel Corporation [8086]
             physical id: 2
             bus info: pci@0000:00:02.0
             version: 09
             width: 64 bits
             clock: 33MHz
             capabilities: msi pm vga_controller bus_master cap_list rom
             configuration: driver=i915 latency=0
             resources: irq:46 memory:f1400000-f17fffff memory:e0000000-efffffff ioport:6000(size=64)
        *-usb:0
             description: USB controller
             product: 7 Series/C210 Series Chipset Family USB xHCI Host Controller [8086:1E31]
             vendor: Intel Corporation [8086]
             physical id: 14
             bus info: pci@0000:00:14.0
             version: 04
             width: 64 bits
             clock: 33MHz
             capabilities: pm msi xhci bus_master cap_list
             configuration: driver=xhci_hcd latency=0
             resources: irq:43 memory:f3920000-f392ffff
        *-communication:0
             description: Communication controller
             product: 7 Series/C210 Series Chipset Family MEI Controller #1 [8086:1E3A]
             vendor: Intel Corporation [8086]
             physical id: 16
             bus info: pci@0000:00:16.0
             version: 04
             width: 64 bits
             clock: 33MHz
             capabilities: pm msi bus_master cap_list
             configuration: driver=mei_me latency=0
             resources: irq:48 memory:f3935000-f393500f
        *-communication:1
             description: Serial controller
             product: 7 Series/C210 Series Chipset Family KT Controller [8086:1E3D]
             vendor: Intel Corporation [8086]
             physical id: 16.3
             bus info: pci@0000:00:16.3
             version: 04
             width: 32 bits
             clock: 66MHz
             capabilities: pm msi 16550 bus_master cap_list
             configuration: driver=serial latency=0
             resources: irq:19 ioport:60b0(size=8) memory:f393c000-f393cfff
        *-network
             description: Ethernet interface
             product: 82579LM Gigabit Network Connection [8086:1502]
             vendor: Intel Corporation [8086]
             physical id: 19
             bus info: pci@0000:00:19.0
             logical name: eth0
             version: 04
             serial: [REMOVED]
             size: 100Mbit/s
             capacity: 1Gbit/s
             width: 32 bits
             clock: 33MHz
             capabilities: pm msi bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
             configuration: autonegotiation=on broadcast=yes driver=e1000e driverversion=2.3.2-k duplex=full firmware=0.13-3 ip=192.168.0.101 latency=0 link=yes multicast=yes port=twisted pair speed=100Mbit/s
             resources: irq:44 memory:f3900000-f391ffff memory:f393b000-f393bfff ioport:6080(size=32)
        *-usb:1
             description: USB controller
             product: 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #2 [8086:1E2D]
             vendor: Intel Corporation [8086]
             physical id: 1a
             bus info: pci@0000:00:1a.0
             version: 04
             width: 32 bits
             clock: 33MHz
             capabilities: pm debug ehci bus_master cap_list
             configuration: driver=ehci-pci latency=0
             resources: irq:16 memory:f393a000-f393a3ff
        *-multimedia
             description: Audio device
             product: 7 Series/C210 Series Chipset Family High Definition Audio Controller [8086:1E20]
             vendor: Intel Corporation [8086]
             physical id: 1b
             bus info: pci@0000:00:1b.0
             version: 04
             width: 64 bits
             clock: 33MHz
             capabilities: pm msi pciexpress bus_master cap_list
             configuration: driver=snd_hda_intel latency=0
             resources: irq:49 memory:f3930000-f3933fff
        *-pci:1
             description: PCI bridge
             product: 7 Series/C210 Series Chipset Family PCI Express Root Port 1 [8086:1E10]
             vendor: Intel Corporation [8086]
             physical id: 1c
             bus info: pci@0000:00:1c.0
             version: c4
             width: 32 bits
             clock: 33MHz
             capabilities: pci pciexpress msi pm normal_decode bus_master cap_list
             configuration: driver=pcieport
             resources: irq:16 ioport:4000(size=4096) memory:f3100000-f38fffff ioport:f1800000(size=8388608)
           *-generic
                description: System peripheral
                product: MMC/SD Host Controller [1180:E822]
                vendor: Ricoh Co Ltd [1180]
                physical id: 0
                bus info: pci@0000:02:00.0
                version: 07
                width: 32 bits
                clock: 33MHz
                capabilities: msi pm pciexpress bus_master cap_list
                configuration: driver=sdhci-pci latency=0
                resources: irq:16 memory:f3100000-f31000ff
        *-pci:2
             description: PCI bridge
             product: 7 Series/C210 Series Chipset Family PCI Express Root Port 2 [8086:1E12]
             vendor: Intel Corporation [8086]
             physical id: 1c.1
             bus info: pci@0000:00:1c.1
             version: c4
             width: 32 bits
             clock: 33MHz
             capabilities: pci pciexpress msi pm normal_decode bus_master cap_list
             configuration: driver=pcieport
             resources: irq:17 memory:f3000000-f30fffff
           *-network DISABLED
                description: Wireless interface
                product: Centrino Advanced-N 6205 [Taylor Peak] [8086:85]
                vendor: Intel Corporation [8086]
                physical id: 0
                bus info: pci@0000:03:00.0
                logical name: wlan0
                version: 34
                serial: [REMOVED]
                width: 64 bits
                clock: 33MHz
                capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
                configuration: broadcast=yes driver=iwlwifi driverversion=3.11.0-12-generic firmware=18.168.6.1 latency=0 link=no multicast=yes wireless=IEEE 802.11abgn
                resources: irq:47 memory:f3000000-f3001fff
        *-pci:3
             description: PCI bridge
             product: 7 Series/C210 Series Chipset Family PCI Express Root Port 3 [8086:1E14]
             vendor: Intel Corporation [8086]
             physical id: 1c.2
             bus info: pci@0000:00:1c.2
             version: c4
             width: 32 bits
             clock: 33MHz
             capabilities: pci pciexpress msi pm normal_decode bus_master cap_list
             configuration: driver=pcieport
             resources: irq:18 ioport:3000(size=4096) memory:f2800000-f2ffffff ioport:f2000000(size=8388608)
        *-usb:2
             description: USB controller
             product: 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #1 [8086:1E26]
             vendor: Intel Corporation [8086]
             physical id: 1d
             bus info: pci@0000:00:1d.0
             version: 04
             width: 32 bits
             clock: 33MHz
             capabilities: pm debug ehci bus_master cap_list
             configuration: driver=ehci-pci latency=0
             resources: irq:23 memory:f3939000-f39393ff
        *-isa
             description: ISA bridge
             product: QM77 Express Chipset LPC Controller [8086:1E55]
             vendor: Intel Corporation [8086]
             physical id: 1f
             bus info: pci@0000:00:1f.0
             version: 04
             width: 32 bits
             clock: 33MHz
             capabilities: isa bus_master cap_list
             configuration: driver=lpc_ich latency=0
             resources: irq:0
        *-storage
             description: SATA controller
             product: 7 Series Chipset Family 6-port SATA Controller [AHCI mode] [8086:1E03]
             vendor: Intel Corporation [8086]
             physical id: 1f.2
             bus info: pci@0000:00:1f.2
             version: 04
             width: 32 bits
             clock: 66MHz
             capabilities: storage msi pm ahci_1.0 bus_master cap_list
             configuration: driver=ahci latency=0
             resources: irq:45 ioport:60a8(size=8) ioport:60bc(size=4) ioport:60a0(size=8) ioport:60b8(size=4) ioport:6060(size=32) memory:f3938000-f39387ff
        *-serial UNCLAIMED
             description: SMBus
             product: 7 Series/C210 Series Chipset Family SMBus Controller [8086:1E22]
             vendor: Intel Corporation [8086]
             physical id: 1f.3
             bus info: pci@0000:00:1f.3
             version: 04
             width: 64 bits
             clock: 33MHz
             configuration: latency=0
             resources: memory:f3934000-f39340ff ioport:efa0(size=32)
     *-scsi:0
          physical id: 0
          logical name: scsi0
          capabilities: emulated
        *-disk
             description: ATA Disk
             product: HITACHI HTS72505
             vendor: Hitachi
             physical id: 0.0.0
             bus info: scsi@0:0.0.0
             logical name: /dev/sda
             version: GH2Z
             serial: [REMOVED]
             size: 465GiB (500GB)
             capabilities: gpt-1.00 partitioned partitioned:gpt
             configuration: ansiversion=5 guid=583f6577-bf94-48b1-a9be-67462968b84f sectorsize=4096
           *-volume:xxx [REMOVED]
     *-scsi:1
          physical id: 3
          logical name: scsi1
          capabilities: emulated
        *-cdrom
             description: DVD-RAM writer
             product: DVD RW AD-7740H
             vendor: Optiarc
             physical id: 0.0.0
             bus info: scsi@1:0.0.0
             logical name: /dev/cdrom
             logical name: /dev/sr0
             version: 1.S1
             capabilities: removable audio cd-r cd-rw dvd dvd-r dvd-ram
             configuration: ansiversion=5 status=nodisc
  *-battery
       product: 45N1007
       vendor: SANYO
       physical id: 1
       slot: Rear
       capacity: 93240mWh
       configuration: voltage=11.1V

 

Big thanks for everyone who has involved in this thread and who created stuffs, guides, tools...

Thanks for @tluck & experts in this thread to provide related update and information which I used in my package.

 

Feel free to ask and discussion here about Mac OS X on T430 series, I will try to help if I can in my spared time.

Edited by Uoc Nguyen

Share this post


Link to post
Share on other sites
Advertisement

Hi,  when do you plan on posting kexts?  I've recently install 10.9 on my T430 however am yet to get USB3 or the webcam working.  I've used myhack/chameleon, should I instead be using clover to ensure success?

 

Aside from the Nvidia chipset, my hardware seems to be identical to yours.

Share this post


Link to post
Share on other sites

Hi,

 

I bought a Thinkpad T430 last year and would like to install OS X Mavericks.  The H/W configuration is similar to you guys.  Could you guys please share the steps and procedures?

 

Many Thanks.

Share this post


Link to post
Share on other sites

Just to notify that I updated #1

 

Sorry for lately update, I was very busy and I can not find any spare time to collect changes, package them together and update guide.

Share this post


Link to post
Share on other sites

Thanks Uoc Nguyen.  I'm new to hackintosh and I probably will have other questions be posted later.

 

Thanks again for your help.

Share this post


Link to post
Share on other sites

Uoc Nguyen

 

I have T430 Model 2347-A82

 

Could you please post or MSG me the screen shots of your bios settings? I also would like to know if you used any switches to allow Mavericks to install I am currently getting the spinning loader to a black screen. If it helps to see my specs I can get these for you your help would be appreciated.

 

Also I was able to get Mountain Lion to work with some of the files you posted so I believe I am just missing something simple with Mavericks install.

 

Thank You

Share this post


Link to post
Share on other sites

@techitch: My BIOS config is normal, I enabled almost everything. You can see boot switches in CLOVER/config.plist file inside my attachment in post #1.

 

Let's post your screenshot of your boot progress with switch '-v' without quote.

Share this post


Link to post
Share on other sites

@Uoc Nguyen thank you for your response I think thats where I went wrong I used another method to boot because it was more straight forward for my new skills. May I ask how to find my SMBIOS and CUSTOMUUID? I found these values in your config.plist but I don't know how to get these values. I will work on using CLOVER in the morning to see if I get further installing OS X M. If it still hangs I will upload screen shot using -v switch


@ Uoc Nguyen: Found UUID in bios dough GOOGLE helps a lot!! working on SMBIOS now

Share this post


Link to post
Share on other sites

You can download Clover Configurator from here: http://mackie100.webwacemaster.altervista.org/ -> generate new SMBIOS for you and copy it back to your config.plist

You can use SMBIOS MacBookPro 9.2 like me, it is for IvyBridge Core i5/i7.

 

About CUSTOMUUID, you can remove it if you can not found, find it in your BIOS main screen (BIOS / Main UUID)

Share this post


Link to post
Share on other sites

@Uoc Nguyen I'm stuck @ Clover step I was able to update config but can figure out how to boot to Clover. 

 

1. How should I format clover usb drive?

 

Thanks for any help you can provide.

 

Scott

Share this post


Link to post
Share on other sites

@uoc-nguyen

 

So I have created mavericks USB bootable disk using this command

 

sudo /Applications/Install\ OS\ X\ Mavericks.app/Contents/Resources/createinstallmedia --volume /Volumes/Untitled --applicationpath /Applications/Install\ OS\ X\ Mavericks.app --nointeraction

 

I have modified config.plist

I have clover installed

 

I am stuck on configuring clover to boot so I can install mavericks

Share this post


Link to post
Share on other sites

  You must create a GPT UEFI compatible disk (Follow this instruction to create it: https://wiki.archlinux.org/index.php/UEFI#EFI_System_Partition)

 

  In short, you must have an ESP (EFI partition), it is a small FAT 32 partition (about >= 128M depend your need) with EFISYS flag. It used to store CLOVER or any EFI firmware / bootloader, Linux kernel, config file, theme...

 

  After created a GPT partition you can verify it by command `sudo diskutil list /dev/diskX` with diskX is your USB disk, usually is disk1 as disk0 is your internal HDD, and you will see something like this:

post-206862-0-64115800-1388079586_thumb.png

 

I use some live Linux distro for some reasons, that's why my partition number 1 (EFI) is large.

 

  Since EFI partition is a system partition so Operating System usually hide it. You can mount it by command `sudo disk mount /dev/diskXsY` (if your EFI is first partition of your USB disk then diskXsY should be disk1s1). Now you can install CLOVER and copy config files... to this partition and create your Mac Installer Bootable USB.

 

  Hint: Press F12 to select boot from USB after reboot

 

Happy hacking!

Share this post


Link to post
Share on other sites

Finally, got wireless work with 7$ USB Wifi dongle with 150MB/s - http://www.comfast.cn/product1/product168_en.html

 

Look like Realtek fault, the device show as ethernet instead of wireless and need to use Wireless Network Utilities to connect to AP.

 

Download Mac OS X 10.8 install package from this page. It work well for 10.9.1.

Share this post


Link to post
Share on other sites

I own a T430 Type 2347A39.

 

After install your kexts I got everything working except the audio and the restart, sleep etc. I was working before the kexts installs...

But how did you got the fn-F9 to work for increase brightness?? My screen is too dark and I have no option to increase...

Share this post


Link to post
Share on other sites

I own a T430 Type 2347A39.

 

After install your kexts I got everything working except the audio and the restart, sleep etc. I was working before the kexts installs...

But how did you got the fn-F9 to work for increase brightness?? My screen is too dark and I have no option to increase...

  • Audio: you will need to patch AppleHDA and edit DSDT to use it, I'm patched and using the layout 28, you can use my patched AppleHDA version 2.5.3 from 10.9.1 AppleHDA.kext-10.9.1.zip
  • For brightness, currently I'm using the _Q14, _Q15 (Fn-K, Fn-P) in DSDT to control the brightness. If you want to use Fn+F8/F9, you need to find out which Keycode used and will need to edit the DSDT or `/System/Library/Extensions/VoodooPS2Controller.kext/Contents/PlugIns/VoodooPS2Keyboard.kext/Contents/Info.plist`
  • IFAIK, Shutdown / Restart / Sleep may caused by UEFI CLOVER, I take some work around but it still not stable to use, it is needed to edit the DSDT _PTS, _WAK method, try to use some code from this thread http://www.insanelymac.com/forum/topic/285678-lenovo-thinkpad-t420-with-uefi-only/page-25?do=findComment&comment=1952283 as reference. I tried a lots but still no luck.
Edited by Uoc Nguyen

Share this post


Link to post
Share on other sites

My hardware is almost the same as yours. I using no UEFI for now, I'm booting with legacy.

I've installed all the kexts and display and was working as I wrote in the first post. After that, I added your DSDT without diff and got appleintelcpupowermanagement panic at the boot beginning.

I'll try again adding the DSDT first.

I'll try to use the fn-P K for brightness and your patched audio.

Thanks

Share this post


Link to post
Share on other sites
  • Can you boot with single user safe mode?
  • Did you repair the permission for kexts you copied from my attachment? if not, you can boot up with the install USB/DVD and repair it use this command: 
    chown -R root:wheel /Volumes/OSXROOT/System/Library/Extensions
    chmod -R 755 /Volumes/OSXROOT/System/Library/Extensions
    kextcache -u /Volumes/OSXROOT/
    

    replace OSXROOT with your mounted installed OSX volume

Share this post


Link to post
Share on other sites

Using DSDT.i I could boot but Audio not working even with the patched kext and Video only VGA. Keyboad, TrackPad, Bluetooth, Ethernet Working.

Using DSDT.d Nvidia looks loads correct but blank screen after the boot.

Share this post


Link to post
Share on other sites

Now I got almost everything working, thank you. Just the brightness of the screen is still annoying me. Altough I move to maximum, it still draker than I got in Windows... How to try to increase? DSDT edit? where exactly?

Share this post


Link to post
Share on other sites

Very interesting: I did a ctrl-alt-del and just after the logout the screen got the real max brightness!!! The question now is how to fix that?

Share this post


Link to post
Share on other sites

I have same problem with the NVIDIA backlight control, the baclight slider and sun OSC icon show and response to Fn-K / Fn-P but the backlight not change. Tried many way but not success. There are 2 things you may interesting:

  • It is reflect with NVIDIA's pwm-info parameter, I tried to remove and the backlight slider / sun OSC gone, tried with W520 but same problem, I think it can be calculate / export from video rom file.
  • You may try something in T420 topic

Share this post


Link to post
Share on other sites

Sometime I see a flickering happening with some colors contrasts. It's bothering me.

For the brightness issue I installed the rehabman blinkscreen hack but no success here.

Share this post


Link to post
Share on other sites

@uoc-nguyen

hi, I used your kext to install my T430,It is ok for driver, but ethernet card can't build-in, so I can't login app store. Do you have this problem?

ps. I don't use your dsdt file because it was always made me can't start my apple system.

I use the clover to load the mac os.

Share this post


Link to post
Share on other sites

Hey,

 

i managed to get everything working except BT and Mic. 

Can you please tell me what you have done to get it work?

Thanks!

 

//EDIT:

Sound working

BT working

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By ludufre
      New guide available for macOS Catalina 10.15 (i3 and i5 versions)!
       
       
      Installing OS X Yosemite 10.10.3 on ASUS VivoBook S400C (also know as S400CA)
      Specifically in S400CA-CA178H model, most likely all other models are compatible
      Can't boot S400CA-CA206H due HD3000 issues (i3-2375M model)
       
        

      Updated 17/06/15 #1:
       
      - Brightness now work. DSDT patch below.
       
       
       
      - Updated attachment with DSDT.aml and missing VoodooHDA kext.
      - Added TO DO list.
       
      Updated 17/06/15 #2:
       
      - WebCam now work. Kext AnyiSightCam.
       
       
       
      - Update attachment with new WebCam kext.
       
      Updated 19/06/15 #1:
       
      - Can't boot installation in S400C-CA206H model (i3-2375M/HD3000).
       
       
       
      - VGA tested. Don't work.
      - Boot logo work. Missed CsmVideoDxe-64 on my install.
       
      Updated 21/06/15 #1:
       
      - I Forgot of the need of FakeSMC.kext.
       
       
       
       
      Updated 22/11/17 #1:
       
      - High Sierra 10.13.1 on ASUS Vivobook S400C (S400CA-CA178H).

       
      Prequel
       
      Hi, my name is Luan and today I will show how I installed the OS X Yosemite version 10.10.3 on my ultrabook.
      I know that my procedure maybe can be made in other ways, but this is about how I made it.
      I am part of this world for four years. Since the launch of XCode 7 and no need to sign the Developer Program to test applications on the iPhone, I decided to install OS X.
      God bless WWDC15 (I'm not religious, just a popular saying in my country).
       
       
      What works and what does not work
       
      - Processor ->  Work. i5-3317U @ 1.7Ghz/2.6Ghz.  SpeedStep 8 to 26 stages. AsusAICPUPM <true/> in Clover config.plist. 
      - Video Card ->  Work. HD4000. Full QE/CI.
      - Chipset ->  Work.
      - HDMI ->  Work.
      - VGA ->  Not work. I did not have time to fix yet.
      - Audio ->  Work. Kext VoodooHDA + AppleHDADisabler.
      - WiFi ->  Work. Replaced by Athero 9285 Wifi/Bluetooth.
      - Ethernet ->  Work. Kext Experimental Atheros AR81(31/32/51/52/61/62/71/72) Driver for 10.7/10.8.
      - Touchpad and keyboard ->  Work. Kext ELAN, FocalTech and Synaptics (Smart Touchpad) Driver (Mac OS X).
      - FN keyboards keys ->  Not work. I did not have time to fix yet.
      - Brightness control ->  Work. DSDT patch.
      - Sleep ->  Work.
      - Battery ->  Work. Kext ACPIBatteryManager by RehabMan and DSDT patch (below).
      - Card Reader -> Not tested. I have no adapters.
      - Integrated Camera ->  Work. Kext AnyiSightCam.
      - Bluetooth ->  Work. Kext Bluetooth Firmware Uploader and ControllerPowerState change to 1.
      - Boot Logo ->  Work.
       
       
      What I needed to install
       
      - Running install of Yosemite on VMware -> Downloaded version 10.10 via torrent (Google it). You can use a real Mac of an friend. I believe that Snow Leopard (10.6), Lion (10.7), Mountain Lion (10.8), Mavericks (10.9) also work.
      - Two USB flash drives of 8GB -> One for OSX install and another to the bootloader. This second not need to be 8GB, a 256MB is perfect.
      - OS X Yosemite install app -> Downloaded via App Store inside the virtual machine. I used version 10.10.3.
      - CloverEFI -> Also downloaded inside the virtual machine. I used build 3229.
      - DSDT patch skills -> Needed to battery works. How to patch DSDT.
       
      P.s.: You can use a single flash drive, in my install I used two because I don't wanted lose the os install created on the main flash drive.
       
       
      How I created flash cards
       
      Install flash drive:
       
      Partially used @snatch guide. More specifically this part:
       
       
       
       
       
       
      In the part above used the first flash drive (8GB).
       
      Bootloader flash drive:
       
      Format the second flash drive with GUID partition and Journaled file system type. If you want to use only one flash card, don't format!
       
      Downloaded the CloverEFI (used 3229) and installed with this options:

      Options:
       
      - Install for UEFI booting only
      - Install Clover in the ESP
      - Drivers64UEFI - CsmVideoDxe-64
      - Drivers64UEFI - OsxAptioFixDrv-64
       
      Will be created a partition named EFI. Edit the /EFI/CLOVER/config.plist and change those values:
       
      - SystemParameters - InjectKexts - <true/>
      - Graphics - Inject - ATI - <false/>
      - Graphics - Inject - Intel - <true/>
      - Graphics - ig-platform-id - 0x01660003
      - KernelAndKextPatches - AsusAICPUPM - <true/>
       
      P.s.: I will provide below my config.plist as attachment.
       
      Now you will capable to boot in installation, but your keyboard and mouse will not work. Let's fix that:
       
      - Download the Smart Touchpad kext from here. I used the version 4.3. This also enable the touchscreen.
      - Download the FakeSMC kext from here. I used the version 6.9.1315. This is very important. Can't boot without it.
      - Put the Kexts inside /EFI/CLOVER/kexts/10.10/
       
      Now you can start the instalation without problem (I guess).
       
       
      BIOS Setup Configuration
       
      - Intel Virtualization Technology: Disabled
      - VT-d: Disabled
      - USB Configuration - XHCI Pre-Boot Mode: Disabled
       
      P.s.: BIOS version 210.
       
       
      Installing indeed
       
      - Plug in the two flash drives.
      - When appear the Asus logo, press ESC once to enter Boot Menu.
      - Select the flash drive name with UEFI prefix. In my case "UEFI: KingstonDataTraveler 2.0PMAP".
      - On CloverEFI menu, use arrow to mark the flash drive with de OS X install, press Space on keyboard and select: "Boot Mac OS X in verbose mode".
      - As usual, format your HDD or SSD as GUID and Journaled. Make more partitions if you need. Take a note of the OSX partition name you entered on Disk Utillity.
      - After that, go ahead as always and start the instalation.
      - Go in the kitchen grab some lunch. You deserve it.
       
       
      Post installation
       
      What we have so far? The system installed on your ultrabook. Now you need to get rid of bootable flash drive installing the bootloader on HDD or SSD.
       
      Installing the bootloader in internal HDD or SSD:
       
      - Boot again selecting the flash drive on Boot menu. Same you did before.
      - Now select the partition you noted early.
      - If you do everything wright, the system will start normally.
      - Now you will use the CloverEFI install package again (same options from above). This time, the target will be your OS X installed partition.
       
      Our adorable ultrabook don't boot EFI if partition on the HDD or SSD if isn't MS-DOS. We will need to format and install Clover again.
       
      - Open the Terminal and enter "sudo -s".
      - Run the command: "diskutil list".
      - Take note of what location is your EFI. Usually it is "rdisk0s1". Make sure it's correct or you loose your data.
      - Now, let's format it, now execute: "newfs_msdos -v EFI -F 32 /dev/rdiskXsX". rdiskXsX is your EFI partition location from line above.
       
      Now you need to copy all data of your flash card bootloader to the root of your new created EFI partition on internal disk.
      This EFI partition is unmounted. Mount with "diskutil mount /dev/rdiskXsX".
       
      Just restart without flash drives to test.
       
      Others Kexts:
       
      Download the kexts from the links below. I strongly recommend always use newest versions. If you are too lazy, I attach on end of the post.
       
      Ethernet: ALXEthernet
      Sound: VoodooHDA (You may have to select the output there in System Preferences)
      Battery: ACPIBatteryManager
      Bluetooth: BTFirmwareUploader
      Integrated Camera: AnyiSightCam
       
      All kexts will be placed inside /EFI/CLOVER/kexts/10.10/, mount again this partition (diskutil mount /dev/rdiskXsX) for it.
       
      Now we need to add Battery patch to a new DSDT:
       
      #Maintained by: RehabMan for: Laptop Patches #battery_ASUS-N55SL.txt # created by RehabMan 8/12/2013 # created originally for jesselid # works for: # ASUS N55SL, BIOS rev. 204 # ASUS VivoBook series # ASUS Zenbook UX31A # ASUS UX301LA # ASUS X553E-SX399V # ASUS F501A # ASUS K55VM # ASUS U46SV, BIOS rev. 2.04 # ASUS N43 # ASUS PU500CA (90NB00F1-M01120) # ASUS N73SV # ASUS X401A-WX108 # ASUS F551CA Bios rev. 207 # ASUS S551LB VivoBook # ASUS ZenBook UX32VD # ASUS F550L-X455H # ASUS X53S # ASUS K550JD-XX003H # ASUS G53SX # ASUS K56CB # ASUS UX305 into method label B1B2 remove_entry; into definitionblock code_regex . insert begin Method (B1B2, 2, NotSerialized) { Return (Or (Arg0, ShiftLeft (Arg1, 8))) }\n end; # not really for battery, but might come in handy to read fan speed(s) into device label EC0 code_regex TAH0,\s+16 replace_matched begin TH00,8,TH01,8 end; into device label EC0 code_regex TAH1,\s+16 replace_matched begin TH10,8,TH11,8 end; into method label TACH code_regex \(TAH0, replace_matched begin (B1B2(TH00,TH01), end; into method label TACH code_regex \(TAH1, replace_matched begin (B1B2(TH10,TH11), end; into method label GFAN code_regex \(\\_SB\.PCI0\.LPCB\.EC0\.TAH0, replace_matched begin (B1B2(\\_SB.PCI0.LPCB.EC0.TH00,\\_SB.PCI0.LPCB.EC0.TH01), end; # battery EC into device label EC0 code_regex B0SN,\s+16 replace_matched begin B0S0,8,B0S1,8 end; into device label EC0 code_regex B1SN,\s+16 replace_matched begin B1S0,8,B1S1,8 end; into method label BIFA code_regex \(B0SN, replace_matched begin (B1B2(B0S0,B0S1), end; into method label BIFA code_regex \(B1SN, replace_matched begin (B1B2(B1S0,B1S1), end; into device label EC0 code_regex DT2B,\s+16 replace_matched begin T2B0,8,T2B1,8 end; into method label SMBR code_regex \(DT2B, replace_matched begin (B1B2(T2B0,T2B1), end; into method label SMBW code_regex Store\s+\(([^,]*),\s+DT2B\) replace_matched begin Store(%1,T2B0) Store(ShiftRight(%1,8),T2B1) end; into device label EC0 insert begin Method (RDBA, 0, Serialized)\n {\n Name (TEMP, Buffer(0x20) { })\n Store (BA00, Index(TEMP, 0x00))\n Store (BA01, Index(TEMP, 0x01))\n Store (BA02, Index(TEMP, 0x02))\n Store (BA03, Index(TEMP, 0x03))\n Store (BA04, Index(TEMP, 0x04))\n Store (BA05, Index(TEMP, 0x05))\n Store (BA06, Index(TEMP, 0x06))\n Store (BA07, Index(TEMP, 0x07))\n Store (BA08, Index(TEMP, 0x08))\n Store (BA09, Index(TEMP, 0x09))\n Store (BA0A, Index(TEMP, 0x0A))\n Store (BA0B, Index(TEMP, 0x0B))\n Store (BA0C, Index(TEMP, 0x0C))\n Store (BA0D, Index(TEMP, 0x0D))\n Store (BA0E, Index(TEMP, 0x0E))\n Store (BA0F, Index(TEMP, 0x0F))\n Store (BA10, Index(TEMP, 0x10))\n Store (BA11, Index(TEMP, 0x11))\n Store (BA12, Index(TEMP, 0x12))\n Store (BA13, Index(TEMP, 0x13))\n Store (BA14, Index(TEMP, 0x14))\n Store (BA15, Index(TEMP, 0x15))\n Store (BA16, Index(TEMP, 0x16))\n Store (BA17, Index(TEMP, 0x17))\n Store (BA18, Index(TEMP, 0x18))\n Store (BA19, Index(TEMP, 0x19))\n Store (BA1A, Index(TEMP, 0x1A))\n Store (BA1B, Index(TEMP, 0x1B))\n Store (BA1C, Index(TEMP, 0x1C))\n Store (BA1D, Index(TEMP, 0x1D))\n Store (BA1E, Index(TEMP, 0x1E))\n Store (BA1F, Index(TEMP, 0x1F))\n Return (TEMP)\n }\n end; into device label EC0 insert begin Method (WRBA, 1, Serialized)\n {\n Name (TEMP, Buffer(0x20) { })\n Store (Arg0, TEMP)\n Store (DerefOf(Index(TEMP, 0x00)), BA00)\n Store (DerefOf(Index(TEMP, 0x01)), BA01)\n Store (DerefOf(Index(TEMP, 0x02)), BA02)\n Store (DerefOf(Index(TEMP, 0x03)), BA03)\n Store (DerefOf(Index(TEMP, 0x04)), BA04)\n Store (DerefOf(Index(TEMP, 0x05)), BA05)\n Store (DerefOf(Index(TEMP, 0x06)), BA06)\n Store (DerefOf(Index(TEMP, 0x07)), BA07)\n Store (DerefOf(Index(TEMP, 0x08)), BA08)\n Store (DerefOf(Index(TEMP, 0x09)), BA09)\n Store (DerefOf(Index(TEMP, 0x0A)), BA0A)\n Store (DerefOf(Index(TEMP, 0x0B)), BA0B)\n Store (DerefOf(Index(TEMP, 0x0C)), BA0C)\n Store (DerefOf(Index(TEMP, 0x0D)), BA0D)\n Store (DerefOf(Index(TEMP, 0x0E)), BA0E)\n Store (DerefOf(Index(TEMP, 0x0F)), BA0F)\n Store (DerefOf(Index(TEMP, 0x10)), BA10)\n Store (DerefOf(Index(TEMP, 0x11)), BA11)\n Store (DerefOf(Index(TEMP, 0x12)), BA12)\n Store (DerefOf(Index(TEMP, 0x13)), BA13)\n Store (DerefOf(Index(TEMP, 0x14)), BA14)\n Store (DerefOf(Index(TEMP, 0x15)), BA15)\n Store (DerefOf(Index(TEMP, 0x16)), BA16)\n Store (DerefOf(Index(TEMP, 0x17)), BA17)\n Store (DerefOf(Index(TEMP, 0x18)), BA18)\n Store (DerefOf(Index(TEMP, 0x19)), BA19)\n Store (DerefOf(Index(TEMP, 0x1A)), BA1A)\n Store (DerefOf(Index(TEMP, 0x1B)), BA1B)\n Store (DerefOf(Index(TEMP, 0x1C)), BA1C)\n Store (DerefOf(Index(TEMP, 0x1D)), BA1D)\n Store (DerefOf(Index(TEMP, 0x1E)), BA1E)\n Store (DerefOf(Index(TEMP, 0x1F)), BA1F)\n }\n end; into device label EC0 code_regex BDAT,\s+256 replace_matched begin //BDAT, 256,\n BA00,8,BA01,8,BA02,8,BA03,8,\n BA04,8,BA05,8,BA06,8,BA07,8,\n BA08,8,BA09,8,BA0A,8,BA0B,8,\n BA0C,8,BA0D,8,BA0E,8,BA0F,8,\n BA10,8,BA11,8,BA12,8,BA13,8,\n BA14,8,BA15,8,BA16,8,BA17,8,\n BA18,8,BA19,8,BA1A,8,BA1B,8,\n BA1C,8,BA1D,8,BA1E,8,BA1F,8\n end; into method label SMBR code_regex \(BDAT, replaceall_matched begin (RDBA(), end; into method label SMBR code_regex Store\s\((.*),\sBDAT\) replaceall_matched begin WRBA(%1) end; into method label SMBW code_regex Store\s\((.*),\sBDAT\) replaceall_matched begin WRBA(%1) end; into method label ECSB code_regex Store\s\((.*),\sBDAT\) replaceall_matched begin WRBA(%1) end; into method label ECSB code_regex \(BDAT, replaceall_matched begin (RDBA(), end; into device label EC0 insert begin Method (RDBB, 0, Serialized)\n {\n Name (TEMP, Buffer(0x20) { })\n Store (BB00, Index(TEMP, 0x00))\n Store (BB01, Index(TEMP, 0x01))\n Store (BB02, Index(TEMP, 0x02))\n Store (BB03, Index(TEMP, 0x03))\n Store (BB04, Index(TEMP, 0x04))\n Store (BB05, Index(TEMP, 0x05))\n Store (BB06, Index(TEMP, 0x06))\n Store (BB07, Index(TEMP, 0x07))\n Store (BB08, Index(TEMP, 0x08))\n Store (BB09, Index(TEMP, 0x09))\n Store (BB0A, Index(TEMP, 0x0A))\n Store (BB0B, Index(TEMP, 0x0B))\n Store (BB0C, Index(TEMP, 0x0C))\n Store (BB0D, Index(TEMP, 0x0D))\n Store (BB0E, Index(TEMP, 0x0E))\n Store (BB0F, Index(TEMP, 0x0F))\n Store (BB10, Index(TEMP, 0x10))\n Store (BB11, Index(TEMP, 0x11))\n Store (BB12, Index(TEMP, 0x12))\n Store (BB13, Index(TEMP, 0x13))\n Store (BB14, Index(TEMP, 0x14))\n Store (BB15, Index(TEMP, 0x15))\n Store (BB16, Index(TEMP, 0x16))\n Store (BB17, Index(TEMP, 0x17))\n Store (BB18, Index(TEMP, 0x18))\n Store (BB19, Index(TEMP, 0x19))\n Store (BB1A, Index(TEMP, 0x1A))\n Store (BB1B, Index(TEMP, 0x1B))\n Store (BB1C, Index(TEMP, 0x1C))\n Store (BB1D, Index(TEMP, 0x1D))\n Store (BB1E, Index(TEMP, 0x1E))\n Store (BB1F, Index(TEMP, 0x1F))\n Return (TEMP)\n }\n end; into device label EC0 insert begin Method (WRBB, 1, Serialized)\n {\n Name (TEMP, Buffer(0x20) { })\n Store (Arg0, TEMP)\n Store (DerefOf(Index(TEMP, 0x00)), BB00)\n Store (DerefOf(Index(TEMP, 0x01)), BB01)\n Store (DerefOf(Index(TEMP, 0x02)), BB02)\n Store (DerefOf(Index(TEMP, 0x03)), BB03)\n Store (DerefOf(Index(TEMP, 0x04)), BB04)\n Store (DerefOf(Index(TEMP, 0x05)), BB05)\n Store (DerefOf(Index(TEMP, 0x06)), BB06)\n Store (DerefOf(Index(TEMP, 0x07)), BB07)\n Store (DerefOf(Index(TEMP, 0x08)), BB08)\n Store (DerefOf(Index(TEMP, 0x09)), BB09)\n Store (DerefOf(Index(TEMP, 0x0A)), BB0A)\n Store (DerefOf(Index(TEMP, 0x0B)), BB0B)\n Store (DerefOf(Index(TEMP, 0x0C)), BB0C)\n Store (DerefOf(Index(TEMP, 0x0D)), BB0D)\n Store (DerefOf(Index(TEMP, 0x0E)), BB0E)\n Store (DerefOf(Index(TEMP, 0x0F)), BB0F)\n Store (DerefOf(Index(TEMP, 0x10)), BB10)\n Store (DerefOf(Index(TEMP, 0x11)), BB11)\n Store (DerefOf(Index(TEMP, 0x12)), BB12)\n Store (DerefOf(Index(TEMP, 0x13)), BB13)\n Store (DerefOf(Index(TEMP, 0x14)), BB14)\n Store (DerefOf(Index(TEMP, 0x15)), BB15)\n Store (DerefOf(Index(TEMP, 0x16)), BB16)\n Store (DerefOf(Index(TEMP, 0x17)), BB17)\n Store (DerefOf(Index(TEMP, 0x18)), BB18)\n Store (DerefOf(Index(TEMP, 0x19)), BB19)\n Store (DerefOf(Index(TEMP, 0x1A)), BB1A)\n Store (DerefOf(Index(TEMP, 0x1B)), BB1B)\n Store (DerefOf(Index(TEMP, 0x1C)), BB1C)\n Store (DerefOf(Index(TEMP, 0x1D)), BB1D)\n Store (DerefOf(Index(TEMP, 0x1E)), BB1E)\n Store (DerefOf(Index(TEMP, 0x1F)), BB1F)\n }\n end; into device label EC0 code_regex BDA2,\s+256 replace_matched begin //BDA2, 256,\n BB00,8,BB01,8,BB02,8,BB03,8,\n BB04,8,BB05,8,BB06,8,BB07,8,\n BB08,8,BB09,8,BB0A,8,BB0B,8,\n BB0C,8,BB0D,8,BB0E,8,BB0F,8,\n BB10,8,BB11,8,BB12,8,BB13,8,\n BB14,8,BB15,8,BB16,8,BB17,8,\n BB18,8,BB19,8,BB1A,8,BB1B,8,\n BB1C,8,BB1D,8,BB1E,8,BB1F,8\n end; into method label SMBR code_regex \(BDA2, replaceall_matched begin (RDBB(), end; into method label SMBR code_regex Store\s\((.*),\sBDA2\) replaceall_matched begin WRBB(%1) end; into method label SMBW code_regex Store\s\((.*),\sBDA2\) replaceall_matched begin WRBB(%1) end; into method label ECSB code_regex Store\s\((.*),\sBDA2\) replaceall_matched begin WRBB(%1) end; into method label ECSB code_regex \(BDA2, replaceall_matched begin (RDBB(), end; # additional work for _BIX method present in some ASUS laptops into device label EC0 code_regex B0C3,\s+16 replace_matched begin XC30,8,XC31,8 end; into device label EC0 code_regex B1C3,\s+16 replace_matched begin YC30,8,YC31,8 end; into_all method label _BIX code_regex \(\^\^LPCB\.EC0\.B0C3, replaceall_matched begin (B1B2(^^LPCB.EC0.XC30,^^LPCB.EC0.XC31), end; into_all method label _BIX code_regex \(\^\^LPCB\.EC0\.B1C3, replaceall_matched begin (B1B2(^^LPCB.EC0.YC30,^^LPCB.EC0.YC31), end; # or could remove the _BIX method if it turns out not to work #into_all method label _BIX remove_entry; And the Brightness:
       
       
       
       
       
      #Maintained by: RehabMan for: Laptop Patches #graphics_PNLF_ivy_sandy.txt # This patch enables the brightness slider in SysPrefs->Displays # and will also enable activation of sleep mode by closing # the laptop lid. # # This particular version is intended to be used with ACPIBacklight.kext # although it can also be used with AppleBacklight.kext, # provided AppleBacklight.kext is patched to recognize your # display or an injector is used to set brightness levels. # # See this thread for more information: # http://www.tonymacx86.com/hp-probook-mavericks/121031-native-brightness-working-without-blinkscreen-using-patched-applebacklight-kext.html # (also read any linked threads) # # # Note: This patch should be applied to the DSDT or SSDT that defines # your integrated graphics device (always at _ADR 0x00020000) # into_all device label PNLF remove_entry; into_all device name_adr 0x00020000 code_regex (OperationRegion\s\(RMPC,\sPCI_Config[^\}]*\}) remove_matched; into device name_adr 0x00020000 insert begin OperationRegion (RMPC, PCI_Config, 0x10, 4)\n Field (RMPC, AnyAcc, NoLock, Preserve)\n {\n BAR1,32,\n }\n Device (PNLF)\n {\n // normal PNLF declares (note some of this probably not necessary)\n Name (_ADR, Zero)\n Name (_HID, EisaId ("APP0002"))\n Name (_CID, "backlight")\n Name (_UID, 10)\n Name (_STA, 0x0B)\n //define hardware register access for brightness\n // lower nibble of BAR1 is status bits and not part of the address\n OperationRegion (BRIT, SystemMemory, And(^BAR1, Not(0xF)), 0xe1184)\n Field (BRIT, AnyAcc, Lock, Preserve)\n {\n Offset(0x48250),\n LEV2, 32,\n LEVL, 32,\n Offset(0x70040),\n P0BL, 32,\n Offset(0xc8250),\n LEVW, 32,\n LEVX, 32,\n Offset(0xe1180),\n PCHL, 32,\n }\n // DEB1 special for setting KLVX at runtime...\n //Method (DEB1, 1, NotSerialized)\n //{\n // Store(Arg0, KLVX)\n //}\n // LMAX: use 0x710 to force OS X value\n // or use any arbitrary value\n // or use 0 to capture BIOS setting\n Name (LMAX, 0x710)\n // KMAX: defines the unscaled range in the _BCL table below\n Name (KMAX, 0x710)\n // KPCH: saved value for PCHL\n Name(KPCH, 0)\n // _INI deals with differences between native setting and desired\n Method (_INI, 0, NotSerialized)\n {\n // save value of PCHL for later\n Store(PCHL, KPCH)\n // determine LMAX to use\n If (LNot(LMAX)) { Store(ShiftRight(LEVX,16), LMAX) }\n If (LNot(LMAX)) { Store(KMAX, LMAX) }\n Store(ShiftLeft(LMAX,16), KLVX)\n If (LNotEqual(LMAX, KMAX))\n {\n // Scale all the values in _BCL to the PWM max in use\n Store(0, Local0)\n While (LLess(Local0, SizeOf(_BCL)))\n {\n Store(DerefOf(Index(_BCL,Local0)), Local1)\n Divide(Multiply(Local1,LMAX), KMAX,, Local1)\n Store(Local1, Index(_BCL,Local0))\n Increment(Local0)\n }\n // Also scale XRGL and XRGH values\n Divide(Multiply(XRGL,LMAX), KMAX,, XRGL)\n Divide(Multiply(XRGH,LMAX), KMAX,, XRGH)\n }\n // adjust values to desired LMAX\n Store(ShiftRight(LEVX,16), Local1)\n If (LNotEqual(Local1, LMAX))\n {\n Store(LEVL, Local0)\n If (LOr(LNot(Local0),LNot(Local1))) { Store(LMAX, Local0) Store(LMAX, Local1) }\n Divide(Multiply(Local0,LMAX), Local1,, Local0)\n //REVIEW: wait for vblank before setting new PWM config\n //Store(P0BL, Local7)\n //While (LEqual (P0BL, Local7)) {}\n If (LGreater(LEVL, LMAX))\n { Store(KLVX, LEVX) Store(Local0, LEVL) }\n Else\n { Store(Local0, LEVL) Store(KLVX, LEVX) }\n }\n }\n // _BCM/_BQC: set/get for brightness level\n Method (_BCM, 1, NotSerialized)\n {\n // initialize for consistent backlight level before/after sleep\n If (LNotEqual(PCHL, KPCH)) { Store(KPCH, PCHL) }\n If (LNotEqual(LEVW, 0x80000000)) { Store (0x80000000, LEVW) }\n If (LNotEqual(LEVX, KLVX)) { Store (KLVX, LEVX) }\n // store new backlight level\n Store(Match(_BCL, MGE, Arg0, MTR, 0, 2), Local0)\n If (LEqual(Local0, Ones)) { Subtract(SizeOf(_BCL), 1, Local0) }\n If (LNotEqual(LEV2, 0x80000000)) { Store(0x80000000, LEV2) }\n Store(DerefOf(Index(_BCL, Local0)), LEVL)\n }\n Method (_BQC, 0, NotSerialized)\n {\n Store(Match(_BCL, MGE, LEVL, MTR, 0, 2), Local0)\n If (LEqual(Local0, Ones)) { Subtract(SizeOf(_BCL), 1, Local0) }\n Return(DerefOf(Index(_BCL, Local0)))\n }\n Method (_DOS, 1, NotSerialized)\n {\n // Note: Some systems have this defined in DSDT, so uncomment\n // the next line if that is the case.\n //External(^^_DOS, MethodObj)\n ^^_DOS(Arg0)\n }\n // extended _BCM/_BQC for setting "in between" levels\n Method (XBCM, 1, NotSerialized)\n {\n // initialize for consistent backlight level before/after sleep\n If (LNotEqual(PCHL, KPCH)) { Store(KPCH, PCHL) }\n If (LNotEqual(LEVW, 0x80000000)) { Store (0x80000000, LEVW) }\n If (LNotEqual(LEVX, KLVX)) { Store (KLVX, LEVX) }\n // store new backlight level\n If (LGreater(Arg0, XRGH)) { Store(XRGH, Arg0) }\n If (LAnd(Arg0, LLess(Arg0, XRGL))) { Store(XRGL, Arg0) }\n If (LNotEqual(LEV2, 0x80000000)) { Store(0x80000000, LEV2) } \n Store(Arg0, LEVL)\n }\n Method (XBQC, 0, NotSerialized)\n {\n Store(LEVL, Local0)\n If (LGreater(Local0, XRGH)) { Store(XRGH, Local0) }\n If (LAnd(Local0, LLess(Local0, XRGL))) { Store(XRGL, Local0) }\n Return(Local0)\n }\n // Use XOPT=1 to disable smooth transitions\n Name (XOPT, Zero)\n // XRGL/XRGH: defines the valid range\n Name (XRGL, 40)\n Name (XRGH, 1808)\n // KLVX is initialization value for LEVX\n Name (KLVX, 0x7100000)\n // _BCL: returns list of valid brightness levels\n // first two entries describe ac/battery power levels\n Name (_BCL, Package()\n {\n 1808,\n 479,\n 0,\n 53, 55, 57, 59,\n 62, 66, 71, 77,\n 83, 91, 99, 108,\n 119, 130, 142, 154,\n 168, 183, 198, 214,\n 232, 250, 269, 289,\n 309, 331, 354, 377,\n 401, 426, 453, 479,\n 507, 536, 566, 596,\n 627, 660, 693, 727,\n 762, 797, 834, 872,\n 910, 949, 990, 1031,\n 1073, 1115, 1159, 1204,\n 1249, 1296, 1343, 1391,\n 1440, 1490, 1541, 1592,\n 1645, 1698, 1753, 1808,\n })\n }\n end;  
       
      It's done! Now go brush your teeth!
       
       
      To do list
       
      - Turn AppleHDADisabler in CloverEFI path.
      - Fix FN keyboard keys.
      - Turn Battery DSDT patch in CloverEFI path.
      - Test Cardreader.
      - Test USB3 port.
       
       
      And last but not least
       
      I would like to thank the following community members, by making these dream possible:
      @crushers, @snatch, @apianti, @blackosx, @blusseau, @dmazar, @slice2009, @autumnrain, @phpdev32, @EMlyDinEsH, @RehabMan, @Scellow, @mitch_de, @Shailua, @Andy Vandijck, @maxfierke, @ArturXXX and all others members involved directly or indirectly.
       
       
      EFI.zip
    • By ludufre
      Installing macOS Catalina on Lenovo ThinkPad L440

       
      There are two version of this laptop:
      - 20AS = Chipset QM87, without Express Card (mine).
      - 20AT = Chipset HM86, with Express Card.
      I strong believe is the same thing...
       

      Changelog:
       
      11/08/2019 20:30h GMT-0
      - Added instructions to swap Command with Option keys in VoodooPS2Controller.kext.
      - Added additional FileVault 2 UEFI drivers be more practical.
       
      10/30/2019 01:42h GMT-0
      - Added 10.15.1 update instructions.
      - Replaced AppleALC.kext with VoodooHDA.kext
      - No more issues after sleep or misconfiguration with jack sense.
       
      10/29/2019 18:18h GMT-0
      - Replaced the config.plist with AppleIntelCPUPM = true.
       
      10/27/2019 05:37h GMT-0
      - Replaced the DW1560 wireless card with BCM94360CS2.
       
      10/20/2019 20:47h GMT-0
      - Removed AppleBacklightFixup.kext.
      - WhateaverGreen now implements backlight since 1.2.5.
       
      10/20/2019 18:10h GMT-0
      - First version.
       
      What works and what does not
       
      - Processor: Intel Core i5-4300M ->  Work. All SpeedStep stages.
      - Video Card: Intel HD4600 ->  Work. QE/CI and Metal.
      - Chipset: Intel QM87 ->  Work.
      - Mini DisplayPort ->  Work. But no audio, yet.
      - VGA ->  Not work. Normal.
      - Audio: ALC292 ->  Work.
      - WiFi/Bluetooth: Intel AC 7260 ->  Not work. Replaced with DW1560 BCM94360CS2 (need whitelist removal).
      - Ethernet: Intel I217-LM ->  Work.
      - Card Reader: Realtek RTS5227 ->  Not work.
      - Keyboard and Touchpad ->  Work.
      - Webcam ->  Work.
      - Fingerprint Reader ->  Not work. Normal.
      - USB3.0 ->  Work.
      - Sleep ->  Work.
      - Airdrop, Handoff and Continuity ->  Work after replaced wireless.
      - Instant Hotspot ->  Not work.
       
       
      Extras
       
      - FullHD 1920x1080 display upgrade: 
      Replaced with AU Optronics B140HAN01.1 30pin eDP (B140HAN01.2 and B140HAN01.3 also compatible).
      Apparently same screen as Dell Latitude E6440, E7440, Lenovo Ideapad U430 and E129.
       
      - CPU upgrade:
      Replaced the stock Intel Core i5 4300M 2.6Ghz (3.3Ghz turbo) 6M cache with Intel Core i7 4700MQ 2.4Ghz (3.4Ghz turbo) 6MB.
      I initially had problems with overheating. The processor ran at full load above 90 degrees.
      After using a quality thermal paste I can work between 70 and 80 degrees.
      Acceptable taking into consideration that the new processor has 47TDP versus 37TDP which is recommended.
      I also had no problem consuming the battery while charging. The original 65W source seems to have figured out.
       
      - Touchpad upgrade:
      Replaced the stock with T460 touchpad.
      This is serious: you have to do it! It should be stock. Touchpad with precision and absurd quality!
      Just do it!
       
      - RAM upgrade:
      16GB (2x8GB). No mistery here. Just upgade.
       
      - Wireless upgrade:
      Previously I have the DW1560 working almost perfectly, now replaced with BCM94360CS2 that is full native supported. 
      More info below.
       
      Todo
       
      - Make DP audio work.
      - Make Card Reader work.
      - Make trackpad appear in System Preferences
      - Make Instant Hotspot work.
       
       
      What you need to install

      - Running install of macOS
      - One USB flash drive of 8GB or bigger
      - macOS Catalina install app
      - Clover EFI
      - Clover Configurator
      - Some KEXTs and SSDT patches


      How create create the install flash drive
       
      Prepare install flash drive

      Format the flash drive with GUID partition mapping and name it "Install".

      - Open Disk Utility.
      - Click in View, then "Show All Devices".
      - Select the destination flash drive, then Erase.
      - Name: Install, Format: Mac OS Extended (Journaled) and Scheme: GUID Partition Map
       
      Create install flash drive

      Open terminal and run this command:
      sudo /Applications/Install\ macOS\ Catalina.app/Contents/Resources/createinstallmedia --volume /Volumes/Install --nointeraction This will take about 30 minutes.
       


      Install bootloader

      Download the CloverEFI from official repository (used 5097) and install only with these options on "Install macOS Catalina":
       
      - Install for UEFI booting only
      - Install Clover in the ESP
      - UEFI Drivers - Recommended Drivers - AudioDxe (Just to have nice sound on boot)
      - UEFI Drivers - Recommended Drivers - FSInject (I still don't know if it's really necessary)
      - UEFI Drivers - File System drivers - ApfsDriverLoader (Support to APFS partitions)
      - UEFI Drivers - File System drivers - VBoxHfs (Support HFS/HFS+ partitions)
      - UEFI Drivers - Memory fix drivers - AptioMemoryFix (Fix the memory management of de UEFI/BIOS)
       
      FileVault 2
       
      If you plan to use FileVault 2, you need to download additional drivers, since what comes with Clover is not up to date and use VirtualSMC instead of FakeSMC.
      Follow instructions bellow:
       
      From current Clover installation, check these options to USB keyboard/mouse work on password screen:
      - UEFI Drivers - Human Interface Devices - UsbKbDxe
      - UEFI Drivers - Human Interface Devices - UsbMouseDxe
       
      After Clover install will be created a partition named EFI and mounted in Desktop. Usually the path is /Volumes/EFI/.
       
      Download the versions 2.1.0 and 2.0.9 of AppleSupportPkg from: https://github.com/acidanthera/AppleSupportPkg/releases
      We need the last version of AppleGenericInput.efi that is inside 2.1.0 and last version of AppleUiSupport.efi that is inside 2.0.9.
      OR download attached bellow.
       
      Put in /Volumes/EFI/EFI/CLOVER/drivers/UEFI/
       
      That's it! FileVault 2 will work without problems.
       
       

       
       
      Make things works
       
      After Clover install will be created a partition named EFI and mounted in Desktop. Usually the path is /Volumes/EFI/.
       
      - Replace the /Volumes/EFI/EFI/CLOVER/config.plist with mine attached below
      - Put SSDT-L440.aml attached below in /Volumes/EFI/EFI/CLOVER/ACPI/patched/
       
      Generate your Serial, MLB and SmUUID
       
      - Open the replaced config.plist with Clover Configurator (used 5.6.2.0)
      - Go to SMBIOS, click few times in "Generate New" in Serial Number and SmUUID.
       
      Copy the Clover Configurator to flash drive because you will need later.
       
      Download those Kexts and put in /EFI/CLOVER/kexts/Other/
       
      - Download the VirtualSMC from here. I used all Kexts and UEFI driver (put VirutalSmc.efi inside /Volumes/EFI/EFI/drivers/UEFI/) from version 1.0.8 (If you followed the steps to enable FileVault 2 above, skip to the next item).
      - Download the Lilu.kext from here. I used the version 1.3.8.
      - Download the VoodooPS2Controller.kext from here. I used version 2.0.4.
      - Download the IntelMausiEthernet.kext from here. I used the version 2.5.0.
      - Download the VoodooHDA.kext from here. I used the version 2.9.2. (Need to turn up the volume on Info.plist, more instructions below)
      - Download the WhateverGreen.kext from here. I used the version 1.3.3.
      - Download the USBInjectAll.kext from here. I used the version 2018-1108.
       
      Important! If you are coming from my previous Mojave guide, please note that I am using some kexts from other repositories / authors.
       
       
      Audio volume adjustment
       
      - Open the Info.plist inside VoodooHDA.kext/Contents/ with TextEdit.app or any text editor of your choice.
      - Change:
      <key>PCM</key> <integer>90</integer> to:
      <key>PCM</key> <integer>140</integer> Or, download the versions 2.9.2 attached bellow.
       
       
      Keyboard swap Command with Option (optional)
       
      - If you prefer, you can swap Command and Option keys, to map Win Key - Command and Alt - Option.
      - Change /Volumes/EFI/EFI/CLOVER/OEM/S400CA/UEFI/kexts/10.15/VoodooPS2Controller.kext/Contents/PlugIns/VoodooPS2Keyboard.kext/Contents/Info.plist:
      <key>Swap command and option</key> <true/> to:
      <key>Swap command and option</key> <false/> Or, download the version 2.0.4 already adjusted attached bellow.
       
       
      Wifi and Bluetooth (BCM94360CS2 + M2 NGFF adapter)
       
      Recently I replaced the DW1560 with BCM94360CS2. Now I have fully wireless and bluetooth working (including Instant Hotspot) without any kexts.
       
      See: 
       
       
      Wifi and Bluetooth (DW1560 / BCM94352Z)
       
      Unfortunately, some notebook manufacturers are currently blocking the replacement of wireless cards. They want you to only use the models sold by them. And of course, none of them from Lenovo for this notebook model is compatible with MacOS.
       
      If you try to start with an unauthorized wifi card for them, you will receive a screen error:
      1802: Unauthorized network card is plugged in - Power off and remove the network card. Since this check is done directly in the BIOS, the only solution is to modify it.
      But since nothing is easy in this life, there is one small big problem:
      - The BIOS update procedure does not allow you to use modded files as it used to be.
      - You will need to physically reach your BIOS on the motherboard and make use of a USB BIOS reader/writer.
       
      So what you need to do:
      1. Disassembly your laptop;
      2. Dump your BIOS with an USB BIOS reader with SOIC8 clip (to not desolder from the motherboard);
      3. Patch it (Ask on UEFI hack forums over there to someone patch for you. Every dump is unique, so mine don't work to you.);
      4. Fix RSA signature;
      5. Reflash BIOS;
      6. Replace wireless card;
      7. Remount your laptop;
      8. Done.
       
      To fix a Modded BIOS to remove the 5 beeps on boot, you need this guide: https://www.insanelymac.com/forum/topic/337333-guide-fix-insyde-h2o-bios-signature-5-beeps-on-lenovo (traduzido: pt-BR)
       
       
      After replaced the wireless card. Download those Kexts and put in /Volumes/EFI/EFI/CLOVER/kexts/10.15/
       
      - Download the AirportBrcmFixup.kext from here. I used the version 2.0.3. (To enable Wireless)
      - Download the BrcmBluetoothInjector.kext, BrcmFirmwareRepo.kext and BrcmPatchRAM3.kext from here. I used the version 2019-10-17. (To enable Bluetooth)
      - Download the BT4LEContinuityFixup.kext from here. I used the version 1.1.4. (To enable Handoff and Continuity)
       
      Keep in mind that the bluetooth kexts are currently in development and the official releases will be available in future in the repository: https://github.com/acidanthera/BrcmPatchRAM/releases
       
       
      Now you can start the installation without problem (I guess).
       
       
      How install
       
      UEFI Setup Configuration and Installation

      UEFI configuration
       
      My BIOS is the latest: 1.93 (J4ET93WW) 

      - Shutdown and insert the flash drive.
      - Power on with F1 pressed to enter BIOS setup.
      - Change value: Config - Intel(R) AMT - Intel(R) AMT Control to DISABLED
      - Change value: Security - Security Chip to DISABLED
      - Change value: Security - Anti-Theft - Intel(R) AT Module Activation to DISABLED
      - Change value: Security - Anti-Theft - Computrace to DISABLED
      - Change value: Security - Secure Boot to DISABLED
      - Change value: Startup - UEFI/Legacy Boot to BOTH, Legacy First and CSM Support = Yes
      - Save & Exit Setup (F10)
       
      - Now, hold the F12
      - In the list, select your flash drive.
      - Choose the flash drive (white icon).
       
      The installer will start. 
      
      Format destination disk

      Format the disk with GUID partition mapping and name it "Macintosh".

      - Select Disk Utility in the list, then press Continue.
      - Click in View, then "Show All Devices".
      - Select the destination Disk, then Erase.
      - Name: HD, Format: APFS and Scheme: GUID Partition Map

      Close Disk Utility.
      
      Select "Install macOS", then Continue.
      Follow instructions in screen.

      After install
       
      After first part install the system will reboot. Maybe you have to press F12 again and select the flash drive.
       
      Choose the internal disk (gray hdd icon) if not already selected.

      The second part of the installation will begin. This will take 16 minutes.

       

      Post installation
       
      When the second part of install finish, the system will reboot again.

      After performing the user initial setup and go to the desktop, you need to make the system disk bootable.

      Open the Clover Configurator from flash drive that you copied before.

      Mount and open the flash drive EFI partition. (Inside Clover Configurator, Mount EFI -> Select flash drive in Efi Partitions list -> Mount Partition -> Open Partition)
       
      Copy the EFI folder to desktop.
       
      Go back to Clover Configurator, unmount the EFI partition of the flash drive and mount and open the EFI partition of internal disk.
       
      Move the EFI folder from Desktop to EFI partition of the internal disk.
       
      Eject the flash drive.
       
      Move all Kexts from EFI partition of internal disk to /Library/Extensions and make kext cache, with those commands in Terminal:
      sudo mv -R /Volumes/EFI/EFI/CLOVER/kexts/10.15/* /Library/Extensions/ sudo chmod -R 755 /Library/Extensions sudo chown -R root:wheel /Library/Extensions sudo kextcache -i / Restart the system.
       
       
      It's done!
       
       
      System Updates
       
      10.15.1
       
      Updated without changing or updating anything.
       

       
       
       

      And last but not least

      I would like to thank the following community members, by making these dream possible:
      @crushers, @snatch, @apianti, @blackosx, @blusseau, @dmazar, @slice2009, @autumnrain, @phpdev32, @EMlyDinEsH, @RehabMan, @Scellow, @mitch_de, @Shailua, @Andy Vandijck, @maxfierke, @ArturXXX, @LexHimself, @brumas, @"Sniki", @Mieze, @headkaze and all others members involved directly or indirectly.
       
       
      Attachments
       
       
      SSDT-L440.aml
      config.plist
      VoodooHDA.kext.zip
      VoodooPS2Controller.kext.zip
      Filevault 2 additional drivers.zip
    • By zkingtut
      Hello Everyone ,,
       
      I'd  like to share with you my experience with Lenovo ThinkPad P50 ( EFI , and Installation Process with some tips ) Hopefully to be useful for anyone who own Lenovo ThinkPad P50 
       
      Before start I want to show you my device specs , and I'm  sure 99% this will work too with any P50 have different spec. specially Intel i7 CPUs:
       
      - Intel Xeon E-3 1535 v5 ( P530 Intel HD Graphics )
      - 32 GB RAM
      - 256 GB SK Hynix Nvme SSD pc401 hfs256gd9tng-62a0a - for Mac OS  ( be careful not all nvme ssd are compatible)
      - 256 GB Samsung Evo 850 SSD - for Windows 
      - 4K Screen 
      - Nvidia Quadro M2000M 4 GB ( Useless - Disabled )
      - Intel WiFi Card ( Should be change to a compatible Broadcom one )
       
      BIOS SETUP :
       
      I highly recommend this steps before going to BIOS SETUP according to my experience with this Laptop :
       
            *( Update your BIOS Firmware to the latest one using windows )
       
            *( Remove Battery , Open the back cover and unplug the small CMOS BATTERY for about  4~5 minutes and put everything back again )
       
             * ( Remove any SSD HDD Nvme disks , USB , DisplayPort , Dock .. etc during installation, keep only the target Disk )
       
      -------------------------------------------
      Now Power your PC and Press F1 to enter the BIOS SETUP
       
         - Reset BIOS to its defaults
         - Adjust Date and Time 
         - Config ----> Network ---> Wake Up on Lan ( AC Only )
                                                         Network Stack ( Disabled )
       
        - USB ----> USB UEFI support  ( Enabled)
       
        - Display ------> Total Graphic Memory (256 MB)
                                     Graphic Device ( Hybrid)
       
        - RAID -----> Disabled
       
        - Security -----> Security Chip Selection ( Discrete TPM )
                                     Secure BOOT ( Disabled )
                                     Intel SGX Control ( Software Control )
       
        - Start Up ------>BOOT Priority order ( USB HDD - Mac OS Disk - Windows - and so on ....... with this order )
                                     UEFI/Legacy ( UEFI Only )
                                     CSM Support  ( NO )
      ----------------------------------------------------------------------------------------------------------------------------------
       
      **   F1 to Enter Bios - F12 for Boot Menu
      ***   Delete the EFI Folder in your Installation USB and replace it with the Attached one 
      ****   Generate new serial for SMBIOS MacBook Pro 13.1
      *****    If your CPU is XEON then go to Config.plist CPU Section and Add 0x05A5 under Type ( Fix for Unknown CPU )
      ****** You can delete boot-args "brcmfx=1 & brcmfx-driver=#a" if you want , I used it in my case with 1820A card to fix wifi issue
      ******    After you successfully installed OS , now Copy the same EFI Folder to your main EFI Boot Disk Partition 
      *******    Now install all the attached KEXTS to "Library / Extensions"  using Hackintool.app or by any method and rebuild cache and repair permissions
      ********    Check and compare the KEXTS in Library/ Extensions and Delete the repeated ones from Clover / Kexts / Others ( Important don't duplicate the same kexts here and there )
       
      FYI : LiluFriend.kext include ( Lilu , WhatEverGreen, AppleALC , AirportBrcmFixup ) All In One 
       
       
       
      You are Done 
      ---------------------------------------------------------------------------------------------------------------------------------
       
      What is working :
       
      - 4K Intel HD P530 2048 MB 
      - AUDIO
      - CAMERA 
      - ALL USB 3 PORTS , NO THUNDERBOLTS 
      - Keyboard and TouchPad 
      - Battery indicator 
      - Display Brightness 
      - Sleep 
      - DSDT has been patched , USB Ports modified only to MacBookPro 13.1
       
                   See the Screen Shot 
       
      Important Notice For Future OS Updates Installations : 
       
      To avoid Kernel Panic during install any future updates process please remove ( FakeSMC.kext and LiluFriend.kext ) from Library/Extensions directory to Clover / Kexts / Others .
      After update process finish put them back to Library/Extensions and delete them from clover . I hope this is clear enough
      ---------------------------------------------------------------------------------------------------------------------------------
       
      Happy Hackintosh , Let me know if you have any issue or difficulties during installation or later , I will try to help you
       
       
      EDITED :
       
      Catalina 10.15.1 Update :
                     ( download the attached files for Catalina 10.15.1 if you like to update Mojave or to do a clean fresh update  )
       
       
      EFI.zip
      kexts.zip

    • By ludufre
      Installing macOS Mojave on Lenovo ThinkPad L440

       
      New Catalina Installation Guide: 
       
       
      There are two version of this laptop:
      - 20AS = Chipset QM87, without Express Card (mine).
      - 20AT = Chipset HM86, with Express Card.
      I strong believe is the same thing...
       

      Changelog:
       
      10/20/2019 20:00h GMT-0
      - Added info about update 10.14.16.
      - Added link do Catalina guide. 
       
      07/30/2019 14:56h GMT-0
      - Fixed typo in credits. Thanks @"Sniki"
       
      06/09/2019 14:16h GMT-0
      - Added missing parts in the post-install step. 
       
      06/04/2019 17:19h GMT-0
      - Updated Clover link. 
       
      06/02/2019 18:08h GMT-0
      - Added info about update 10.14.5. 
       
      03/13/2019 13:15h GMT-0
      - Updated info about touchpad replacement and CPU and 4G LTE modem.
       
      02/05/2019 18:47h GMT-0
      - Updated info about CPU replacement and 4G LTE modem.
       
      02/04/2019 15:24h GMT-0
      - Sometimes the VoodooHDA.kext doesn't work.
      - Added AppleHDADisabler.kext to fix that (attached bellow).
       
      01/24/2019 14:42h GMT-0
      - Added more adjustments to use of VoodooHDA.
      - Updated VoodooHDA links to 2.9.1 official (without installer).
      - Changed PCM volume from 90 to 180 in Info.plist (attached modified VoodooHDA.kext bellow)
      - Updated SSDT-L440.aml (Removed HDEF and HDAU, not needed).
      - Updated config.plist (Changed to user Audio layout to 1).
       
      01/22/2019 20:47h GMT-0
      - I gave up on the AppleALC.
      - Headset does not work.
      - Now with VoodooHDA is perfect and the sound even louder.
       
      01/22/2019 14:37h GMT-0
      - Added info about update 10.14.3. 
       
      01/22/2019 13:46h GMT-0
      - Added link to BIOS reassing guide.
       
      01/20/2019 11:49h GMT-0
      - First version.
       
      What works and what does not
       
      - Processor: Intel Core i5-4300M ->  Work. All SpeedStep stages.
      - Video Card: Intel HD4600 ->  Work. QE/CI and Metal.
      - Chipset: Intel QM87 ->  Work.
      - Mini DisplayPort ->  Work. But no audio, yet.
      - VGA ->  Not work. Normal.
      - Audio: ALC292 ->  Work.
      - WiFi/Bluetooth: Intel AC 7260 ->  Not work. Replaced with DW1560 (need whitelist removal).
      - Ethernet: Intel I217-LM ->  Work.
      - Card Reader: Realtek RTS5227 ->  Not work.
      - Keyboard and Touchpad ->  Work.
      - Webcam ->  Work.
      - Fingerprint Reader ->  Not work. Normal.
      - USB3.0 ->  Work.
      - Sleep ->  Work.
      - Airdrop, Handoff, Instant Hotspot and Continuity ->  Work after replaced wireless.
       
       
      Extras
       
      - FullHD 1920x1080 display upgrade: 
      Replaced with AU Optronics B140HAN01.1 30pin eDP (B140HAN01.2 and B140HAN01.3 also compatible).
      Apparently same screen as Dell Latitude E6440, E7440, Lenovo Ideapad U430 and E129.
       
      - CPU upgrade:
      Replaced the stock Intel Core i5 4300M 2.6Ghz (3.3Ghz turbo) 6M cache with Intel Core i7 4700MQ 2.4Ghz (3.4Ghz turbo) 6MB.
      I initially had problems with overheating. The processor ran at full load above 90 degrees.
      After using a quality thermal paste I can work between 70 and 80 degrees.
      Acceptable taking into consideration that the new processor has 47TDP versus 37TDP which is recommended.
      I also had no problem consuming the battery while charging. The original 65W source seems to have figured out.
       
      - Touchpad upgrade:
      Replaced the stock with T460 touchpad.
      This is serious: you have to do it! It should be stock. Touchpad with precision and absurd quality!
      Just do it!
       
      - RAM upgrade:
      No mistery here. Just upgade.
       
       
      Todo
       
      - Make DP audio work.
      - Make Card Reader work.
      - Upgrade CPU to i7-4712MQ (Ordered. It's on the way) Done, but received i7-4700MQ (47w TDP, with good paste I have no overheating)
      - Replace touchpad with T460 model (Ordered. It's on the way) Done. Sensitivity and perception of quality much better. I recommend 100%!
      - Sierra Gobi5000 4G LTE modem EM7355 (Ordered. It's on the way. I hope works. ) Done, but not work. Recognize but not connect. I already gave up...
      - Upgrade to 16GB RAM Done
      - Make trackpad appear in System Preferences
       
       
      What you need to install

      - Running install of macOS
      - One USB flash drive of 8GB or bigger
      - macOS Mojave install app
      - Clover EFI
      - Clover Configurator
      - Some KEXTs and SSDT patches


      How create create the install flash drive
       
      Prepare install flash drive

      Format the flash drive with GUID partition mapping and name it "Install".

      - Open Disk Utility.
      - Click in View, then "Show All Devices".
      - Select the destination flash drive, then Erase.
      - Name: Install, Format: Mac OS Extended (Journaled) and Scheme: GUID Partition Map
       
      Create install flash drive

      Open terminal and run this command:
      sudo /Applications/Install\ macOS\ Mojave.app/Contents/Resources/createinstallmedia --volume /Volumes/Install --nointeraction This will take about 30 minutes.
       


      Install bootloader

      Download the CloverEFI from SourceForge (used 4934) and install with this options on "Install macOS Mojave":
       
      - Install for UEFI booting only
      - Install Clover in the ESP
      - UEFI Drivers - ApfsDriverLoader-64
      - UEFI Drivers - AptioMemoryFix-64


       
       
      Make things works

      Will be created a partition named EFI and mounted in Desktop.
      - Replace the /Volumes/EFI/CLOVER/config.plist with mine attached below
                    If you have modded BIOS with Advanced Menu and enabled 128MB DRAM-prealloc use 128MB_DRAM-prealloc_config.plist.zip
                    If no, then use 32MB_DRAM-prealloc_config.plist.zip
      - Put SSDT-L440.aml attached below in /Volumes/EFI/CLOVER/ACPI/patched/
       
      Generate your Serial, MLB and SmUUID
       
      - Open the replaced config.plist with Clover Configurator (used 5.3.2.0)
      - Go to SMBIOS, click few times in "Generate New" in Serial Number and SmUUID.
       
      Download those Kexts and put in /EFI/CLOVER/kexts/Other/
       
      - Download the HWSensors 3 from here. I used the FakeSMC.kext, ACPIMonitor.kext and IntelCPUMonitor.kext inside of DMG version r196.
      - Download the VoodooPS2Controller.kext from here. I used version 2018-1008.
      - Download the IntelMausiEthernet.kext from here. I used the version 2018-1031.
      - Download the Lilu.kext from here. I used the version 1.3.6.
      - Download the VoodooHDA from here. I used the version 2.9.1 and patched the sound volume (attached below).
      - Download the WhateverGreen.kext from here. I used the version 1.2.9.
      - Download the AppleBacklightFixup.kext from here. I used the version 2018-1013.
      - Download the USBInjectAll.kext from here. I used the version 2018-1108.
      - Download the ACPIBatteryManager.kext from here. I used the version 2018-1005.
       
      - Download the VirtualSMC.kext from here. I used version 1.0.2. Replaced with FakeSMC of the HWSensors 3 r196 package.
      - Download the FakeSMC.kext from here. I used the version 2018-0915. Replaced with VirtualSMC.kext due 10.14.4 issues on update.
      - Download the AppleALC.kext from here. I used the version 1.3.4. Replaced with VoodooHDA.kext due mic not working.
       
       
      Wifi and Bluetooth (DW1560 / BCM94352Z)
       
      Unfortunately, some notebook manufacturers are currently blocking the replacement of wireless cards. They want you to only use the models sold by them. And of course, none of them from Lenovo for this notebook model is compatible with MacOS.
       
      If you try to start with an unauthorized wifi card for them, you will receive a screen error:
      1802: Unauthorized network card is plugged in - Power off and remove the network card. Since this check is done directly in the BIOS, the only solution is to modify it.
      But since nothing is easy in this life, there is one small big problem:
      - The BIOS update procedure does not allow you to use modded files as it used to be.
      - You will need to physically reach your BIOS on the motherboard and make use of a USB BIOS reader/writer.
       
      So what you need to do:
      1. Disassembly your laptop;
      2. Dump your BIOS with an USB BIOS reader with SOIC8 clip (to not desolder from the motherboard);
      3. Patch it (In addition to removing the whitelist, add the advanced menu);
      4. Fix RSA signature;
      5. Reflash BIOS;
      6. Replace wireless card;
      7. Remount your laptop;
      8. Done.
       
      Soon, I'll provide step by step in this process. Probably until end of this week.
      In the meantime, if you need to, send me your dump that I do steps 3 and 4 for you.
      I also add the Advanced Menu so you can increase to 128MB the DRAM-prealloc.
       
      To fix a Modded BIOS to remove the 5 beeps on boot, you need this guide: https://www.insanelymac.com/forum/topic/337333-guide-fix-insyde-h2o-bios-signature-5-beeps-on-lenovo (traduzido: pt-BR)
       
       
      After replaced the wireless card. Download those Kexts and put in /EFI/CLOVER/kexts/Other/
       
      - Download the AirportBrcmFixup.kext from here. I used the version 2.0.0.
      - Download the BrcmFirmwareRepo.kext and BrcmPatchRAM2.kext from here. I used the version 2018-0505.
      - Download the BT4LEContinuityFixup.kext from here. I used the version 1.1.2.
       
       
      Now you can start the instalation without problem (I guess).
       
       
      How install
       
      UEFI Setup Configuration and Installation

      UEFI configuration
       
      My BIOS is the latest: 1.93 (J4ET93WW) 

      - Shutdown and insert the flash drive.
      - Power on with F1 pressed to enter BIOS setup.
      - Change value: Config - Intel(R) AMT - Intel(R) AMT Control to DISABLED
      - Change value: Security - Security Chip to DISABLED
      - Change value: Security - Anti-Theft - Intel(R) AT Module Activation to DISABLED
      - Change value: Security - Anti-Theft - Computrace to DISABLED
      - Change value: Security - Secure Boot to DISABLED
      - Change value: Startup - UEFI/Legacy Boot to BOTH, Legacy First and CSM Support = Yes
      - Save & Exit Setup (F10)
       
      - Now, hold the F12
      - In the list, select your flash drive.
       
      The installer will start. 
      
      Format destination disk

      Format the disk with GUID partition mapping and name it "Macintosh".

      - Select Disk Utility in the list, then press Continue.
      - Click in View, then "Show All Devices".
      - Select the destination Disk, then Erase.
      - Name: HD, Format: APFS and Scheme: GUID Partition Map

      Close Disk Utility.
      
      Select "Install macOS", then Continue.
      Follow instructions in screen.

      After install

      After first part install the system will reboot. Maybe you have to press F12 again and select the flash drive.
      
      The second part of the installation will begin. This will take 16 minutes.
       

      Post installation

      Install bootloader
       
      When the second part of install finish, the system will reboot again.

      After performing the user initial setup and go to the desktop, you need to install Clover on internal disk.

      Open the Clover installer inside flash drive that you copied before.

      Use same options above but choose the system partition this time.

      Now you need to replace the EFI folder inside your destination disk EFI parittion, with EFI folder inside flash card EFI partition.

      If the flash drive EFI partition of your destination disk or flash drive is unmounted:
      Mount with terminal "sudo diskutil mount /dev/rdiskXs1". To know what X is, use "diskutil list", most likely is 0 for destination disk and 1 for flash drive.
       
      Then, eject the flash drive.
       
      Last step
       
      Move all Kexts from EFI partition to /Library/Extensions, with those commands in Terminal:
      sudo mv -R /Volumes/EFI/EFI/CLOVER/kexts/Other/* /Library/Extensions/ sudo chmod -R 755 /Library/Extensions sudo chown -R root:wheel /Library/Extensions sudo kextcache -i / Restart the system.
       
       
      It's done!
       
       
      Updates
       
      System update 10.14.3
       
      - Updated with success;
      - Everything works perfectly after reboot;
       

       
       
      System update 10.14.4
       
      - Updated Clover to 4910.
      - Updated Lilu.kext to 1.3.5 and WhateverGreen to 1.2.7.
      - After first reboot the update progress stoped with:
      GTrace synchronization point 4 Unsupported CPU Unsupported PCH hmm.. mismatch sizes: 3100 vs 20 It was still possible to start the previous installation, selecting "Macintosh" as opposed to "macOS Install" in Clover.
      So I created a flash drive with Clover 4910 and put only my config.xml, SSDT-L440.aml, the updated Lilu.kext and WhateverGreen.kext. And I decided to test VirtualSMC instead of FakeSMC.kext.
      With this I was able to install update 10.14.4. After installation I can boot normally, even with FakeSMC.kext that already in /Library/Extensions.
      I do not know what exactly happened, but now works everything like was previously.
       


       
       
      System update 10.14.5
       
      - Updated Clover to 4934.
      - Updated Lilu.kext to 1.3.6 and WhateverGreen to 1.2.9.
      - After first reboot the update progress stoped again (like 10.14.4 update) with:
      GTrace synchronization point 4 Unsupported CPU Unsupported PCH hmm.. mismatch sizes: 3100 vs 20 It was still possible to start the previous installation, selecting "Macintosh" as opposed to "macOS Install" in Clover.
      I decided to rollback to FakeSMC.kext but this time with the version of HWSensors 3. Link above.
      With this I was able to install update 10.14.5. After installation I can boot normally.
       

       
       
       
      System update 10.14.6
       
      - Updated Clover to 5097.
      - Updated Lilu.kext to 1.3.8 and WhateverGreen to 1.3.3.
      - Make system update.
       
       

      And last but not least

      I would like to thank the following community members, by making these dream possible:
      @crushers, @snatch, @apianti, @blackosx, @blusseau, @dmazar, @slice2009, @autumnrain, @phpdev32, @EMlyDinEsH, @RehabMan, @Scellow, @mitch_de, @Shailua, @Andy Vandijck, @maxfierke, @ArturXXX, @LexHimself, @brumas, @"Sniki" and all others members involved directly or indirectly.
       
       
      Attachments
      32MB_DRAM-prealloc_config.plist.zip
      128MB_DRAM-prealloc_config.plist.zip
      SSDT-L440.aml
      VoodooHDA.kext.zip
      AppleHDADisabler.kext.zip
×