Add Aquantia

This commit is contained in:
Jazzzny
2023-07-14 11:36:02 -04:00
parent 41ef1cefd8
commit d7540fdd5b
6 changed files with 57 additions and 0 deletions

View File

@@ -13,6 +13,9 @@
- Applicable to 3802-based GPUs (ie. Intel Ivy Bridge and Haswell iGPUs, Nvidia Kepler dGPUs) - Applicable to 3802-based GPUs (ie. Intel Ivy Bridge and Haswell iGPUs, Nvidia Kepler dGPUs)
- Remove MacBook4,1 references - Remove MacBook4,1 references
- Machine was never properly supported by OCLP - Machine was never properly supported by OCLP
- Restore support for Aquantia Aqtion 10GBe Ethernet for Pre-VT-d systems on 12.3 and newer
- i.e. MacPro5,1 with AQC107 expansion card running macOS Ventura/Monterey 12.6.x
- Thanks [@jazzzny](https://github.com/jazzzny)
- Backend Changes: - Backend Changes:
- device_probe.py: - device_probe.py:
- Add USB device parsing via `IOUSBDevice` class - Add USB device parsing via `IOUSBDevice` class

View File

@@ -1581,6 +1581,42 @@
<key>PlistPath</key> <key>PlistPath</key>
<string>Contents/Info.plist</string> <string>Contents/Info.plist</string>
</dict> </dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>Comment</key>
<string>Aquantia Ethernet Patch - Core</string>
<key>Enabled</key>
<false/>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>21.4.0</string>
<key>BundlePath</key>
<string>AppleEthernetAbuantiaAqtion.kext</string>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleEthernetAbuantiaAqtion</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>Comment</key>
<string>Aquantia Ethernet Patch - Firmware</string>
<key>Enabled</key>
<false/>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>21.4.0</string>
<key>BundlePath</key>
<string>AppleEthernetAbuantiaAqtionFirmware.kext</string>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleEthernetAbuantiaAqtionFirmware</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
</array> </array>
<key>Block</key> <key>Block</key>
<array/> <array/>

View File

@@ -64,6 +64,12 @@ class BuildWiredNetworking:
elif isinstance(controller, device_probe.Marvell) or isinstance(controller, device_probe.SysKonnect): elif isinstance(controller, device_probe.Marvell) or isinstance(controller, device_probe.SysKonnect):
support.BuildSupport(self.model, self.constants, self.config).enable_kext("MarvelYukonEthernet.kext", self.constants.marvel_version, self.constants.marvel_path) support.BuildSupport(self.model, self.constants, self.config).enable_kext("MarvelYukonEthernet.kext", self.constants.marvel_version, self.constants.marvel_path)
# Pre-Ivy Bridge Aquantia Ethernet Patch
if isinstance(controller, device_probe.Aquantia) and controller.chipset == device_probe.Aquantia.Chipsets.AppleEthernetAquantiaAqtion:
if smbios_data.smbios_dictionary[self.model]["CPU Generation"] < cpu_data.CPUGen.ivy_bridge.value:
support.BuildSupport(self.model, self.constants, self.config).enable_kext("AppleEthernetAbuantiaAqtion.kext", self.constants.aquantia_version, self.constants.aquantia_path)
support.BuildSupport(self.model, self.constants, self.config).enable_kext("AppleEthernetAbuantiaAqtionFirmware.kext", self.constants.aquantiafirmware_version, self.constants.aquantiafirmware_path)
def _prebuilt_assumption(self) -> None: def _prebuilt_assumption(self) -> None:
""" """

View File

@@ -73,6 +73,10 @@ class Constants:
self.bigsursdxc_version: str = "1.0.0" # BigSurSDXC self.bigsursdxc_version: str = "1.0.0" # BigSurSDXC
self.monterey_ahci_version: str = "1.0.0" # CatalinaAHCI self.monterey_ahci_version: str = "1.0.0" # CatalinaAHCI
## Apple - Jazzzny Modified
self.aquantia_version: str = "1.0.0" # AppleEthernetAbuantiaAqtion
self.aquantiafirmware_version: str = "1.0.0" # AppleEthernetAbuantiaAqtionFirmware
## Dortania ## Dortania
## https://github.com/dortania ## https://github.com/dortania
self.backlight_injector_version: str = "1.1.0" # BacklightInjector self.backlight_injector_version: str = "1.1.0" # BacklightInjector
@@ -342,6 +346,14 @@ class Constants:
def bcm570_path(self): def bcm570_path(self):
return self.payload_kexts_path / Path(f"Ethernet/CatalinaBCM5701Ethernet-v{self.bcm570_version}.zip") return self.payload_kexts_path / Path(f"Ethernet/CatalinaBCM5701Ethernet-v{self.bcm570_version}.zip")
@property
def aquantia_path(self):
return self.payload_kexts_path / Path(f"Ethernet/AppleEthernetAbuantiaAqtion-v{self.aquantia_version}.zip")
@property
def aquantiafirmware_path(self):
return self.payload_kexts_path / Path(f"Ethernet/AppleEthernetAbuantiaAqtionFirmware-v{self.aquantiafirmware_version}.zip")
@property @property
def i210_path(self): def i210_path(self):
return self.payload_kexts_path / Path(f"Ethernet/CatalinaIntelI210Ethernet-v{self.i210_version}.zip") return self.payload_kexts_path / Path(f"Ethernet/CatalinaIntelI210Ethernet-v{self.i210_version}.zip")