From 810da555c6611238f05165d882c480503fb204c8 Mon Sep 17 00:00:00 2001 From: Mykola Grymalyuk Date: Thu, 28 Apr 2022 22:48:13 -0600 Subject: [PATCH] Resolve 12.3 Beta 3 Bluetooth Address Erroring --- CHANGELOG.md | 4 ++ .../BlueToolFixup-v2.6.1-DEBUG.zip | Bin 12774 -> 0 bytes .../BlueToolFixup-v2.6.1-RELEASE.zip | Bin 12482 -> 0 bytes .../BlueToolFixup-v2.6.2-DEBUG.zip | Bin 0 -> 11127 bytes .../BlueToolFixup-v2.6.2-RELEASE.zip | Bin 0 -> 10851 bytes .../Kexts/Acidanthera/BlueToolFixup.patch | 48 ++++++++++++++++++ resources/constants.py | 2 +- 7 files changed, 53 insertions(+), 1 deletion(-) delete mode 100644 payloads/Kexts/Acidanthera/BlueToolFixup-v2.6.1-DEBUG.zip delete mode 100644 payloads/Kexts/Acidanthera/BlueToolFixup-v2.6.1-RELEASE.zip create mode 100644 payloads/Kexts/Acidanthera/BlueToolFixup-v2.6.2-DEBUG.zip create mode 100644 payloads/Kexts/Acidanthera/BlueToolFixup-v2.6.2-RELEASE.zip create mode 100644 payloads/Kexts/Acidanthera/BlueToolFixup.patch diff --git a/CHANGELOG.md b/CHANGELOG.md index 49b5c548c..20b2a0957 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -24,6 +24,7 @@ - CPUFriend 1.2.5 - release - WhateverGreen 1.5.8 - release - AutoPkgInstaller 1.0.0 - release + - BlueToolFixup 2.6.2 - adjusted - Speed up loading available remote macOS Installers from Apple - Skips writing catalogs to disk, loads into memory directly - Implement Automatic Patch Detection/Installation @@ -53,6 +54,9 @@ - Simplify Binary options - Removes Online Patcher Variants - Offline variants are now new defaults, no longer retain `Offline` suffix +- Resolve legacy Bluetooth Support on 12.3 beta 3 + - Disables USB Address erroring on some pre-Bluetooth 4.0 chipsets + - ex. `ERROR -- Third Party Dongle has the same address as the internal module` ## 0.4.3 - Increment Binaries: diff --git a/payloads/Kexts/Acidanthera/BlueToolFixup-v2.6.1-DEBUG.zip b/payloads/Kexts/Acidanthera/BlueToolFixup-v2.6.1-DEBUG.zip deleted file mode 100644 index 269fc8696aa7cd19e56a8a72d386a72150eb9cb7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12774 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 b*#DnOq_!Hy4YvRQ&do0o9RN_^xxM>8>#`Hs diff --git a/payloads/Kexts/Acidanthera/BlueToolFixup-v2.6.1-RELEASE.zip b/payloads/Kexts/Acidanthera/BlueToolFixup-v2.6.1-RELEASE.zip deleted file mode 100644 index 1c9bd0f9c15002ab620e5bfcd9e3aa5411a29577..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12482 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 literal 0 HcmV?d00001 diff --git a/payloads/Kexts/Acidanthera/BlueToolFixup-v2.6.2-RELEASE.zip b/payloads/Kexts/Acidanthera/BlueToolFixup-v2.6.2-RELEASE.zip new file mode 100644 index 0000000000000000000000000000000000000000..a7d7617bcfd86a2a879fbac4e93d026b9a250c4c GIT binary patch literal 10851 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 literal 0 HcmV?d00001 diff --git a/payloads/Kexts/Acidanthera/BlueToolFixup.patch b/payloads/Kexts/Acidanthera/BlueToolFixup.patch new file mode 100644 index 000000000..a8cc702d1 --- /dev/null +++ b/payloads/Kexts/Acidanthera/BlueToolFixup.patch @@ -0,0 +1,48 @@ +diff --git a/BrcmPatchRAM/BlueToolFixup.cpp b/BrcmPatchRAM/BlueToolFixup.cpp +index a6e3c69..701a9ad 100644 +--- a/BrcmPatchRAM/BlueToolFixup.cpp ++++ b/BrcmPatchRAM/BlueToolFixup.cpp +@@ -48,6 +48,35 @@ bool BlueToolFixup::start(IOService *provider) { + static const uint8_t kSkipUpdateFilePathOriginal[] = "/etc/bluetool/SkipBluetoothAutomaticFirmwareUpdate"; + static const uint8_t kSkipUpdateFilePathPatched[] = "/System/Library/CoreServices/boot.efi"; + ++ ++// Workaround 12.3 Beta 3 bug where macOS will detect the Bluetooth chipset twice ++// Once and internal, and second as external dongle: ++// 'ERROR -- Third Party Dongle has the same address as the internal module' ++static const uint8_t kSkipAddressCheckOriginal[] = ++{ ++ 0x48, 0x8D, 0x05, 0xC5, 0x97, 0x65, 0x00, // lea rax ++ 0x8B, 0x48, 0x53, // mov ecx ++ 0x33, 0x0B, // xor ecx ++ 0x0F, 0xB7, 0x50, 0x57, // movzx edx ++ 0x66, 0x33, 0x53, 0x04, // xor dx ++ 0x0F, 0xB7, 0xD2, // movzx edx, dx ++ 0x09, 0xCA, // or edx, ecx ++ 0x74, 0x0E, // je ++}; ++ ++static const uint8_t kSkipAddressPatched[] = ++{ ++ 0x48, 0x8D, 0x05, 0xC5, 0x97, 0x65, 0x00, // lea rax ++ 0x8B, 0x48, 0x53, // mov ecx ++ 0x33, 0x0B, // xor ecx ++ 0x0F, 0xB7, 0x50, 0x57, // movzx edx ++ 0x66, 0x33, 0x53, 0x04, // xor dx ++ 0x0F, 0xB7, 0xD2, // movzx edx, dx ++ 0x09, 0xCA, // or edx, ecx ++ 0x75, 0x0E, // jne ++}; ++ ++ + static const uint8_t kVendorCheckOriginal[] = + { + 0x81, 0xFA, // cmp edx +@@ -131,6 +160,7 @@ static void patched_cs_validate_page(vnode_t vp, memory_object_t pager, memory_o + } + else if (strcmp(path + dirLength, "bluetoothd") == 0) { + searchAndPatch(data, PAGE_SIZE, path, kVendorCheckOriginal, kVendorCheckPatched); ++ searchAndPatch(data, PAGE_SIZE, path, kSkipAddressCheckOriginal, kSkipAddressPatched); + searchAndPatch(data, PAGE_SIZE, path, kBadChipsetCheckOriginal, kBadChipsetCheckPatched); + if (shouldPatchBoardId) + searchAndPatch(data, PAGE_SIZE, path, boardIdsWithUSBBluetooth[0], kBoardIdSize, BaseDeviceInfo::get().boardIdentifier, kBoardIdSize); diff --git a/resources/constants.py b/resources/constants.py index 6ae065c70..898535629 100644 --- a/resources/constants.py +++ b/resources/constants.py @@ -44,7 +44,7 @@ class Constants: self.featureunlock_version = "1.0.8" # FeatureUnlock self.debugenhancer_version = "1.0.4" # DebugEnhancer self.cpufriend_version = "1.2.5" # CPUFriend - self.bluetool_version = "2.6.1" # BlueToolFixup (BrcmPatchRAM) + self.bluetool_version = "2.6.2" # BlueToolFixup (BrcmPatchRAM) self.cslvfixup_version = "2.6.1" # CSLVFixup self.autopkg_version = "1.0.0" # AutoPkgInstaller