OpenCore  1.0.4
OpenCore Bootloader
Loading...
Searching...
No Matches
KextInfo.c
Go to the documentation of this file.
1
16#include "KextInfo.h"
17
18#include <Library/DebugLib.h>
19
21 { "VirtualSMC.kext", "Lilu.kext" },
22 { "WhateverGreen.kext", "Lilu.kext" },
23 { "SMCBatteryManager.kext", "VirtualSMC.kext" },
24 { "SMCDellSensors.kext", "VirtualSMC.kext" },
25 { "SMCLightSensor.kext", "VirtualSMC.kext" },
26 { "SMCProcessor.kext", "VirtualSMC.kext" },
27 { "SMCSuperIO.kext", "VirtualSMC.kext" },
28 { "AppleALC.kext", "Lilu.kext" },
29 { "AppleALCU.kext", "Lilu.kext" },
30 { "AirportBrcmFixup.kext", "Lilu.kext" },
31 { "BrightnessKeys.kext", "Lilu.kext" },
32 { "CpuTscSync.kext", "Lilu.kext" },
33 { "CPUFriend.kext", "Lilu.kext" },
34 { "CPUFriendDataProvider.kext", "CPUFriend.kext" },
35 { "CryptexFixup.kext", "Lilu.kext" },
36 { "DebugEnhancer.kext", "Lilu.kext" },
37 { "HibernationFixup.kext", "Lilu.kext" },
38 { "NVMeFix.kext", "Lilu.kext" },
39 { "RestrictEvents.kext", "Lilu.kext" },
40 { "RTCMemoryFixup.kext", "Lilu.kext" },
41 { "FeatureUnlock.kext", "Lilu.kext" },
42 { "MacHyperVSupport.kext", "Lilu.kext" },
43 { "BlueToolFixup.kext", "Lilu.kext" },
44 { "VoodooPS2Controller.kext/Contents/PlugIns/VoodooPS2Keyboard.kext", "VoodooPS2Controller.kext" },
45 { "VoodooPS2Controller.kext/Contents/PlugIns/VoodooPS2Mouse.kext", "VoodooPS2Controller.kext" },
46 { "VoodooPS2Controller.kext/Contents/PlugIns/VoodooPS2Trackpad.kext", "VoodooPS2Controller.kext" },
47};
49
51 //
52 // NOTE: Index of Lilu should always be 0. Please add entries after this if necessary.
53 //
54 { "Lilu.kext", "Contents/MacOS/Lilu", "Contents/Info.plist" },
55 //
56 // NOTE: Index of VirtualSMC should always be 1. Please add entries after this if necessary.
57 //
58 { "VirtualSMC.kext", "Contents/MacOS/VirtualSMC", "Contents/Info.plist" },
59 { "WhateverGreen.kext", "Contents/MacOS/WhateverGreen", "Contents/Info.plist" },
60 { "SMCBatteryManager.kext", "Contents/MacOS/SMCBatteryManager", "Contents/Info.plist" },
61 { "SMCDellSensors.kext", "Contents/MacOS/SMCDellSensors", "Contents/Info.plist" },
62 { "SMCLightSensor.kext", "Contents/MacOS/SMCLightSensor", "Contents/Info.plist" },
63 { "SMCProcessor.kext", "Contents/MacOS/SMCProcessor", "Contents/Info.plist" },
64 { "SMCSuperIO.kext", "Contents/MacOS/SMCSuperIO", "Contents/Info.plist" },
65 { "AppleALC.kext", "Contents/MacOS/AppleALC", "Contents/Info.plist" },
66 { "AppleALCU.kext", "Contents/MacOS/AppleALCU", "Contents/Info.plist" },
67 { "AirportBrcmFixup.kext", "Contents/MacOS/AirportBrcmFixup", "Contents/Info.plist" },
68 { "AirportBrcmFixup.kext/Contents/PlugIns/AirPortBrcm4360_Injector.kext", "", "Contents/Info.plist" },
69 { "AirportBrcmFixup.kext/Contents/PlugIns/AirPortBrcmNIC_Injector.kext", "", "Contents/Info.plist" },
70 { "BrightnessKeys.kext", "Contents/MacOS/BrightnessKeys", "Contents/Info.plist" },
71 { "CpuTscSync.kext", "Contents/MacOS/CpuTscSync", "Contents/Info.plist" },
72 { "CPUFriend.kext", "Contents/MacOS/CPUFriend", "Contents/Info.plist" },
73 { "CPUFriendDataProvider.kext", "", "Contents/Info.plist" },
74 { "CryptexFixup.kext", "Contents/MacOS/CryptexFixup", "Contents/Info.plist" },
75 { "DebugEnhancer.kext", "Contents/MacOS/DebugEnhancer", "Contents/Info.plist" },
76 { "EmeraldSDHC.kext", "Contents/MacOS/EmeraldSDHC", "Contents/Info.plist" },
77 { "HibernationFixup.kext", "Contents/MacOS/HibernationFixup", "Contents/Info.plist" },
78 { "NVMeFix.kext", "Contents/MacOS/NVMeFix", "Contents/Info.plist" },
79 { "RestrictEvents.kext", "Contents/MacOS/RestrictEvents", "Contents/Info.plist" },
80 { "RTCMemoryFixup.kext", "Contents/MacOS/RTCMemoryFixup", "Contents/Info.plist" },
81 { "FeatureUnlock.kext", "Contents/MacOS/FeatureUnlock", "Contents/Info.plist" },
82 { "MacHyperVSupport.kext", "Contents/MacOS/MacHyperVSupport", "Contents/Info.plist" },
83 { "IntelMausi.kext", "Contents/MacOS/IntelMausi", "Contents/Info.plist" },
84 { "IntelSnowMausi.kext", "Contents/MacOS/IntelSnowMausi", "Contents/Info.plist" },
85 { "BrcmBluetoothInjector.kext", "", "Contents/Info.plist" },
86 { "BrcmBluetoothInjectorLegacy.kext", "", "Contents/Info.plist" },
87 { "BlueToolFixup.kext", "Contents/MacOS/BlueToolFixup", "Contents/Info.plist" },
88 { "BrcmFirmwareData.kext", "Contents/MacOS/BrcmFirmwareData", "Contents/Info.plist" },
89 //
90 // NOTE: BrcmFirmwareRepo.kext cannot be injected by the bootloader; when it is present, an error should be prompted.
91 //
92 { "BrcmFirmwareRepo.kext", "Contents/MacOS/BrcmFirmwareRepo", "Contents/Info.plist" },
93 { "BrcmNonPatchRAM.kext", "Contents/MacOS/BrcmNonPatchRAM", "Contents/Info.plist" },
94 { "BrcmNonPatchRAM2.kext", "Contents/MacOS/BrcmNonPatchRAM2", "Contents/Info.plist" },
95 { "BrcmPatchRAM.kext", "Contents/MacOS/BrcmPatchRAM", "Contents/Info.plist" },
96 { "BrcmPatchRAM2.kext", "Contents/MacOS/BrcmPatchRAM2", "Contents/Info.plist" },
97 { "BrcmPatchRAM3.kext", "Contents/MacOS/BrcmPatchRAM3", "Contents/Info.plist" },
98 { "Legacy_USB3.kext", "", "Contents/Info.plist" },
99 { "Legacy_InternalHub-EHCx.kext", "", "Contents/Info.plist" },
100 { "WebCamera.kext", "", "Contents/Info.plist" },
101 { "UEFIGraphicsFB.kext", "Contents/MacOS/UEFIGraphicsFB", "Contents/Info.plist" },
102 { "VoodooPS2Controller.kext", "Contents/MacOS/VoodooPS2Controller", "Contents/Info.plist" },
103 { "VoodooPS2Controller.kext/Contents/PlugIns/VoodooPS2Keyboard.kext", "Contents/MacOS/VoodooPS2Keyboard", "Contents/Info.plist" },
104 { "VoodooPS2Controller.kext/Contents/PlugIns/VoodooPS2Mouse.kext", "Contents/MacOS/VoodooPS2Mouse", "Contents/Info.plist" },
105 { "VoodooPS2Controller.kext/Contents/PlugIns/VoodooPS2Trackpad.kext", "Contents/MacOS/VoodooPS2Trackpad", "Contents/Info.plist" },
106 { "VoodooPS2Controller.kext/Contents/PlugIns/VoodooInput.kext", "Contents/MacOS/VoodooInput", "Contents/Info.plist" },
107};
109
110VOID
112 VOID
113 )
114{
115 //
116 // Ensure Lilu and VirtualSMC to be always placed where it is supposed to be.
117 //
118 ASSERT (AsciiStrCmp (mKextInfo[INDEX_KEXT_LILU].KextBundlePath, "Lilu.kext") == 0);
119 ASSERT (AsciiStrCmp (mKextInfo[INDEX_KEXT_LILU].KextExecutablePath, "Contents/MacOS/Lilu") == 0);
120 ASSERT (AsciiStrCmp (mKextInfo[INDEX_KEXT_LILU].KextPlistPath, "Contents/Info.plist") == 0);
121
122 ASSERT (AsciiStrCmp (mKextInfo[INDEX_KEXT_VSMC].KextBundlePath, "VirtualSMC.kext") == 0);
123 ASSERT (AsciiStrCmp (mKextInfo[INDEX_KEXT_VSMC].KextExecutablePath, "Contents/MacOS/VirtualSMC") == 0);
124 ASSERT (AsciiStrCmp (mKextInfo[INDEX_KEXT_VSMC].KextPlistPath, "Contents/Info.plist") == 0);
125}
#define ARRAY_SIZE(Array)
Definition AppleMacEfi.h:34
VOID ValidateKextInfo(VOID)
Definition KextInfo.c:111
KEXT_INFO mKextInfo[]
Definition KextInfo.c:50
UINTN mKextInfoSize
Definition KextInfo.c:108
UINTN mKextPrecedenceSize
Definition KextInfo.c:48
KEXT_PRECEDENCE mKextPrecedence[]
Definition KextInfo.c:20
#define INDEX_KEXT_LILU
Definition KextInfo.h:19
#define INDEX_KEXT_VSMC
Definition KextInfo.h:20
#define ASSERT(x)
Definition coder.h:55