黑苹果博通蓝牙驱动补丁BrcmPatchRAM 2.6.3
大多数博通 USB 蓝牙设备都使用称为 RAMUSB 的系统。 RAMUSB 允许动态更新设备的固件,但是在关闭计算机时,先前应用的任何更新都会丢失。 博通 Windows 驱动程序将在每次启动时将固件上载到博通蓝牙设备中,但是对于 macOS,此功能不可用。 BrcmPatchRAM kext 是一个 macOS 驱动程序,适用于基于博通 RAMUSB 的设备的 PatchRAM 更新。 每次启动/唤醒时,它将固件更新应用于博通蓝牙设备,与 Windows 驱动程序相同。 应用的固件是从 Windows 驱动程序中提取的,并且功能应与 Windows 相同。
使用方法- Clover引导使用方法:将BrcmPatchRAM.kext 或 BrcmPatchRAM2.kext 或 BrcmPatchRAM3.kext 三者其中之一,不能三者都安装。下载的驱动放入EFI-CLOVER-kexts-Other下即可,然后重启电脑。
- OpenCore引导使用方法:将BrcmPatchRAM.kext 或 BrcmPatchRAM2.kext 或 BrcmPatchRAM3.kext 三者其中之一,不能三者都安装。下载的驱动放入EFI-OC-kexts下,然后使用OpenCore Configurator打开config.plist并在Kernel-内核设置中添加驱动并勾上驱动,重启电脑。
- 不要把驱动安装到 /Library/Extensions 或 /System/Library/Extensions,系统很有可能因此冻结。导致进不去macOS系统。
根据 macOS 版本安装 BrcmPatchRAM.kext 或 BrcmPatchRAM2.kext 或 BrcmPatchRAM3.kext 三者其中之一,不能三者都安装。可使用 OpenCore 或 Clover 等引导工具注入,不推荐修改 S/L/E 目录。 - BrcmPatchRAM.kext:适用于 10.10 或更早版本
- BrcmPatchRAM2.kext:适用于 10.11-10.14
- BrcmPatchRAM3.kext:适用于 10.15 或更高版本
另外,根据安装位置安装一个固件 kext BrcmFirmwareData.kext 或 BrcmFirmwareRepo.kext,不能同时使用。 - BrcmFirmwareData.kext:最适合使用引导程序注入,这是推荐配置。
- BrcmFirmwareRepo.kext:安装到/System/Library/Extensions(在 10.11 及更高版本上为 /Library/Extensions)。 该 kext 的内存效率比 BrcmFirmwareData.kext 略高,但是不能由引导程序注入系统。
- 高级用户:对于自定义固件注入器,请安装注入器以及 BrcmFirmwareRepo.kext。 这可以从 /System/Library/Extensions 或通过引导程序注入工作。
- 「可选」用户可以从 BrcmFirmwareRepo.kext/Contents/Resources 中删除所有固件。 如果通过引导程序使用注入器,则必须将 BrcmFirmwareRepo.kext 中的 Info.plist 中的 IOProviderClass 从disabled_IOResources 更改为 IOResources。
另外,如果您有非 PatchRAM 设备(或者不确定),请安装 macOS 版本的 BrcmNonPatchRAM.kext 或 BrcmNonPatchRAM2.kext 之一,不要同时安装两者。尽管这些 kext 不安装任何固件(这些设备内置了固件),但它们仍依赖 BrcmPatchRAM.kext/BrcmPatchRAM2.kext。 - BrcmNonPatchRAM.kext:适用于 10.10 或更早版本
- BrcmNonPatchRAM2.kext:适用于 10.11 或更高版本
其它安装细节- BrcmPatchRAM.kext 或 BrcmPatchRAM2.kext 或 BrcmPatchRAM3.kext 可以通过引导加载程序 kext 注入安装,也可以放置在 /System/Library/Extensions(在10.11及更高版本中为 /Library/Extensions)中。 根据系统版本,注意每次只能选择其一安装。
- BrcmFirmwareRepo.kext 不适用于使用引导程序注入,除非使用特定于设备的固件注入器; BrcmFirmwareData.kext 可以与引导程序注入使用。
- BrcmPatchRAM 包含 2 个部分:
- BrcmPatchRAM 本身与受支持博通蓝牙 USB 设备(在 Info.plist 中配置)进行通信,并检测它们是否需要固件更新。如果需要固件更新,则匹配的固件数据将被上载到设备并重置设备;
- BrcmFirmwareStore(由 BrcmFirmwareData.kext 或 BrcmFirmwareRepo.kext 实现)是共享资源,其中包含用于不同博通蓝牙 USB 设备的所有已配置固件;
- 另外,可以通过引导加载程序或通过 BrcmPatchRAM 与 Continuity Activation Patch 结合使用 BT4LEContinuityFixup,OpenCore 用户可以使用 config.plist 中的 Kernel → Quirk 参数 ExtendBTFeatureFlags 进行修补。
注入器(Injector)「注意」macOS 12.0 及更高版本不能使用 BrcmBluetoothInjector.kext,需要 BlueToolFixup.kext。 BrcmBluetoothInjector.kext 是一个无代码内核扩展,它使用plist注入蓝牙硬件数据; 它不包含固件上载器。 用于 macOS 10.11 或更高版本,对于较旧的系统,请使用 BrcmBluetoothInjectorLetacy.kext;使用 BrcmPatchRAM3.kext 还需要 BrcmBluetoothInjector.kext,因为 macOS Catalina 10.15 中的更改要求使用单独的注射器注入到 kext。 这是由于删除了以下 IOCatalogue 方法:
安装 BrcmPatchRAM 之后,即使蓝牙图标出现,也可能是固件未正确更新的状态。可通过转到系统信息并在蓝牙信息面板下检查蓝牙固件版本号来验证固件是否已更新,如果版本号为 4096,则意味着设备没有更新固件,因此可能无法正常工作。可以通过在终端中运行以下命令来验证系统日志中的任何错误
|