OpenCore and Clover EFI Folders for running macOS High Sierra to Sonoma on the Lenovo ThinkPad T530.
RestrictEvent.kext
to install and run macOS Big Sur+ with a MacBookPro10,x
SMBIOS (More)AMFIPass.kext
.DSDT
– only SSDT hotpatches were used for maximum ACPI-compliance!ECEnabler.kext
AdvancedMaps.kext
Component | Details |
---|---|
Model | Lenovo ThinkPad T530, Model# 2429-62G |
Chipset | Intel QM77 Express |
BIOS Version | 2.77, unlocked with 1vyRain |
Processor | Intel Core i7 3630QM |
Memory | 16GB Samsung DDR3 1600MHz, Dual-Channel Minimum: 8GB |
Hard Disk | Samsung 840 Evo 250GB |
Integrated Graphics | Intel HD Graphics 4000, 2048 MB RAM assigned |
Display | 15.6" HD+ TFT Display (1600x900 px) |
Audio | Realtek ALC269VC Rev.3 (Layout-id:39 ) |
Ethernet | Intel 82579LM Gigabit Network Connection |
WiFi and Bluetooth | Broadcom BCM94352HMB DW1550, 802.11 a/b/g/n/ac |
Multicard Reader | Ricoh 4-in-1 reader (MMC, SD, SDHC, SDXC) |
ExpressCard/34 slot | disabled |
Docking Station | Lenovo ThinkPad 4338 Mini Dock plus Series 3 |
DOCS
Please read the following instructions carefully before deploying my EFI folder. Depending on your T530 model, the used WiFi/BT card and macOS version you want to run, adjustments to the config.plist
and used kexts may be necessary to adapt the config to your system.
[!NOTE] Although this EFI might work with T430 and X230, is was not intended for these ThinkPad models. So don't misuse issue reports for support requests!
config.plist
Download the EFI Folder from the Releases section and unpack it. Make sure to read the included Changelog.md
as well, since it contains useful explanations.
Open the config.plist
and adjust the following settings depending on your system:
ACPI Section:
SSDT-PM.aml
(unless you have an i7 3630QM as well). Generate your own with ssdtPRGen in Post-Install.Booter Section (optional):
DevirtualiseMmio
QuirkDeviceProperties: Enable the correct Framebuffer-Patch for your display. There T530 support two types of display panels: HD+
and HD
, supporting different resolutions. Each reauires a different AAPL,ig-platform-id
and connector patches:
AAPL,ig-platform-id 04006601
= HD+
= WSXGA and FullHD. Resolution: ≥ 1600x900 px. (Default)
AAPL,ig-platform-id 03006601
= HD
= SD. Resolution: ≤ 1366x768 px.
If your T530 has an SD panel, do the following;
DeviceProperties
PciRoot(0x0)/Pci(0x2,0x0)
by placing #
in front of it.#PciRoot(0x0)/Pci(0x2,0x0) 1366x768 px
by deleting the leading #
and the description 1366x768 px
, so that it looks this: PciRoot(0x0)/Pci(0x2,0x0)
.:bulb: HINT: If your screen turns off during boot, you are using the wrong Framebuffer-Patch!
Audio (optional):
No-hda-gfx
from the Audio Device Properties in PciRoot(0x0)/Pci(0x1B,0x0)
.AppleALC.kext
which only contains layouts 18
and 39
(default) and therefore only is 95 KB in size (instead of 3.6 MB). If you are using a docking station, leave it at 39
. If you don't, change it to 18
.UEFI/Drivers
, enable AudioDxe.efi
EUFI/Audio
, enable AudioSupport
ConnectDrivers
is enabledSIP (optional): Under NVRAM/Add/7C436110-AB2A-4BBB-A880-FE41995C9F82
, adjust csr-active-config
according to the macOS version you want to use. Lowering SIP is mandatory if you want to run macOS 12 and newer in order to install and load Intel HD 4000 Drivers! If you have issues running OCLP in Post-Install, change csr-active-config
to FE0F0000
(almost fully disabled).
00000000
(macOS Big Sur and older only!)03080000
(0x803)EF070000
(0x7EF)FF030000
(0x3FF)SMBIOS: Under SystemProductName
, select the correct SMBIOS for your CPU and generate a serial, etc. for it. My EFI utilizes Patches and kexts from OpenCore Legacy Patcher which allow using the correct SMBIOS for Ivy Bridge CPUs on macOS 11.3 and newer (Darwin Kernel 20.4+), so native Power Management and OTA System Updates are working oob which wouldn't be possible otherwise past macOS Catalina.
MacBookPro10,1
(Default)MacBookPro10,2
WiFi and Bluetooth (Read carefully!)
EFI/OC/Kexts
folder and config.plist
before attempting to boot with this EFI!AirportBrcmFixup
for WiFi and BrcmPatchRAM
and additional satellite kexts for Bluetooth. Read the comments in the config for details.BrcmFirmwareData.kext
is used for injecting the required firmware for Broadcom devices. Alternatively, you can use BrcmFirmwareRepo.kext
which is more efficient but has to be installed into System/Library/Extensions
since it cannot be injected by Bootloaders.config.plist
before deploying the EFI folder!Kernel Section
CFG-Lock
will be disabled by default (not on the T430). In this case, you can disable the AppleCpuPmCfgLock
Quirk. MSR 0xE2
register of your BIOS is unlocked, add ControlMsrE2.efi
to EFI/OC/Tools
and your config.plist (under Misc/Tools
) and run it from the BootPicker. The output should look like this: Misc Section
HideAuxiliary
is enabled. This hides additional items like Recovery and resetting NVRAM. You can reveal them by pressing the space bar in BootPicker. If you want all items to show by default, disable HideAuxiliary
.NVRAM Section
7C436110-AB2A-4BBB-A880-FE41995C9F82
)
brcmfx-country=#a
: Sets Wifi Country Code (#a
= generic) for Broadcom WiFi cards using AirportBrcmFixup. If you are using an Intel Card, delete this boot argument. Otherwise replace the generic country code with the one for your country listed here. This is recommended to avoid connectivity issues and getting AirDrop to work properly (which I don't use). Add/enable alternative/optional Kexts:
AirportBrcmFixup
if you don't use a Broadcom WiFi CardBrcmPatchRam
and Plugins if you don't use a Broadcom BT CardIncrease Max Backlight Brightness Level (optional):
applbkl=0
for increased maximum brightness of the display as defined in SSDT-PNLF.aml
instead of letting Whatevergreen handle it. Also available as device property (see Whatevergreen documentation for details).gfxrst=1
: Draws Apple logo at 2nd boot stage instead of framebuffer copying → Smoothens transition from the progress bar to the Login Screen/Desktop when an external monitor is attached.ipc_control_port_options=0
: Fixes issues with Firefox not working and electron-based Apps like Discord in macOS 12+ when SIP is lowered.-allow_amfi
: Does the same as boot-arg amfi_get_out_of_my_way=0x1
but only when the OpenCore Patcher App is running. Otherwise you can't run the root patcher. But this didn't work the last time I tried this setting might be deprecated.hbfx-ahbm
: Lets the system hibernate instead of using regular sleep. Requires HibernationFixup.kext. More details here revblock:media
: Blocks mediaanalysisd
on Ventura+ (for Metal 1 GPUs). Required so apps like Firefox don't crash. Requires RestrictEvents.kextrevpatch
:
sbvmm
: Forces VMM SB model, allowing OTA updates for unsupported models on macOS 11.3 and newer. Requires RestrictEvents.kext
. memtab
: Adds Memory tab to "About this Mac" section (macOS ≤ 12 only). Requires RestrictEvents.f16c
: Disables f16c instruction set reporting in macOS 13.3 or newer to prevent CoreGraphics crashing on Ivy Bridge CPUsOnce you're done adjusting the config.plist
, mount your system's ESP and do the following:
[!NOTE]
The system may crash the first time when booting macOS Ventura or newer. That's normal. After that, it should work as expected.
Coming from Windows/Linux: Follow the installation guide by Dortania.
[!NOTE]
No support from my end is provided for issues related to UBS Installers created in Windows or Linux or when using a Virtual Machine!
Coming from macOS:
Until recently, my recommendation was macOS Catalina. While testing my own instructions for upgrading from macOS Catalina (or older) to Big Sur, I noticed that Big Sur feels snappier and more responsive overall (although benchmarks are slightly lower).
Big Sur is also the best choice if you're planing to upgrade to macOS Monterey or newer. Because macOS 11.3 introduced a virtualization technology which can be used to trick macOS into thinking that it is running in a VM. This allows installing and booting macOS 12+ with an unsupported SMBIOS designed for Ivy Bridge CPUs which improves CPU Power Management and also allows installing System Updates which wouldn't be possible otherwise.
Once macOS is up and running, you may want to change the following settings to make your system more secure:
Misc/Security/SecureBootModel
:
Default
Disabled
(otherwise insta-crash)Default
(I don't know why but Default
works – which it shouldn't…)csr-active-config
: 00000000
(macOS 11.x and older only!)UEFI/APFS
: change MinDate
and MinVersion
from -1
(disabled) to 0
(default) or use specific values for different versions of macOS.sudo pmset -a powernap 0
sudo pmset -a hibernatemode 25
NOTES
nvram 94b73556-2197-4702-82a8-3e1337dafbfb:AppleSecureBootPolicy
to check the security level. It should return %01
for medium security. More info hereFollow this guide to generate an SSDT-PM.aml to fix CPU Power Management. CPU Power Management should work fine after that.
Optionally, install Intel Power Gadget to check whether or not the CPU runs within specs. You don't need SMCProcessor and SMCSuperIO kexts to monitor the CPU if you use Intel Power Gadget, btw.
NOTES:
With the release of macOS Monterey, Apple dropped the plugin-type check for handling CPU Power Management. Since then, the X86PlatformPlugin
(Plugin-type 1) is loaded by default – prior to Monterey, plugin-type 0 (ACPI_SMC_PlatformPlugin) was the default. For Haswell and newer this is great because you no longer need SSDT-PLUG
to enable Plugin-Type 1. But for Ivy Bridge and older, you now not only need SSDT-PM
to inject C-States and P-States but also to declare Plugin-Type 0 usage. But using ACPI CPU Power Management is still possible. For macOS Ventura, it's a different story…
In macOS Ventura, Apple removed the actual ACPI_SMC_PlatformPlugin
binary from the kext itself rendering SSDT-PM
generated for 'plugin-type' 0 useless, since it can't address a plugin which doesn't exist any more. Instead, the X86PlaformPlugin
is loaded. This results in CPU Power Management not working correctly out of the box (no Turbo states, etc.).
So when switching to macOS Ventura, injecting additional kexts to re-enable ACPI CPU Power Management (Plugin-Type 0) is necessary. My EFI is already configured to boot macOS Ventura and use ACPI CPU Power Management, so you don't have to worry about it.
If you have issues with sleep, run the following commands in Terminal:
sudo pmset hibernatemode 0
sudo rm /var/vm/sleepimage
sudo touch /var/vm/sleepimage
sudo chflags uchg /var/vm/sleepimage
Other Settings:
If the system still wakes from sleep on its own, check the wake reason. Enter:
pmset -g log | grep -e "Sleep.*due to" -e "Wake.*due to"
If the wake reason is related to RTC (Alarm)
, do the following:
[!NOTE]
- To exit from Sleep you can press a Mouse button. But to wake from Hibernation, you have to press the
Fn
key or thePower Button
.
In UEFI/Drivers
, disable ConnectDrivers
. This reduces the timeout between the LENOVO logo and the BootPicker by 5 to 8 seconds.
[!WARNING]
- Before installing macOS from a USB flash drive,
ConnectDrivers
needs to be re-enabled, otherwise you won't see it in the BootPicker.- With
ConnectDrivers
disabled, the bootchime cannot be played back sinceAudioDXE.efi
is not loaded.
Prior to version 0.7.4 of my OpenCore EFI Folder, the [Command] and [Option] keys were set to "swapped" in the info.plist
of VoodooPS2Keyboard.kext
by default. So in macOS, the [WINDOWS] key was bound to the [Option] key function and the [ALT] Key was bound to the [Command] key function which felt weird. Therefore, users had to swap these Keys back around in the System Settings so everything worked as expected.
Since then, I've undone the key swap inside the VoodooPS2Keyboard.kext
plugin so that the Key bindings are working as expected out of the box. So if you are updating from 0.7.3 or lower to 0.7.4, reset the Keyboard Modifier Keys back to Default in System Settings > Keyboard so everything is back to normal.
If the "<", ">" and "^" Keys are switched/reversed, change Use ISO layout keyboard
from false
to true
in the info.plist
of VoodooPS2Keyboard.kext
.
Besides the 3 default themes by Acidanthera included in the OpenCore package, I've added an additional theme by Blackosx called BsxM1 which is set as default. To change the theme to something else, do the following:
config.plist
in OpenCore Auxiliary ToolsMisc/Boot
PickerVariant
config.plist
and reboot to apply the theme.To revert these changes, enter Acidanthera\GoldenGate
as PickerVariant
and change the Flavor for the NVRAM Reset Tool back to Auto
.
macOS locks the optical drive sometimes so that you can't open it with the physical eject button – even if no media is present. To fix this you have 2 options:
System/Library/CoreServices/Menu Extras
and double-click on Eject.menu
. This adds an Eject button Icon to the Menu Bar.INS
button (right below the Power Button) until the Eject Icon appears on the screen and the CD tray opens.I've noticed recently that a lot of crash reports for com.apple.drive.Airport.Brcm4360.0
and com.apple.iokit.IO80211Family
are being generated (located under /Library/Logs/CrashReporter/CoreCapture).
This issue is related to Smart Connect, a feature of WiFi routers which support 2,4 gHz and 5 gHz basebands to make the WiFi card switch between the two automatically depending on the signal quality. In my case, turning off Smart Connect resolved the issue.