Athirne
Members-
Posts
10 -
Joined
-
Last visited
Reputation
1 NeutralRecent Profile Visitors
The recent visitors block is disabled and is not being shown to other users.
-
So for YOLO I decided to get a new rig going to step up from my Z390 Taichi and wanted to share progress and steps to get where I am at. Hope to make this a full guide in the end so anyone can reproduce if they want. Namely I did this because the USB subsystem became to unpredictable on my last hack so I decided to make a new monstrocity because I have been tinkering making hack macs since in 2005 I took the Dev Kit bits and started hacking onto P4 machines in a college lab. I like challenges and normally start with unsupported to slowly work on getting something usable. I don't recommend this build yet until its a bit more stable and I have time to work through every last thing. Its totally usable now hence why I am writing this now. Build components [changing over time]: Intel 11700k Rocket Lake -S CPU [Now worth it since you can get it for a bit over 300 USD at time of writing in the discount + sale + bundles pricing] Gigabyte Z590 Vision D [ $$$ but I wanted to play with native thunderbolt and the new ALC codec that hangs off the USB subsystem] g.Skill 3466 DDR4 32 GB kit [re-used] XFX Radeon VII [ re-used & will swap with 6800 XT which is supported starting in 11.4] 2 TB Samsung 970 NVME SSD [ re-used ] Aquantia 10 GBe NIC [Asus & re-used ] Airport Extreme 802.11 AC Wave 2 in PCIe [Re-used and will replace with onboard Intel AX + BT 5.0 setup when I have time built into the new mainboard] What Works: Boot, basic power states on CPU, GPU, USB, Storage, 10 GBe add-in, onboard 2.5 gbe nics, Apple wifi, audio, updates Good for daily production use. No crashes, no kernel panics, feels nice but still some work to do. What is still a WIP: Final USB port mapping [ right now still running usbport limit patch using std USBAll kext ] Full Thunderbolt 4 Onboard wifi + bt replacing Apple wifi Full sleep, wake, fine grained power state [aka not treating 11th gen as older gen CPU] iGPU [may never come] non-cpuid patched [may never come] Getting all the built-in security stuff going to make it think its more of a generic full mac [Full Disk Encryption, Apple Secure Boot, etc, etc] clean up and final tuning of ACPI tables, cosmetic things, and cleaning up verbose errors. [if Intel never supports RocketLake-S natively this may never be fully done] Steps: You will need the following: Use the Olarila Big Sur 11.2 Raw image and slip on the solid 11th gen/500 series EFI folder bits onto the EFI boot partition for the disk [no need to re-invent the wheel here for install] You will want the following on the side for post install: [Feel free to stick with Olarila stuff if you want to, I just like to tweak and build up to a clean solution for the learning experience, and I like using OpenCore to boot my other OSs too] Latest OpenCore (0.6.8 at this time), OC configurator, LILU, VirtualSMC, IntelMausi, USBInjectAll, Whatevergreen, itlwm, Intel Bluetooth Keep a browser tab open with the OpenCore Install Guide See the "CPUID for Rocket Lake Processors" in the Olarila page? Yah you are going to need that. Use the raw image and EFI folder bits from Olarila to install 11.2 and get into the install for the first time making sure to do your BIOS changes like a Z490. Yah stuff isn't great yet but we can fix most of that to get missing stuff specific to this hardware and get closer and closer to a decent hack together for daily work. Dont be suprised if the first boot results in a reboot, the second time will work. Now that your in lets make this a psudo z490 based system with tweaks for our unsupported hardware. Have the OpenCore guide open? good! I suggest at this point having the following windows open: this page, the OpenCore Install Guide on the Configs -> Commet Lake Intel Desktop Config page, Open Core Configurator that supports your OC release, and the folder for your files get a sample plist from Open Core Config for 0.6.8 (in this example) and clear out all the placeholders in the Open Core Config utility. ACPI section: Since we are going with minimum edits right now of the system boot ACPI tables we want the following pre-compiled ssdts linked off of the comet lake ACPI guide: SSDT-PLUG, SSDT-EC-USBX, SSDT-AWAC [skip SSDT-RHUB since we dont need it], No quirks checked. [your delete and patch should be clear]. Booter: Nothing under Mimo and Patch sections, Quirks are: AvoidRuntimeDefrag, Devirtualizemmimo, Enablesafemodeslide, Protectuefiservices, providecustomslide, max slide is default of 0, rebuildapplememorymap, syncruntimepermissions [everything else unchecked]. DeviceProperties: Clear this out We dont need to set an codec for this mainboard (its just a USB attached ALC device), IGPU isnt supported for this generation, and there isnt much else to do atm. Kernel: Ok there is a lot to do here... lets start simple... Add - All those kexts we grabbed you want to set up and add [from VirtualSMC I ahve VirtualSMC, SMCProcessor, and SMCSuperIO]. Right now I have all the Intel wifi and bluetooth stuff added but not enabled because I don't have the time to get those working and my old wifi card pulled out [stupid needing to sleep and wake up for work] block & Force - nothing Patch... set IDENTIFIER to com.apple.driver.AppleEthernetAquantiaAqtion with a FIND of "0F84C002 0000" and REPLACE of "660F1F44 0000" This is the fix for the Aquantia 10 GB NIC not being detected due to a detection logic issue Apple changed in a update to big sur. Dont have one of these cards? No need to have it then. fake the 2.5gbe controller to use built in kext? set IDENTIFIER to com.apple.driver.AppleIntelI210Ethernet with a FIND of "F2150000" & REPLACE of "F3150000" Emulate section: Lets go ahead and use Olarila's recomendation values of cpuid1Data: "EB060900 00000000 00000000 00000000" & CPUid1Mask "FFFFFFFF 00000000 00000000 00000000" leave this other section blank/unchecked. Scheme: fuzzymatch enabled, I like to set my arch to x86_64 and cache to Auto. Quirks: ApplexCPMCfgLock, DisableioMapper, Disablelinkeditjettison, panicnokextdump, powertimeoutkernelpanic, apfstrimtimeout "-1", XhciPortLimit. Everything else unchecked. [I have VT-D enabled in BIOS hence IOMapper entry] MISC: I like prettiness. So I set picker to external, atribute 17, variant modern, show picker. You can get the Resource folder stuff from HERE Personally I leave the debug and security stuff to defaults until I get to those or need them. I just for now make sure securebootmodel is default and vault is optional. NVRAM: You can remove the alcid=1 part in the defaults since we dont use a codec selection. You can also fix the kb lang if you want to local or just leave it blank. I do like going into "4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14" and setting my UIScale to 02 for HighDPI support for my 4k panels. No need for a rtc-blacklist entry. PaltformInfo: Ok here we get to something that some may disagree. I use a iMac20,1 base rather then a MacPro or iMacPro base. Yes the architecture is a bit different but the 20,1 is the closest we have to what this platform actually is. Z590 is a modification of the z490 with a lot of changes that have been waiting (PCIe 4.0, better DMI, etc). The CPU also is a back-ported 10nm architecture back to 14nm (thats where those extra 2 cores went from the i9, literally no extra space on the package). You can make a more generic platform but to my mind this is close enough for daily work though I am sure for some devices treating the z590 like the z490 might cause issues but for this mainboard and CPU config it seems to be good enough. I set Automatic, UpdateDataHub, UpdateNVRAM, UpdateSMBIOS, and the update mode to create. Do the usual generation of the SN, UUID, and Product name how ever you want to do this and test those SNs to make sure they arent in use by a real mac. [dont be a jerk] UEFI: APFS - Enable Jumpstart, HideVerbose, set your Mins to 0 AppleInput - Will work on this latter when I get to FSD aka FileVault Audio - One day I will get that wonderful chime back but for now I am skipping Drivers - I have AudioDXE.efi in there and ready, OpenCanopy, OpenHfsPlus, and OpenRuntime. Connect drivers checked Input - Defaults work good enough for me. Output - BuiltinGraphics, Resolution "Max", ProvideConsoleGop ProtocolOverides - FirmwareVolume ReservedMemory - blank Quirks at the bottom - RequestBootVarRouting checked Whew that was a lot. Again not perfect and people may prefer other ways or just use the generic Olarila ACPI and config.plist. It works just change and generate a new platforminfo section. Again I like doing things a bit differently to learn more about my system and learn more about OpenCore and read the good detailed explanations on the OpenCore guide. Build your new EFI partition off of your BigSur Drive. Remember you want your EFI folder in the EFI volume... dont just move your BOOT and OC stuff into the root of the EFI drive. BOOT should just contain your BOOTx64.efi OC Folder is going to have the config.plist we just made. ACPI is going to have your SDTs for AWACS, EC-USBX, & PLUG. Drivers is going to have your AudioDxe, OpenCanopy, OpenHfsPlus, and OpenRuntime efi files. All of your kexts go in Kexts. Those Resources files you got earlier all go in their equivilent folder under your /EFI/EFI/OC/Resources folder. Tools go to Tools. Sanity check time. double check your KEXTS, Drivers, ACPI areas in your config using OpenCore Configurator. Feel free to clear everything out of the Add entries again and hit Scan/Browse to see the right files and paths pull in updated. Something missing or looking wrong? Double check your folder and file structure in the EFI path. Save, reboot, cross your fingers, and boot from your new EFI partition on your Mac OS SSD. But what about... audio? Realtek USB 2.0 Audio IS the new audio device for the onboard audio controller for this mainboard. It's now hanging off of the USB Bus. No AppleALC or codecs needed. I just need to poke it a bit and I am sure a few renames will make it super easy to use but thats for another day for me. Right now its just detected as a generic but super usable USB Audio device. onboard wireleess? thats on my to-do list but the kexts are there that support it. I just need to do a half day working on it and document the results here. Hay its a work in progress. USB mapping? Everyone has different devices attached. I need to go through this myself but I will document my findings and what connects to what soon enough. All the ports are working right now but not optimal. You can go through this yourself using THIS INFO Thunderbolt? After I am done port mapping I will work on this. Should be do-able. Sleep? Yes I will be going to sleep soon enough. But I did all of this including the tare down, setup new care, and re-do everything in 2 hours. I will have another slow day eventually and will get to this. File Vault & Security? Ditto for the above. This is a lower priority thing for me. Boot Chime? This is the final thing I do on my systems. Makes me feel like I am finally done. Shouldnt be to hard to do once I finish everything else.
- 1 reply
-
- 1
-
-
Thanks for the lead, got the NIC going [TLDR originally you could set Built-In and it would just work or would work out of the box, now you need to do a new modification in OS 11.x]. Updated my original Aquantia thread for Big Sur with the working patch for other people trying to find the answer without going through several pages. Need an updated runme for the DSDT? [no rush]
-
Interesting now a kext patch is needed for even out of the box working NICs in prior versions because it no longer accepts Built-In as a matching condition. Thanks for the link to the thread here. This works for 11.0 GM to at least 11.2 Beta 1 For those with the same issue you need to actually do this patch [it changed a few times with Big Sur]... Kext to patch com.apple.driver.AppleEthernetAquantiaAqtion Find 0F84C002 0000 Replace 660F1F44 0000
-
Aquantia AQC-107 is the ethernet controller Worked under 10.15.x as auto-discovered. conversation on trying to address it directly was: My theory at this point is that its an issue with how kexts detect and load in 11.x vs 10.15.x like for the Aquantia kext to load it now has to have a proper PCIe configuration in SMBIOS and the extra garbage in PC DSDT is stopping it. Odd thing is it sees the PCIE device, sees it is a Network Controller type, it just doesn't want to load the kext to allow the device to be used as a network controller so the network services cant communicate with it.
-
Req dsdt for Z390 Taichi FW 4.30 https://drive.google.com/file/d/18_nLRdA14DYlKmPbJF7ywpD3_PULpp_V/view?usp=sharing Hope a good DSDT can help me with my Aquantia issue. *fingers crossed*
-
Ok maybe I screwed this up but still not coming, maybe I messed up the <key>Patch</key> <array> <dict> <key>Arch</key> <string>Any</string> <key>Base</key> <string></string> <key>Comment</key> <string>Aquantia 10GBe Patch</string> <key>Count</key> <integer>0</integer> <key>Enabled</key> <true/> <key>Find</key> <data>YnVpbHQtaW4=</data> <key>Identifier</key> <string>com.apple.driver.AppleEthernetAquantiaAqtion</string> <key>Limit</key> <integer>0</integer> <key>Mask</key> <data></data> <key>MaxKernel</key> <string></string> <key>MinKernel</key> <string></string> <key>Replace</key> <data>YmJiYmJiYmI=</data> <key>ReplaceMask</key> <data></data> <key>Skip</key> <integer>0</integer> </dict> </array> Let me know if I need to upload my runme dump or if its a lost cause.
-
One of the few things I lost when converting to Big Sur has been that Mac OS no longer auto detects my Aquantia 10 gig NIC anymore. Does this need to be hard coded into your ACPI tables so I need a full custom DSDT to get it to work? DEBUG VID DID SVID SDID ASPM Vendor Name Device Name Class Name SubClass Name IOReg Name IOReg IOName Device Path ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 04:00.0 1D6A 07B1 1043 8741 L1 Aquantia Corp. AQC107 NBase-T/IEEE 802.3bz Ethernet Controller [A Network controller Ethernet controller PEG1@1,1/PEGP@0 ethernet PciRoot(0x0)/Pci(0x1,0x1)/Pci(0x0,0x0) System is Big Sur 11.1 Beta 2 Asrock Z390 using OpenCore 0.6.3& SSDT-OLARILA.aml & Sanitychecker settings for Coffee Lake desktop platform Full PCIe table: DEBUG VID DID SVID SDID ASPM Vendor Name Device Name Class Name SubClass Name IOReg Name IOReg IOName Device Path ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 00:00.0 8086 3E30 1849 3E30 Disabl Intel Corporation 8th Gen Core 8-core Desktop Processor Host Bridge/ Bridge Host bridge /PCI0@0/MCHC@0 pci8086,3e30 PciRoot(0x0)/Pci(0x0,0x0) 00:01.0 8086 1901 007F 0000 L1 Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Bridge PCI bridge /PCI0@0/PEG0@1 pci-bridge PciRoot(0x0)/Pci(0x1,0x0) 00:01.1 8086 1905 0000 0000 L1 Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Bridge PCI bridge PCI0@0/PEG1@1,1 pci-bridge PciRoot(0x0)/Pci(0x1,0x1) 00:12.0 8086 A379 1849 A379 Disabl Intel Corporation Cannon Lake PCH Thermal Controller Signal processing co Signal processing co /PCI0@0/OLAR@12 pci8086,a379 PciRoot(0x0)/Pci(0x12,0x0) 00:14.0 8086 A36D 1849 A36D Disabl Intel Corporation Cannon Lake PCH USB 3.1 xHCI Host Controller Serial bus controlle USB controller /PCI0@0/XHC@14 pci8086,a36d PciRoot(0x0)/Pci(0x14,0x0) 00:14.2 8086 A36F 1849 A36F Disabl Intel Corporation Cannon Lake PCH Shared SRAM Memory controller RAM memory CI0@0/MALD@14,2 pci8086,a36f PciRoot(0x0)/Pci(0x14,0x2) 00:16.0 8086 A360 1849 A360 Disabl Intel Corporation Cannon Lake PCH HECI Controller Communication contro Communication contro /PCI0@0/IMEI@16 pci8086,a360 PciRoot(0x0)/Pci(0x16,0x0) 01:00.0 1002 14A0 007F 0000 L1 Advanced Micro Devices, Inc. [ ??? Bridge PCI bridge 0/PEG0@1/PEGP@0 pci-bridge PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0) 04:00.0 1D6A 07B1 1043 8741 L1 Aquantia Corp. AQC107 NBase-T/IEEE 802.3bz Ethernet Controller [A Network controller Ethernet controller PEG1@1,1/PEGP@0 ethernet PciRoot(0x0)/Pci(0x1,0x1)/Pci(0x0,0x0) 00:17.0 8086 A352 1849 A352 Disabl Intel Corporation Cannon Lake PCH SATA AHCI Controller Mass storage control SATA controller /PCI0@0/SAT0@17 pci8086,a352 PciRoot(0x0)/Pci(0x17,0x0) 00:1B.0 8086 A340 0000 0000 L1 Intel Corporation Cannon Lake PCH PCI Express Root Port #17 Bridge PCI bridge /PCI0@0/RP17@1B pci-bridge PciRoot(0x0)/Pci(0x1B,0x0) 00:1B.4 8086 A32C 0000 0000 L1 Intel Corporation Cannon Lake PCH PCI Express Root Port #21 Bridge PCI bridge CI0@0/RP21@1B,4 pci-bridge PciRoot(0x0)/Pci(0x1B,0x4) 02:00.0 1002 14A1 007F 0000 L1 Advanced Micro Devices, Inc. [ ??? Bridge PCI bridge @0/pci-bridge@0 pci-bridge PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0) 00:1C.0 8086 A33E 0000 0000 L1 Intel Corporation Cannon Lake PCH PCI Express Root Port #7 Bridge PCI bridge /PCI0@0/RP07@1C pci-bridge PciRoot(0x0)/Pci(0x1C,0x0) 00:1D.0 8086 A330 0000 0000 L1 Intel Corporation Cannon Lake PCH PCI Express Root Port #9 Bridge PCI bridge /PCI0@0/RP09@1D pci-bridge PciRoot(0x0)/Pci(0x1D,0x0) 00:1D.5 8086 A335 0000 0000 L1 Intel Corporation Cannon Lake PCH PCI Express Root Port #14 Bridge PCI bridge CI0@0/RP14@1D,5 pci-bridge PciRoot(0x0)/Pci(0x1D,0x5) 00:1F.0 8086 A305 1849 A305 Disabl Intel Corporation Z390 Chipset LPC/eSPI Controller Bridge ISA bridge /PCI0@0/LPCB@1F pci8086,a305 PciRoot(0x0)/Pci(0x1F,0x0) 00:1F.3 8086 A348 1849 2221 Disabl Intel Corporation Cannon Lake PCH cAVS Multimedia controlle Audio device CI0@0/HDEF@1F,3 pci8086,a348 PciRoot(0x0)/Pci(0x1F,0x3) 00:1F.4 8086 A323 1849 A323 Disabl Intel Corporation Cannon Lake PCH SMBus Controller Serial bus controlle SMBus CI0@0/SBUS@1F,4 pci8086,a323 PciRoot(0x0)/Pci(0x1F,0x4) 00:1F.5 8086 A324 1849 A324 Disabl Intel Corporation Cannon Lake PCH SPI Controller Serial bus controlle ??? CI0@0/XSPI@1F,5 pci8086,a324 PciRoot(0x0)/Pci(0x1F,0x5) 05:00.0 144D A808 144D A801 L1 Samsung Electronics Co Ltd NVMe SSD Controller SM981/PM981/PM983 Mass storage control Non-Volatile memory /RP17@1B/PXSX@0 pci144d,a808 PciRoot(0x0)/Pci(0x1B,0x0)/Pci(0x0,0x0) 07:00.0 1B21 1184 0000 0000 L1 ASMedia Technology Inc. ASM1184e PCIe Switch Port Bridge PCI bridge /RP07@1C/PXSX@0 pci-bridge PciRoot(0x0)/Pci(0x1C,0x0)/Pci(0x0,0x0) 0A:00.0 144D A804 144D A801 L1 Samsung Electronics Co Ltd NVMe SSD Controller SM961/PM961 Mass storage control Non-Volatile memory /RP09@1D/PXSX@0 pci144d,a804 PciRoot(0x0)/Pci(0x1D,0x0)/Pci(0x0,0x0) 06:00.0 144D A808 144D A801 L1 Samsung Electronics Co Ltd NVMe SSD Controller SM981/PM981/PM983 Mass storage control Non-Volatile memory P21@1B,4/PXSX@0 pci144d,a808 PciRoot(0x0)/Pci(0x1B,0x4)/Pci(0x0,0x0) 00:1F.6 8086 15BC 1849 15BC Disabl Intel Corporation Ethernet Connection (7) I219-V Network controller Ethernet controller CI0@0/GLAN@1F,6 ethernet PciRoot(0x0)/Pci(0x1F,0x6) 0B:00.0 14E4 43A0 106B 0111 L1 Broadcom Inc. and subsidiaries BCM4360 802.11ac Wireless Network Adapter Network controller Network controller P14@1D,5/PXSX@0 pci14e4,43a0 PciRoot(0x0)/Pci(0x1D,0x5)/Pci(0x0,0x0) 03:00.0 1002 66AF 1002 081E L1 Advanced Micro Devices, Inc. [ Vega 20 [Radeon VII] Display controller VGA compatible contr bridge@0/GFX0@0 display PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0) 03:00.1 1002 AB20 1002 AB20 L1 Advanced Micro Devices, Inc. [ Vega 20 HDMI Audio [Radeon VII] Multimedia controlle Audio device idge@0/HDAU@0,1 pci1002,ab20 PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x1) 08:05.0 1B21 1184 0000 0000 L0s+L1 ASMedia Technology Inc. ASM1184e PCIe Switch Port Bridge PCI bridge @0/pci-bridge@5 pci-bridge PciRoot(0x0)/Pci(0x1C,0x0)/Pci(0x0,0x0)/Pci(0x5,0x0) pcidevices.dsl
-
Yah it seems like something caused it to miss the right update and is causing it to default to an older one. Then when it triggers update it sees that the update ID isnt valid for application to the new version and thus it loops into the fail behavior which is to grab the full installer. What is interesting is that when I get the full installer that full installer doesn't work because it says snapshotting is not supported on my volume even though it is. I wonder if they did something to detect the configuration since all of my normal macs work fine with the 4g to 4i update. I am just going to wait until the next ISO/full installer and upgrade in place from recovery media.
-
Got it working last night after another try. Had to grab a fresh image, used the latest 0.6.1 build from mid this month, and disable the vsmcgen and the two booter-* switch. After a in place upgrade and a NVRAM reset after the upgrade was done all was good. Just let it update at its own pace took a loooong time (about an hour). Deep sleep isnt working and bugs but time to try Beta 5 next.
-
After a few days of not being able to get this to work I gave up and had to go back to 10.15.6 and enjoy having my 10baseT nic back for the first time since I started using the betas. It seems like it would either fail on loading a system file and loop or failing to bring up the framebuffer (Vega Radeon VII). NVRAM reset and removing some of the variables (like vsmcgen=1) and trying the 0.6.1 OC config didnt fix it for me. Sad since a modified version of the OC config from Beta 2 worked like a champ for me across both it and Beta 3 with no tweaks (just keep kexts up to date) Asrock Z390 Taichi /w 9770k & Radeon VII GPU. Official AirPort Extreme (0x14E4, 0x111), Aquantia AQC107 based NIC. Just sharing my results for anyone with a similar config, may try again in Beta 5, but right now I need to get a bunch of work done since I lost a bit to troubleshooting.
