Jump to content

Dell Latitude E6230 with i5-3340M/i7-3540M, HD4000 and 1366x768 LCD - El Capitan/Sierra/High Sierra/Mojave/Catalina/Big Sur/Monterey/Ventura


Hervé

Recommended Posts

  • Administrators

Last update: 06 Nov 2019

 

E6230_front.jpg E6230_sides.jpg

Specifications:

  • BIOS A11 A19 A20 with HDD set to AHCI mode
  • Intel QM77 (7 Series/C210) Express chipset
  • 2 motherboards used:
    • first, Intel dual-core Ivy Bridge i5-3340M 2.70GHz CPU (Turbo boost to 3.2GHz (2 cores) or 3.4GHz (1 core))
    • then, Intel dual-core Ivy Bridge i7-3540M 3.00GHz CPU (Turbo boost to 3.5GHz (2cores) or 3.7GHz (1core))
  • Integrated Intel HD4000 graphics (650MHz-1.25/1.30GHz) with 12.5" 1366x768 WLED LCD
  • 4GB 8GB DDR3L-1600 RAM
  • Intel 82579LM Gigabit Ethernet (PCI ven id 0x8086, dev id 0x1502)
  • IDT 92HD93 (Codec 76DF) High Def audio (PCI ven id 0x8086, dev id 0x1e20)
  • O2 Micro SD card reader (PCI ven id 0x1217, dev id 0x8221)
  • Internal-USB Broadcom-based (BCM20702A0) DW380 Bluetooth 4.0 module (PCI ven id 0x413c, dev id 0x8197)
  • Internal-USB Sonix Technology Co. webcam (PCI ven id 0x0c45, dev id 0x648b) (NB: some E6230 are fitted with Sonix dev id 0x6449 which is unsupported)
  • 2 x USB 3.0 ports (1 with power share)
  • 1 x combo eSATA + USB 2.0 port
  • 1 x VGA output
  • 1 x HDMI output
  • 1 x headset jack port
  • 1 x 34mm ExpressCard slot
  • 1 x optional fingerprint reader

 

E6230:~ admin$ lspci -nn

pcilib: 0000:00:1f.3 64-bit device address ignored.

pcilib: 0000:00:1b.0 64-bit device address ignored.

pcilib: 0000:00:16.0 64-bit device address ignored.

pcilib: 0000:00:14.0 64-bit device address ignored.

pcilib: 0000:00:02.0 64-bit device address ignored.

pcilib: 0000:00:02.0 64-bit device address ignored.

00:00.0 Host bridge [0600]: Intel Corporation 3rd Gen Core processor DRAM Controller [8086:0154] (rev 09)

00:02.0 VGA compatible controller [0300]: Intel Corporation 3rd Gen Core processor Graphics Controller [8086:0166] (rev 09)

00:14.0 USB controller [0c03]: Intel Corporation 7 Series/C210 Series Chipset Family USB xHCI Host Controller [8086:1e31] (rev 04)

00:16.0 Communication controller [0780]: Intel Corporation 7 Series/C210 Series Chipset Family MEI Controller #1 [8086:1e3a] (rev 04)

00:19.0 Ethernet controller [0200]: Intel Corporation 82579LM Gigabit Network Connection [8086:1502] (rev 04)

00:1a.0 USB controller [0c03]: Intel Corporation 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #2 [8086:1e2d] (rev 04)

00:1b.0 Audio device [0403]: Intel Corporation 7 Series/C210 Series Chipset Family High Definition Audio Controller [8086:1e20] (rev 04)

00:1c.0 PCI bridge [0604]: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 1 [8086:1e10] (rev c4)

00:1c.1 PCI bridge [0604]: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 2 [8086:1e12] (rev c4)

00:1c.2 PCI bridge [0604]: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 3 [8086:1e14] (rev c4)

00:1c.3 PCI bridge [0604]: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 4 [8086:1e16] (rev c4)

00:1c.5 PCI bridge [0604]: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 6 [8086:1e1a] (rev c4)

00:1d.0 USB controller [0c03]: Intel Corporation 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #1 [8086:1e26] (rev 04)

00:1f.0 ISA bridge [0601]: Intel Corporation QM77 Express Chipset LPC Controller [8086:1e55] (rev 04)

00:1f.2 SATA controller [0106]: Intel Corporation 7 Series Chipset Family 6-port SATA Controller [AHCI mode] [8086:1e03] (rev 04)

00:1f.3 SMBus [0c05]: Intel Corporation 7 Series/C210 Series Chipset Family SMBus Controller [8086:1e22] (rev 04)

02:00.0 Network controller [0280]: Qualcomm Atheros AR928X Wireless Network Adapter (PCI-Express) [168c:002a] (rev 01)

0b:00.0 SD Host controller [0805]: O2 Micro, Inc. OZ600FJ0/OZ900FJ0/OZ600FJS SD/MMC Card Reader Controller [1217:8221] (rev 05)

E6230:~ admin$ 

 

For recommended BIOS settings, see here.

  • Like 4
Link to comment
Share on other sites

  • Administrators

Last update: 09 Feb 2017
 
Target OS X release:

  • El Capitan 10.11.x

 

This is an Enoch-based installation using the well-known/well-documented vanilla manual method detailed below:
 
E6230_HD4000_i5-3340M-10.11.3.jpg
E6230_EC.jpg E6230_SpeedStep.jpg
E6230_HDMI-Video.jpg E6230_HDMI-Audio.jpg
E6230_SysProfiler_GPU.jpg E6230_SysProfiler_USB.jpg
P-States.jpg

Working:

  • full QE/CI with HD4000 graphics (with DSDT patch for Capri FB #3)
  • HDMI output OOB
  • DVI + DP output OOB through port replicator E-Port K07A002
  • full audio, including jack microphone input and headset output (with patched AppleHDA kext)
  • HDMI audio (with patched AppleIntelFrameBufferCapri kext)
  • built-in Gigabit Ethernet (with AppleIntelE1000e kext v3.1.0)
  • DW380 bluetooth (with Broadcom BT transport kext patch)
  • native speedstep (with tuned Kozlek's FakeSMC (SMC keys=2.5f9/SMC compatible=smc-huronriver) and MBA5,2 SMBIOS profile)
  • Turbo boost to x34 3.4GHz (getting CPU multipliers x12/13/14/15/16/17/18/19/20/21/22/23/25/26/27 + Turbo multipliers x28/29/30/31/32/33/34 according to Pike R Alpha's AppleIntelInfo output)
  • sleep & wake (with DSDT patch for EHCx/XHC/HDEF/GLAN _PRW; sleeps Ok on Energy Savings settings/Fn-F1/Apple menu option/power button/lid closure; wakes Ok through lid opening/power button
  • wireless with any compatible card
  • battery management and monitoring (with ACPIBatteryManager kext)
  • SD card reader (with DSDT patch for compatibility with Apple's default reader)
  • integrated webcam OOB
  • keyboard backlight control OOB (for backlit models)
  • left combo eSATA+USB2.0 + right USB3.0 ports OOB
  • Express card slot OOB

 

Not Working:

  • VGA output unsupported

 

Not tested:

  • SmartCard reader
  • fingerprint scanner

 

GeekBench v2.4.4 (32bit) gives a good 6900+ rating:
E6230_i5-3340M_4Go_GB-32bit.jpg


1) 10.11 USB installer creation

  • Double click on InstallESD.dmg found in Install OS X El Capitan.app/Contents/SharedSupport to mount the dmg image
  • Then mount BaseSystem.dmg (hidden file)
open /Volumes/OS\ X\ Install\ ESD/BaseSystem.dmg
  • Use Disk Utility to restore the contents of BaseSystem.dmg on a USB key (or HDD partition) formatted Mac OS extended (journaled).
  • Remove link for Packages in folder System/Installation of your USB key
rm /Volumes/OS\ X\ Base\ System\ 1/System/Installation/Packages
  • Copy folder Packages located in InstallESD.dmg to folder System/Installation of your USB key
cp -R /Volumes/OS\ X\ Install\ ESD/Packages /Volumes/OS\ X\ Base\ System\ 1/System/Installation
  • Copy the 2 hidden files (BaseSystem.dmg & Basesystem.chunklist) of InstallESD.dmg to the root of your USB key
cp /Volumes/OS\ X\ Install\ ESD/BaseSystem.* /Volumes/OS\ X\ Base\ System\ 1
  • Install Enoch r2795 r2848 (latest at time of update) on the USB installer with all default settings
  • Copy the above Enoch r2795 r2848 installer package to the root of the USB installer
  • Copy the following (unzipped/extracted) E6230 bootpack to the root of the USB installer
  • If your E6230 is fitted with a different CPU that the i5-3340M, delete the SSDT.aml table from the bootpack; you'll generate the suitable one later.
  • Create a folder called Kernels under /System/Library (normally, it won't exist at that stage)
  • Copy the appropriate El Capitan kernel to /System/Library/Kernels. Copies of the kernels are available here

 

2) 10.11 installation

  • Boot the 10.11 USB installer (it may take a little time to kick in) with -f -v boot flags
  • At OS X installer main screen, open up Disk Utility in Utilities menu
  • If applicable, partition your target disk in GPT/GUID scheme
  • Create your target 10.11 partition and format it as OS X Extended (Journaled)
  • Close Disk Utility and proceed with OS X 10.11 installation as usual

 

3) Post-installation fine-tuning

  • Reboot the 10.11 USB installer (it may take a little time to kick in)
  • At OS X installer main screen, open up Terminal in Utilities menu
  • Verify CoreStorage installation disk mode
diskutil list
  • If CoreStorage activated for Fusion drive (i.e. presence of a logical disk), revert to legacy mode
diskutil corestorage revert <device> (for example: /dev/disk1)
  • Identify your freshly made 10.11 partition name
df
  • Copy the Extra folder from the USB installer to your identified 10.11 disk partition
cp -R /Extra /Volumes/<your fresly made 10.11 partition name> (for example: cp -R /Extra /Volumes/OSX_disk)
  • Reboot the 10.11 USB installer, press a key at delay bar (or F8) to interrupt boor process and select your freshly made 10.11 disk partition. You'll then be booting El Capitan for the 1st time
  • Complete the 1st boot installation finalisation
  • Once at the 10.11 desktop, run the Enoch r2795 r2848 package from your USB installer to install Enoch on your HDD; it should be installed on the 1st partition of the disk
  • Eject the 10.11 USB installer and put it aside
  • :excl: Disable hibernation (can be done later, but should be done): open up Terminal and type the following commands
sudo pmset hibernatemode 0
sudo pmset hibernatefile /dev/null
sudo rm -f /var/vm/sleepimage
  • Copy the appropriate El Capitan patched AICPUPM kext to /System/Library/Extensions. Copies of the kext are available here
  • repair kexts permissions and rebuild cache
sudo chmod -Rf 755 /S*/L*/E*
sudo chown -Rf 0:0 /S*/L*/E*
sudo touch -f /S*/L*/E*
sudo kextcache -Boot -U /
  • If your E6230 is fitted with a different CPU than the i5-3340M, download Pike R Alpha's SSDT generator tool and generate your own CPU-specific SSDT. Copy the resulting SSDT.aml file to /Extra folder (it's normally prompted by the tool).
  • Reboot your finalised El Capitan installation

 

To gain faster boot time with optimised prelinked kernel (if you do not follow these steps, NullCPUPM should be removed from /E/E)

  • copy all kexts except NullCPUPM from /Extra/Extensions to /Library/Extensions (ignore and acknowledge the permissions-related error messages)
  • repair kexts permissions and rebuild cache
sudo chmod -Rf 755 /L*/E*
sudo chown -Rf 0:0 /L*/E*
sudo touch -f /L*/E*
sudo kextcache -Boot -U /
  • Edit /Extra/kernel.plist and set KernelBooter_kexts parameter to No
<key>KernelBooter_kexts</key>
<string>No</string>

`

Please note that:

  • Loading injected kexts from /E/E with boot option KernelBooter_kexts=Yes is slower than loading cached kexts placed in /S/L/E or /L/E.
  • After any kexts modification, whether to /S/L/E or to /L/E, repair permissions and rebuild cache as detailed above.
  • At each EC version update:
    • type option KernelBooter_kexts=Yes at 1st reboot to boot with NullCPUPM from /E/E or you'll encounter CPU PM-related KP
    • once new EC version installation has completed, replace vanilla AICPUPM in /S/L/E by the corresponding patched version, repair kexts permissions and rebuild cache

 

:!:    :!:    :!:  Other E6230 laptops fitted with a different CPU will require a different (and suitable) SSDT table than provided in the above pack (can be looked up on the web or created with Pike R Alpha's SSDT generator tool).  In such cases and in order to avoid CPU power management-related kernel panics (KP), NullCPUPowerManagement kext (available in folder RemovedExtensions of bootpack) is required until the CPU-specific SSDT is generated. The kext just needs to be added to /Library/Extensions followed by permissions repair/cache rebuild.

 

 

- - - - - - - - - -

Edit #1: 06 Feb 2017

  • Updated pack #3 with revised DSDT and kexts:
    • PNLF device _UID value changed from 0x0E to 0x0A to provide vanilla brightness control. IntelBacklight kext removed as a result
    • Added PCIID_XHCIMux kext to support USB3.0/USB2.0 port multiplexing
    • Added Shiki kext to fix iTunes green video issue on HD4000 iGPU
    • Added EAPDFix kext to better support headphones hot-plugging
    • Added IOAHCISerialATAPI_injector dummy kext (can also be injected to FakeSMC) to fix DVDPlayer launch error
    • Newer ACPIBatteryManager kext v1.70.2
    • Added CodecCommander to kexts destined to SLE to better support headphones hotplugging
    • Added optional Broadcom BT firmware patching kexts to kexts destined to SLE
    • A choice of SMBIOS profiles and associated tuned FakeSMC: MBA5,2 or MBP9,2

 

- - - - - - - - - -

Edit #2: 09 Feb 2017

  • Updated pack #4 with Shiki kext removed as it's reported to cause KP when booting USB installer. To be installed as post-installation tuning if necessary.
  • Replaced Enoch older version r2795 with latest r2848 that fixes a bug for kexts injection with KernelBooter_kexts boot parameter
  • Like 5
Link to comment
Share on other sites

  • Administrators

Last update: 09 Feb 2017
 
Target macOS release:

  • Sierra 10.12.x

This is an Enoch-based installation using the well-known/well-documented vanilla manual method detailed below:
 
E6230_i5-3340M_HD4000_10.12.jpg
 

E6230_10.12.jpg     E6230_SpeedStep.jpg


E6230_HDMI.jpg

 

E6230_HDMI-Audio.jpg

 


Working:

  • full QE/CI with HD4000 graphics (with DSDT patch for Capri FB #3)
  • HDMI output OOB
  • DVI + DP output OOB through port replicator E-Port K07A002
  • full audio, including jack microphone input and headset output (with patched AppleHDA kext)
  • HDMI audio (with patched AppleIntelFrameBufferCapri kext)
  • built-in Gigabit Ethernet (with AppleIntelE1000e kext v3.1.0)
  • DW380 bluetooth (with Broadcom BT transport kext patch or Rehabman's BrcmFirmwareRepo + BrcmPatchRAM2 kexts)
  • native speedstep (with tuned Kozlek's FakeSMC (SMC keys=2.5f9/SMC compatible=smc-huronriver) and MBA5,2 SMBIOS profile)
  • Turbo boost to x34 3.4GHz (getting CPU multipliers x12/13/14/15/16/17/18/19/20/21/22/23/25/26/27 + Turbo multipliers x28/29/30/31/32/33/34 according to Pike R Alpha's AppleIntelInfo output)
  • sleep & wake (with DSDT patch for EHCx/XHC/HDEF/GLAN _PRW; sleeps Ok on Energy Savings settings/Fn-F1/Apple menu option/power button/lid closure; wakes Ok through lid opening/power button
  • wireless with any compatible card
  • battery management and monitoring (with ACPIBatteryManager kext v1.60.5/1.70.0)
  • SD card reader (with DSDT patch for compatibility with Apple's default reader)
  • integrated webcam OOB
  • keyboard backlight control OOB (for backlit models)
  • left combo eSATA+USB2.0 + right USB3.0 ports OOB
  • Express card slot OOB

 

Not Working:

  • VGA output unsupported

 

Not tested:

  • SmartCard reader
  • fingerprint scanner

 

 

1) 10.12 USB installer creation

  • Double click on InstallESD.dmg found in Install macOS Sierra.app/Contents/SharedSupport to mount the dmg image
  • Then mount BaseSystem.dmg (hidden file)
open /Volumes/OS\ X\ Install\ ESD/BaseSystem.dmg
  • Use Disk Utility to restore the contents of BaseSystem.dmg on a USB key (or HDD partition) formatted Mac OS extended (journaled).
  • Remove link for Packages in folder System/Installation of your USB key
rm /Volumes/OS\ X\ Base\ System\ 1/System/Installation/Packages
  • Copy folder Packages located in InstallESD.dmg to folder System/Installation of your USB key
cp -R /Volumes/OS\ X\ Install\ ESD/Packages /Volumes/OS\ X\ Base\ System\ 1/System/Installation
  • Copy the 2 hidden files (BaseSystem.dmg & Basesystem.chunklist) of InstallESD.dmg to the root of your USB key
cp /Volumes/OS\ X\ Install\ ESD/BaseSystem.* /Volumes/OS\ X\ Base\ System\ 1
  • Install Enoch r2839 r2848 (latest at time of update ) on the USB installer with all default settings
  • Copy the above Enoch r2839 r2848 installer package to the root of the USB installer
  • Copy the following (unzipped/extracted) E6230 bootpack to the root of the USB installer
  • If your E6230 is fitted with a different CPU that the i5-3340M, delete the SSDT.aml table from the bootpack; you'll generate the suitable one later.
  • Create a folder called Kernels under /System/Library (normally, it won't exist at that stage)
  • Copy the appropriate Sierra kernel to /System/Library/Kernels. Copies of the kernels are available here

 

2) 10.12 installation

  • Boot the 10.12 USB installer (it may take a little time to kick in) with -f -v boot flags
  • At macOS installer main screen, open up Disk Utility in Utilities menu
  • If applicable, partition your target disk in GPT/GUID scheme
  • Create your target 10.12 partition and format it as OS X Extended (Journaled)
  • Close Disk Utility and proceed with macOS 10.12 installation as usual

 

3) Post-installation fine-tuning

  • Reboot the 10.12 USB installer (it may take a little time to kick in)
  • At macOS installer main screen, open up Terminal in Utilities menu
  • Verify CoreStorage installation disk mode
diskutil list
  • If CoreStorage activated for Fusion drive (i.e. presence of a logical disk), revert to legacy mode
diskutil corestorage revert <device> (for example: /dev/disk1)
  • Identify your freshly made 10.12 partition name
df
  • Copy the Extra folder from the USB installer to your identified 10.12 disk partition
cp -R /Extra /Volumes/<your fresly made 10.12 partition name> (for example: cp -R /Extra /Volumes/OSX_disk)
  • Reboot the 10.12 USB installer, press a key at delay bar (or F8) to interrupt boor process and select your freshly made 10.12 disk partition. You'll then be booting Sierra for the 1st time
  • Complete the 1st boot installation finalisation
  • Once at the 10.12 desktop, run the Enoch r2839 r2848 package from your USB installer to install Enoch on your HDD; it should be installed on the 1st partition of the disk
  • Eject the 10.12 USB installer and put it aside
  • :excl: Disable hibernation (can be done later, but should be done): open up Terminal and type the following commands
sudo pmset hibernatemode 0
sudo pmset hibernatefile /dev/null
sudo rm -f /var/vm/sleepimage
  • Copy the appropriate Sierra patched AICPUPM kext to /System/Library/Extensions. Copies of the kext are available here
  • copy all kexts except NullCPUPowerManagement from /Extra/Extensions to /Library/Extensions (ignore and acknowledge the permissions-related error messages)
  • copy patched AppleHDA from /Extra/Extensions/Copy_to_SLE to /System/Library/Extensions (ignore and acknowledge the permissions-related error messages)
  • repair kexts permissions and rebuild cache (if you end up with "Error 77..." message, repeat the touch + kextcache commands)
sudo chmod -Rf 755 /S*/L*/E*
sudo chown -Rf 0:0 /S*/L*/E*
sudo chmod -Rf 755 /L*/E*
sudo chown -Rf 0:0 /L*/E*
sudo touch -f /S*/L*/E*
sudo touch -f /L*/E*
sudo kextcache -Boot -U /
  • Edit /Extra/kernel.plist and set KernelBooter_kexts parameter to No
<key>KernelBooter_kexts</key>
<string>No</string>
  • If your E6230 is fitted with a different CPU than the i5-3340M, download Pike R Alpha's SSDT generator tool and generate your own CPU-specific SSDT. Copy the resulting SSDT.aml file to /Extra folder (it's normally prompted by the tool).
  • Reboot your finalised Sierra installation

 

Please note that:

  • Loading injected kexts from /E/E with boot option KernelBooter_kexts=Yes is slower than loading cached kexts placed in /S/L/E or /L/E.
  • After any kexts modification, whether to /S/L/E or to /L/E, repair permissions and rebuild cache as detailed above.
  • At each Sierra version update:
    • type option KernelBooter_kexts=Yes at 1st reboot to boot with NullCPUPM from /E/E or you'll encounter CPU PM-related KP
    • once new Sierra version installation has completed, replace vanilla AICPUPM in /S/L/E by the corresponding patched version, repair kexts permissions and rebuild cache
  • In Sierra, the AppleHDA binary patch for codec IDT 92HD93 consists of:
    • replace 8419D411 by 00000000 (2 x instances if you manually patch the kext)
    • replace 8A19D411 by 00000000 (2 x instances if you manually patch the kext)
    • replace 8B19D411 by DF761D11 (2 x instances if you manually patch the kext)

 

:!:     :!:     :!:  Other E6230 laptops fitted with a different CPU will require a different (and suitable) SSDT table than provided in the above pack (can be looked up on the web or created with Pike R Alpha's SSDT generator tool).  In such cases and in order to avoid CPU power management-related kernel panics (KP), NullCPUPowerManagement kext (available in folder RemovedExtensions of bootpack) is required until the CPU-specific SSDT is generated. The kext just needs to be added to /Library/Extensions followed by permissions repair/cache rebuild.
 
 

- - - - - - - - - -
Edit #1: 06 Feb 2017

  • Updated pack #2 with revised DSDT and kexts:
    • PNLF device _UID value changed from 0x0E to 0x0A to provide vanilla brightness control. IntelBacklight kext removed as a result
    • Added PCIID_XHCIMux kext to support USB3.0/USB2.0 port multiplexing
    • Added Shiki kext to fix iTunes green video issue on HD4000 iGPU
    • Added EAPDFix kext to better support headphones hot-plugging
    • Added IOAHCISerialATAPI_injector dummy kext (can also be injected to FakeSMC) to fix DVDPlayer launch error
    • Newer ACPIBatteryManager kext v1.70.2
    • Newer patched Capri FB kext v10.22.29
    • Added CodecCommander to kexts destined to SLE to better support headphones hot-plugging
    • Added optional Broadcom BT firmware patching kexts to kexts destined to SLE
    • A choice of SMBIOS profiles and associated tuned FakeSMC: MBA5,2 or MBP9,2
  • New Enoch version r2848 that fixes a Sierra bug when injecting kexts from /E/E (previously required -f flag to boot without cache)

 

- - - - - - - - - -
Edit #2: 09 Feb 2017

  • Updated pack #3 with Shiki kext removed as it can trigger KP when booting USB installer. To be installed as post-installation tuning if necessary.
    • Shiki.kext.zip
  • Replaced Enoch older version r2839 with latest r2848 that fixes a bug for kexts injection with KernelBooter_kexts boot parameter

 

- - - - - - - - - -

Edit #3: 21 Jan 2018

  • Like 3
Link to comment
Share on other sites

  • Administrators

I always wondered about the BIOS version-related graphics corruption on our E6x30 laptops, especially as, in the case of the E6230, the video OROM carries the same version 2.1.3.7 between BIOS A11 and latest version A19. So, I upgraded to A19 and re-patched A19's raw DSDT table. The E6230 boots without any graphics corruption and the laptop works as great as before and without any graphics issues so far. The well-known graphics corruption is only seen on closing screen when restarting or shutting down OS X/macOS. 🙂

 

DSDT_A19.aml.zip

 

I'd have to check if the same applies to post-A11 versions like A12 or A13 to see if the issue can be isolated to re-using a patched DSDT from an earlier version...

 

Link to comment
Share on other sites

  • Administrators

As mentioned by @jpz4085, it would appear any BIOS can be used without the infamous screen garble if patching the Capri framebuffer kext in order to modify the FB memory size from 16MB to 8MB. See details here.

 

Binary patch is as follows (implement through Clover or actual kext binary mod.) for Capri layout 0x01660003:

Name: AppleIntelFramebufferCapri
                                        \/\/
Find:    03006601 01020402 00000004 00000001
Replace: 03006601 01020402 00000004 00008000
                                        /\/\

Explanation:

  • 0000 0001 represents the (default) FB memory size in Bytes.
  • 0000 0001 means 0x01000000 in hex, i.e. 16777216 in decimal which, when divided by 1024*1024 (to convert in MegaBytes), equates to 16MB.
  • 0000 8000 means 0x00800000 in hex, i.e. 8388608 in decimal which, when divided by 1024*1024 (to convert in MegaBytes), equates to 8MB.

 

When injecting properties against the iGPU @2 -i.e. PciRoot(0x0)/Pci(0x2,0x0)- in the bootloader config, this is done with:

framebuffer-patch-enable        1               NUMBER
framebuffer-fbmem               00008000        DATA

 

Link to comment
Share on other sites

  • Administrators

Last update: 29 Mar 2020

 

Target macOS release:

  • Mojave 10.14.x

 

This is a Clover-based installation using the well-known/well documented vanilla method detailed below:

 

E6230_i7-3540M_HD4000_10.14.jpg

 

E6230_10.14.jpg     E6230_i7-3540M_SpeedStep.jpg

 

E6230_HDMI.jpg

 

E6230_HDMI-audio.jpg

 

E6230_PCI.jpg

 

E6230_USB.jpg

 

E6230_SD_card_reader.jpg

 

 

Working:

  • full graphics acceleration on Intel HD4000 graphics (with Lilu v1.3.7 + WEG v1.3.0)
  • multi-display with HDMI OOB
  • audio, including jack microphone input and headset output (with AppleALC v1.3.9 & layout 12 + CodecCommander v2.7.1)
  • HDMI audio (with Capri Framebuffer patch)
  • built-in GigEthernet LAN connection (with AppleIntelE1000e v3.1.0 or latest IntelMausiEthernet kext)
  • wireless and bluetooth with any compatible card
  • integrated webcam (OOB)
  • full CPU power management, including Turbo boost (with CPU-specific generated ssdt)
  • sleep (Lid, Energy Saver settings, Apple menu, Fn-F1, PWR button) & wake (Lid, PWR button)
  • battery management (with ACPIBatteryManager v1.90.1)
  • SD card reader (with DSDT patch for compatibility with Apple's default reader)
  • keyboard (with Dr Hurt's VoodooPS2Controller R6 + DSDT patch for brightness control)
  • touchpad including tap-to-click (with Dr Hurt's VoodooPS2Controller R6)
  • left combo eSATA/USB2.0 + right USB3.0 ports (with Hackintool's generated USBPorts + Rehabman's FakePCIID kexts for multiplexing)
  • ExpressCard slot OOB

 

Not working:

  • VGA output unsupported

 

Not tested:

  • SmartCard reader
  • fingerprint scanner

 

GeekBench v2.4.4 (32bit) gives a slightly improved 8100+ rating:

E6230_GB32.jpg

 

 

1) 10.14 USB installer creation

  • Using a USB key of 16GB minimum, create a Mojave USB installer through the following Terminal command:
sudo <path>/Install\ macOS\ Mojave.app/Contents/Resources/createinstallmedia --volume /Volumes/<USB key>
  • where:
    • <path> = location of Mojave installation package (eg: /Applications if freshly downloaded)
    • <USB key> = name of formatted USB volume (eg: USB_16GB)

 

The process will take several minutes. Once completed:

  • Setup your BIOS for UEFI mode
  • install Clover bootloader on the USB installer with the following customised settings:
    • Clover for UEFI booting only
    • Install Clover in the ESP
    • UEFI Drivers
      • AudioDxe
      • DataHubDxe
      • FSInject
      • SMCHelper
      • ApfsDriverLoader
      • AptioMemoryFix
      • Fat
      • PartitionDxe
      • Ps2MouseDxe
      • UsbMouse.Dxe
      • VBoxHfs
    • Themes (optional)
    • Install Clover Preference Pane (optional)
  • you may use version r5035 attached below:
  • once Clover is installed, run Clover Configurator app and mount the freshly created EFI partition of the USB installer
  • open this EFI partition and transfer the files & folders from the Latitude E6230 Mojave Clover pack below to the EFI/Clover folder:
  • if your E6230 is fitted with a different CPU than those cared for in the bootpack (i5-3340M/i7-3540M), remove the SSDT.aml table from Clover's EFI/Clover/ACPI/patched folder (default table is for i7-3540M); you'll generate you own CPU-specific power management table in post-installation phase.

 

2) 10.14 installation

  • boot the Mojave USB installer
  • at the Clover main menu, select the "Install macOS Mojave" partition (but don't press [ENTER])
  • press [SPACE], select -v verbose option in the menu, then choose to boot with the selected options
  • proceed with installation, creating & formatting the target Mojave installation through Disk Utility as/if required
  • on 1st reboot, boot off the USB installer and select the freshly created "macOS install from <target Mojave partition>"
  • repeat this until this partition is no longer offered and only the target Mojave partition is left to boot
  • Reboot the target Mojave partition via your USB installer

 

3) Post-installation tuning

  • Once the target Mojave partition has booted, complete the 1st boot configuration tuning
  • Once at the desktop, install Clover bootloader on the Mojave partition/disk with the customised settings listed above
  • Once Clover is installed, launch Clover Configurator app and mount the freshly created EFI partition of the Mojave partition/disk
  • Open this EFI partition and transfer the files & folders from the above Latitude E6230 Mojave Clover pack to the EFI/Clover folder
  • You may then reboot and verify that Mojave boots off your disk through Clover
  • If your E6230 is fitted with a different CPU than the models stated above, download Pike R Alpha's SSDT generator tool and generate your own CPU-specific SSDT. Copy the resulting SSDT.aml file to Clover's EFI/Clover/ACPI/patched folder.

 

 

- - - - - - - - - -
Edit #1: 16 Aug 2019

  • Updated pack #2: revised patched (A19) DSDT to fix to a small coding error causing issues with battery monitoring.

 

- - - - - - - - - -
Edit #2: 20 Aug 2019

  • Updated pack #3: added the USBPorts kext I had forgotten in pack #2.

 

- - - - - - - - - -
Edit #3: 29 Mar 2020

  • Updated pack #4: fixed a small copy/paste mistake in HDMI audio patch in pack #3.
  • Thanks 1
Link to comment
Share on other sites

  • Administrators

I was asked about the patch for the DW380 Bluetooth module. It's the same (principle) as before: patch consists of adding an entry for the DW380 module in the Bluetooth Transport kext, based on the copy of an existing module entry/definition. Under Mojave, the target for the patch is the BroadcomBluetoothHostControllerUSBTransport plugin kext of IOBluetoothFamily.

 

In order to avoid patching the vanilla kext to inject the module's info, it's best to simply inject this through FakeSMC (i.e. the patch added as is to the Info.plist file, right above the <key>FakeSMC</key> key entry). This has the additional advantage of being sustainable to macOS updates.

 

Mojave patch will be:

        <key>DW380 Bluetooth module: PID 0x413c/16700, VID 0x8197/33175</key>
        <dict>
            <key>CFBundleIdentifier</key>
            <string>com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport</string>
            <key>IOClass</key>
            <string>BroadcomBluetoothHostControllerUSBTransport</string>
            <key>IOProviderClass</key>
            <string>IOUSBHostDevice</string>
            <key>LMPLoggingEnabled</key>
            <true/>
            <key>idProduct</key>
            <integer>33175</integer>
            <key>idVendor</key>
            <integer>16700</integer>
        </dict>

 

Example for Mojave:

FakeSMC_with_DW380_injection.kext.zip

 

 

E6230_DW380_BT4.0.jpg

 

USB_DW380.jpg

 

IOReg_DW380.jpg

 

NB: DW380 obviously requires Rehabman's firmware patching kexts to run properly (BrcmFirmwareRepo + BrcmPatchRAM2).

 

Link to comment
Share on other sites

  • Administrators

Target macOS release:

  • Catalina 10.15.x

 

This is a Clover-based installation using the well-known/well documented vanilla method detailed below:

 

E6230_Catalina_10.15.jpg

 

E6230_i7-3540M_HD4000_Cat_10.15.jpg     CPU_SpeedStep.jpg

 

E6230_SysInfo_PCI.jpg

 

E6230_SysInfo_USB.jpg

 

E6230_SysInfo_CardReader.jpg

 

E6230_SysInfo_Audio.jpg

 

 

Working:

  • full graphics acceleration on Intel HD4000 graphics (with Lilu v1.3.8 + WEG v1.3.2)
  • multi-display with HDMI OOB
  • audio, including jack microphone input and headset output (with AppleALC v1.4.1 & layout 12 + CodecCommander v2.7.1)
  • HDMI audio (with Capri Framebuffer patch)
  • built-in GigEthernet LAN connection (with AppleIntelE1000e v3.1.0 or latest IntelMausiEthernet kext)
  • wireless and bluetooth with any compatible card
  • integrated webcam (OOB)
  • full CPU power management, including Turbo boost (with CPU-specific generated ssdt)
  • sleep (Lid, Energy Saver settings, Apple menu, Fn-F1, PWR button) & wake (Lid, PWR button)
  • battery management (with ACPIBatteryManager v1.90.1)
  • SD card reader (with DSDT patch for compatibility with Apple's default reader)
  • keyboard (with Dr Hurt's VoodooPS2Controller R6 + DSDT patch for brightness control)
  • touchpad including tap-to-click (with Dr Hurt's VoodooPS2Controller R6)
  • left combo eSATA/USB2.0 + right USB3.0 ports (with Hackintool's generated USBPorts + Rehabman's FakePCIID kexts for multiplexing)
  • ExpressCard slot OOB

 

Not working:

  • VGA output unsupported

 

Not tested:

  • SmartCard reader
  • fingerprint scanner

 

 

GeekBench v4.4.x (64bit) results:

E6230_i7-3540M_GB4_x64.jpg

 

 

1) 10.15 USB installer creation

  • Using a USB key of 16GB minimum, create a Catalina USB installer through the following Terminal command:
sudo <path>/Install\ macOS\ Catalina.app/Contents/Resources/createinstallmedia --volume /Volumes/<USB key>
  • where:
    • <path> = location of Catalina installation package (eg: /Applications if freshly downloaded)
    • <USB key> = name of formatted USB volume (eg: USB_16GB)

 

The process will take several minutes. Once completed:

  • Setup your BIOS for UEFI mode
  • install Clover bootloader on the USB installer with the following customised settings:
    • Clover for UEFI booting only
    • Install Clover in the ESP
    • UEFI Drivers
      • AudioDxe
      • DataHubDxe
      • FSInject
      • SMCHelper
      • ApfsDriverLoader
      • AptioMemoryFix
      • Fat
      • PartitionDxe
      • Ps2MouseDxe
      • UsbMouse.Dxe
      • VBoxHfs
    • Themes (optional)
    • Install Clover Preference Pane (optional)
  • you may use version r5058 (or later) attached below:
  • once Clover is installed, run Clover Configurator app and mount the freshly created EFI partition of the USB installer
  • open this EFI partition and transfer the files & folders from the Latitude E6230 Catalina Clover pack below to the EFI/Clover folder:
  • if your E6230 is fitted with a different CPU than i7-3540M, remove the SSDT.aml table from Clover's EFI/Clover/ACPI/patched folder; you'll generate you own CPU-specific power management table in post-installation phase.

 

2) 10.15 installation

  • boot the Catalina USB installer
  • at the Clover main menu, select the "Install macOS Catalina" partition (but don't press [ENTER])
  • press [SPACE], select -v verbose option in the menu, then choose to boot with the selected options
  • proceed with installation, creating & formatting the target Catalina installation through Disk Utility as/if required
  • on 1st reboot, boot off the USB installer and select the freshly created "macOS install from <target Catalina partition>"
  • repeat this until this partition is no longer offered and only the target Catalina partition is left to boot
  • Reboot the target Catalina partition via your USB installer

 

3) Post-installation tuning

  • Once the target Catalina partition has booted, complete the 1st boot configuration tuning
  • Once at the desktop, install Clover bootloader on the Catalina partition/disk with the customised settings listed above
  • Once Clover is installed, launch Clover Configurator app and mount the freshly created EFI partition of the Catalina partition/disk
  • Open this EFI partition and transfer the files & folders from the above Latitude E6230 Catalina Clover pack to the EFI/Clover folder
  • You may then reboot and verify that Catalina boots off your disk through Clover
  • If your E6230 is fitted with a different CPU than the i7-3540M, download Pike R Alpha's SSDT generator tool and generate your own CPU-specific SSDT. Copy the resulting SSDT.aml file to Clover's EFI/Clover/ACPI/patched folder.

 

 

Edit: May 23rd, 2020

- - - - - - - - - - - - - - -

Following 10.15.4's breaking of XCPM on Ivy Bridge platforms, revised pack #2 where CPU power management is reverted to traditional CPU-specific SSDT generated by Pike R Alpha's well-known script. A specific XCPM-enabled Clover config is still provided up to 10.15.3.

 

Edit: Nov 28th, 2020

- - - - - - - - - - - - - - -

Catalina 10.15.4 and later require using more recent Clover versions such as r5107 or later. Clover versions r5123 to r5126 are known to be buggy and cause issues. As such, avoid them. On the other hand, Clover r5127 was tested Ok and proved to boot Catalina 10.15.7 without a glitch.

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...