diff --git a/Resources/ModelArray.py b/Resources/ModelArray.py
index d33648952..32090a85c 100644
--- a/Resources/ModelArray.py
+++ b/Resources/ModelArray.py
@@ -559,3 +559,155 @@ Xacmini = [
"Macmini6,1",
"Macmini6,2",
]
+
+EHCI = [
+ "MacPro3,1"
+]
+
+EHC1 = [
+ "MacBook5,1",
+ "MacBook5,2",
+ "MacBook6,1",
+ "MacBook7,1",
+ "MacBookAir2,1",
+ "MacBookAir3,1",
+ "MacBookAir3,2",
+ "MacBookAir4,1",
+ "MacBookAir4,2",
+ "MacBookAir5,1",
+ "MacBookAir5,2",
+ "MacBookPro3,1",
+ "MacBookPro4,1",
+ "MacBookPro5,1",
+ "MacBookPro5,2",
+ "MacBookPro5,3",
+ "MacBookPro5,4",
+ "MacBookPro5,5",
+ "MacBookPro6,1",
+ "MacBookPro6,2",
+ "MacBookPro7,1",
+ "MacBookPro8,1",
+ "MacBookPro8,2",
+ "MacBookPro8,3",
+ "MacBookPro9,1",
+ "MacBookPro9,2",
+ "MacBookPro10,1",
+ "MacBookPro10,2",
+ "Macmini3,1",
+ "Macmini4,1",
+ "Macmini5,1",
+ "Macmini5,2",
+ "Macmini5,3",
+ "Macmini6,1",
+ "Macmini6,2",
+ "iMac7,1",
+ "iMac8,1",
+ "iMac9,1",
+ "iMac10,1",
+ "iMac11,1",
+ "iMac11,2",
+ "iMac11,3",
+ "iMac12,1",
+ "iMac12,2",
+ "iMac13,1",
+ "iMac13,2",
+ "iMac14,1",
+ "iMac14,2",
+ "iMac14,3",
+ "MacPro4,1",
+ "MacPro5,1",
+]
+
+EHC2 = [
+ "MacBook5,1",
+ "MacBook5,2",
+ "MacBook6,1",
+ "MacBook7,1",
+ "MacBookAir2,1",
+ "MacBookAir3,1",
+ "MacBookAir3,2",
+ "MacBookAir4,1",
+ "MacBookAir4,2",
+ "MacBookAir5,1",
+ "MacBookAir5,2",
+ "MacBookPro3,1",
+ "MacBookPro4,1",
+ "MacBookPro5,1",
+ "MacBookPro5,2",
+ "MacBookPro5,3",
+ "MacBookPro5,4",
+ "MacBookPro5,5",
+ "MacBookPro6,1",
+ "MacBookPro6,2",
+ "MacBookPro7,1",
+ "MacBookPro8,1",
+ "MacBookPro8,2",
+ "MacBookPro8,3",
+ "MacBookPro9,1",
+ "MacBookPro9,2",
+ "MacBookPro10,1",
+ "MacBookPro10,2",
+ "Macmini3,1",
+ "Macmini4,1",
+ "Macmini5,1",
+ "Macmini5,2",
+ "Macmini5,3",
+ "Macmini6,1",
+ "Macmini6,2",
+ "iMac7,1",
+ "iMac8,1",
+ "iMac9,1",
+ "iMac10,1",
+ "iMac11,1",
+ "iMac11,2",
+ "iMac11,3",
+ "iMac12,1",
+ "iMac12,2",
+ "iMac13,1",
+ "iMac13,2",
+ "iMac14,1",
+ "iMac14,2",
+ "iMac14,3",
+ "MacPro4,1",
+ "MacPro5,1",
+]
+
+OHC1 = [
+ "MacBook5,1",
+ "MacBook5,2",
+ "MacBook6,1",
+ "MacBook7,1",
+ "MacBookAir2,1",
+ "MacBookAir3,1",
+ "MacBookAir3,2",
+ "MacBookAir5,1",
+ "MacBookAir5,2",
+ "MacBookPro3,1",
+ "MacBookPro4,1",
+ "MacBookPro5,1",
+ "MacBookPro5,2",
+ "MacBookPro5,3",
+ "MacBookPro5,4",
+ "MacBookPro5,5",
+ "MacBookPro7,1",
+ "Macmini3,1",
+ "Macmini4,1",
+ "iMac7,1",
+ "iMac8,1",
+ "iMac9,1",
+ "iMac10,1",
+]
+
+IHEHC1 = [
+ "iMac13,1",
+ "iMac13,2",
+ "iMac13,3"
+]
+
+IHEHC2 = [
+ "MacBookPro9,1"
+]
+
+IH = [
+ "MacPro6,1"
+]
\ No newline at end of file
diff --git a/Resources/build.py b/Resources/build.py
index a803dad11..4e51b8ec3 100644
--- a/Resources/build.py
+++ b/Resources/build.py
@@ -128,6 +128,62 @@ class BuildOpenCore:
Path(self.constants.map_kext_folder).mkdir()
Path(self.constants.map_contents_folder).mkdir()
shutil.copy(usb_map_path, self.constants.map_contents_folder)
+ self.get_kext_by_bundle_path("USB-Map.kext")["Enabled"] = True
+ self.new_map_ls = Path(self.constants.map_contents_folder) / Path(f"Info.plist")
+ self.map_config = plistlib.load(Path(self.new_map_ls).open("rb"))
+
+ # TODO: Set check as global variable
+ if self.model in ModelArray.MacBookAir61:
+ print("- Spoofing to MacBookAir6,1")
+ spoofed_map = "MacBookAir6,1"
+ elif self.model in ModelArray.MacBookAir62:
+ print("- Spoofing to MacBookAir6,2")
+ spoofed_map = "MacBookAir6,2"
+ elif self.model in ModelArray.MacBookPro111:
+ print("- Spoofing to MacBookPro11,1")
+ spoofed_map = "MacBookPro11,1"
+ elif self.model in ModelArray.MacBookPro113:
+ print("- Spoofing to MacBookPro11,3")
+ spoofed_map = "MacBookPro11,3"
+ elif self.model in ModelArray.Macmini71:
+ print("- Spoofing to Macmini7,1")
+ spoofed_map = "Macmini7,1"
+ elif self.model in ModelArray.iMac151:
+ print("- Spoofing to iMac15,1")
+ spoofed_map = "iMac15,1"
+ elif self.model in ModelArray.iMac144:
+ print("- Spoofing to iMac14,4")
+ spoofed_map = "iMac14,4"
+ elif self.model in ModelArray.MacPro71:
+ print("- Spoofing to MacPro7,1")
+ spoofed_map = "MacPro7,1"
+ self.map_config["IOKitPersonalities_x86_64"][self.model]["model"] = spoofed_map
+ if self.model in ModelArray.EHCI:
+ model_EHCI = f"{self.model}-EHCI"
+ self.map_config["IOKitPersonalities_x86_64"][model_EHCI]["model"] = spoofed_map
+ if self.model in ModelArray.EHC1:
+ model_EHC1 = f"{self.model}-EHC1"
+ self.map_config["IOKitPersonalities_x86_64"][model_EHC1]["model"] = spoofed_map
+ if self.model in ModelArray.EHC2:
+ model_EHC2 = f"{self.model}-EHC2"
+ self.map_config["IOKitPersonalities_x86_64"][model_EHC2]["model"] = spoofed_map
+ if self.model in ModelArray.OHC1:
+ model_OHC1 = f"{self.model}-OHC1"
+ model_OHC2 = f"{self.model}-OHC2"
+ self.map_config["IOKitPersonalities_x86_64"][model_OHC1]["model"] = spoofed_map
+ self.map_config["IOKitPersonalities_x86_64"][model_OHC2]["model"] = spoofed_map
+ if self.model in ModelArray.IHEHC1:
+ model_IHEHC1 = f"{self.model}-InternalHub-EHC1"
+ model_IHEHC1IH = f"{self.model}-InternalHub-EHC1-InternalHub"
+ self.map_config["IOKitPersonalities_x86_64"][model_IHEHC1]["model"] = spoofed_map
+ self.map_config["IOKitPersonalities_x86_64"][model_IHEHC1IH]["model"] = spoofed_map
+ if self.model in ModelArray.IHEHC2:
+ model_IHEHC2 = f"{self.model}-InternalHub-EHC2"
+ self.map_config["IOKitPersonalities_x86_64"][model_IHEHC2]["model"] = spoofed_map
+ if self.model in ModelArray.IH:
+ model_IH = f"{self.model}-InternalHub"
+ self.map_config["IOKitPersonalities_x86_64"][model_IH]["model"] = spoofed_map
+ plistlib.dump(self.map_config, Path(self.new_map_ls).open("wb"), sort_keys=True)
if self.model in ModelArray.DualGPUPatch:
print("- Adding dual GPU patch")
@@ -145,6 +201,7 @@ class BuildOpenCore:
def set_smbios(self):
spoofed_model = self.model
+ # TODO: Set check as global variable
if self.model in ModelArray.MacBookAir61:
print("- Spoofing to MacBookAir6,1")
spoofed_model = "MacBookAir6,1"
diff --git a/payloads/Kexts/Maps/Universal/USB-Map.kext/Contents/Info.plist b/payloads/Kexts/Maps/Universal/USB-Map.kext/Contents/Info.plist
index ce794a9e7..b82f8d492 100644
--- a/payloads/Kexts/Maps/Universal/USB-Map.kext/Contents/Info.plist
+++ b/payloads/Kexts/Maps/Universal/USB-Map.kext/Contents/Info.plist
@@ -2986,132 +2986,6 @@
model
XacPro4,1
- MacPro5,1-EH01
-
- CFBundleIdentifier
- com.apple.driver.AppleUSBHostMergeProperties
- IOClass
- AppleUSBHostMergeProperties
- IONameMatch
- EH01
- IOProviderClass
- AppleUSBEHCIPCI
- IOProviderMergeProperties
-
- port-count
- BgAAAA==
- ports
-
- PRT1
-
- UsbConnector
- 0
- port
- AQAAAA==
-
- PRT2
-
- UsbConnector
- 255
- port
- AgAAAA==
-
- PRT3
-
- UsbConnector
- 0
- port
- AwAAAA==
-
- PRT4
-
- UsbConnector
- 255
- port
- BAAAAA==
-
- PRT5
-
- UsbConnector
- 0
- port
- BQAAAA==
-
- PRT6
-
- UsbConnector
- 255
- port
- BgAAAA==
-
-
-
- model
- XacPro5,1
-
- MacPro5,1-EH02
-
- CFBundleIdentifier
- com.apple.driver.AppleUSBHostMergeProperties
- IOClass
- AppleUSBHostMergeProperties
- IONameMatch
- EH02
- IOProviderClass
- AppleUSBEHCIPCI
- IOProviderMergeProperties
-
- port-count
- BgAAAA==
- ports
-
- PRT1
-
- UsbConnector
- 255
- port
- AQAAAA==
-
- PRT2
-
- UsbConnector
- 0
- port
- AgAAAA==
-
- PRT3
-
- UsbConnector
- 255
- port
- AwAAAA==
-
- PRT4
-
- UsbConnector
- 0
- port
- BAAAAA==
-
- PRT5
-
- UsbConnector
- 255
- port
- BQAAAA==
-
- PRT6
-
- UsbConnector
- 255
- port
- BgAAAA==
-
-
-
- model
- XacPro5,1
-
Macmini3,1-EHC1
CFBundleIdentifier