Contribute
Register

Z590 w/ 11th Gen Intel Rocket Lake CPU

Status
Not open for further replies.
@c-o-pr

Indeed! I was very surprised and yes I do remember I posted that answer to you the first time you'd asked. But when I posted this time however I was rather shocked you somehow didn't 'see' my response on the AppleALCU (and yes I was wondering about that too). I guess it's better late than never right?
 
Thank you very much for following up with a further hint. There's an amazing number of ways to go wrong with this stuff.

I installed AppleALCU.kext and set boot arg alcid=1. I'm pleased to find that kernel_task no longer eats a core. But there's no other upside.

So this board has something called an ALC4080. A long web article explains that it's an stepwise evolution of a ALC1220-VB with a USB interface.

According to the layout DB at Acidanthera, there are at least 4 versions of 1220, with several revs and 15–20 layouts. But 1220-VB is not in the DB.

So if I tried all those 20 layouts, what's the chance it could result in better-named or more comprehensive port list for audio devices?

This gets more confusing because the Dortania and other writeups never have any USB-specific details about audio config. They will say things like look for your device path in the IORegistry, or boot Linux and dump this specific codec device-special-file, where the whole show&tell is oriented towards PCI audio. If I wanted to submit a new layout, the entire procedure is predicated on looking up Linux dev features which don't exist for USB audio devices.

So, let's say I find a working layout, and I want to make it "more permanent," Dortania says look up the ACPI PCI nexus using gfxutil -HDEF and add the layout to DeviceProperties. Does the device path end up being for a USB port, how does this even work?

To recap, I have this odd-duck ALC, it's connected by USB, and all the docs speak in PCI.

One more minor point: this Asus z590 Hero board's TOSlink is a fullsize optical port. I don't see anything shining out of the 3.5mm port like on a Mac, although maybe it has the capability...
 
Can I ask how this fixed the issue, it worked for me too, from 60% kernel task at all times to less than 10 for most of the time,

any insight would be great. thank you 1
To be clear, AppleALCU doesn't do anything useful for my build, but unlike AppleALC (no U) it doesn't result in kernel_task burning cycles when I supply a layout ID.

As I explained in a much earlier post, I believe that interrupts get serviced through kernel_task, IOW interrupt handling is it's own process, which is a richer way of scheduling the work being driven by devices as they complete IO as compared to traditional Unix. For the lay person, my take means that kernel_task consolidates the kernel execution time belonging lots of different I/O activity driven by device interrupts.

CAVEAT EMPTOR: I MAY BE WRONG ABOVE. While searching for clues, I found the most common complaint about kernel_task buring CPU time is laptop owners with thermal overload, bad temp sensors, overheating, etc, where kernel_task efficiently squanders Intel CPU cycles to reduce load. Sort of /dev/null for process scheduler. Kernel_task gets busy when doing lots of IO too, like video, so this is why I think it's processification of device driver code.

What I found using spindump was audio DAC-related device entry points were using a lot of CPU time, and this got me to consider disabling AppleALC, whereupon the kernel_task went quiet on my otherwise idle system. The reason I saw a difference between booting from USB and booting from onboard was that the onboard OC had a layout-id configured in config.plist and the USB OC (which was otherwise the same as onboard) did not. This was a holdover from my earlier experiments looking for a suitable audio layout, where I do my testing from a thumb drive.

So my experience was a comedy of errors resulting from config that can never work right (AppleALC not "U" with USB audio) that I concocted from magical incantations I got from a recipe a Dortania that doesn't call out any distinction of USB audio from PCI audio. As to what the U version of AppleALC does: this is Config that I'm pretty sure no one here understands. I say "no one" because I have searched high-and-low for detailed explanations of AppleALC and USB audio and these seem to be orthoganal concerns. I grokked this conundrum from reading about how to add audio layouts and discovering that a key step in that book of spells requires looking up codec details that don't exist for USB audio. Imagine reading a guide that begins by saying boot Linux and dump this OS codec special file (HW nexus), but your kit doesn't have that special file but it has working Linux audio!

One thing I haven't tried yet is reading the AppleALC code. But as a seasoned systems programmer I already know there's only so far you can go towards understanding in reverse. A system must be understood to properly code it, while looking back into an unknown system through code can only provide clues which might assist understanding if you are already smart. I draw the line at these OC modules as black-boxes, because I'm not suited to being an OC module hacker and I may find after lots of effort looking backwards that I am still missing key understanding which only travels forward from the audio HW design.

So la-la-la
Hth
 
To be clear, AppleALCU doesn't do anything useful for my build, but unlike AppleALC (no U) it doesn't result in kernel_task burning cycles when I supply a layout ID.

As I explained in a much earlier post, I believe that interrupts get serviced through kernel_task, IOW interrupt handling is it's own process, which is a richer way of scheduling the work being driven by devices as they complete IO as compared to traditional Unix. For the lay person, my take means that kernel_task consolidates the kernel execution time belonging lots of different I/O activity driven by device interrupts.

CAVEAT EMPTOR: I MAY BE WRONG ABOVE. While searching for clues, I found the most common complaint about kernel_task buring CPU time is laptop owners with thermal overload, bad temp sensors, overheating, etc, where kernel_task efficiently squanders Intel CPU cycles to reduce load. Sort of /dev/null for process scheduler. Kernel_task gets busy when doing lots of IO too, like video, so this is why I think it's processification of device driver code.

What I found using spindump was audio DAC-related device entry points were using a lot of CPU time, and this got me to consider disabling AppleALC, whereupon the kernel_task went quiet on my otherwise idle system. The reason I saw a difference between booting from USB and booting from onboard was that the onboard OC had a layout-id configured in config.plist and the USB OC (which was otherwise the same as onboard) did not. This was a holdover from my earlier experiments looking for a suitable audio layout, where I do my testing from a thumb drive.

So my experience was a comedy of errors resulting from config that can never work right (AppleALC not "U" with USB audio) that I concocted from magical incantations I got from a recipe a Dortania that doesn't call out any distinction of USB audio from PCI audio. As to what the U version of AppleALC does: this is Config that I'm pretty sure no one here understands. I say "no one" because I have searched high-and-low for detailed explanations of AppleALC and USB audio and these seem to be orthoganal concerns. I grokked this conundrum from reading about how to add audio layouts and discovering that a key step in that book of spells requires looking up codec details that don't exist for USB audio. Imagine reading a guide that begins by saying boot Linux and dump this OS codec special file (HW nexus), but your kit doesn't have that special file but it has working Linux audio!

One thing I haven't tried yet is reading the AppleALC code. But as a seasoned systems programmer I already know there's only so far you can go towards understanding in reverse. A system must be understood to properly code it, while looking back into an unknown system through code can only provide clues which might assist understanding if you are already smart. I draw the line at these OC modules as black-boxes, because I'm not suited to being an OC module hacker and I may find after lots of effort looking backwards that I am still missing key understanding which only travels forward from the audio HW design.

So la-la-la
Hth
@c-o-pr - I have a similar setup but can't get my system stabilized. My new system is an Asus Z590-E with a i7-11700 and an AsusRX 6600. I have built multiple rigs and have been able to get them going by looking up similar rigs and making some minor changes.

I tried a vanilla build using the OpenCore Install guide but no luck.

I have been able to login one time and haven't been able to get back in even though I am using the same EFI. Weird.

I have downloaded several other similar EFIs but can't even login. Most of the time, the EFI just hangs. A couple of times I was able to login then the computer restarted almost immediately.

My sense is that because I am using an i7-11700, I need something extra. I know I need to spoof the CPU. Most of the builds I see are with the 11700-K. Should that affect the spoofing?

Should I be preparing more in advance by running some scripts in the terminal? (I usually do it after I have logged in then switch out the AMLs.)

Should I be starting to generate AMLs from the PC then bring them over?

I am missing something and I think it is related to my processor.


Thanks for any ideas.

It turns out something with my monitor was getting in the way. Probably related to sound. Switched to a different monitor and now I can boot up.

Issue was due to an ethernet incompatibility. See below for more information.
 
Last edited:
Disable hdmi and or DP audio, there is a kext on here for it, if your using a dac this will in my instance at least fix kernel_task issue
I wonder if that was what the issue was. I was able to get the rig up and running by switching to a different monitor. I didn't think about the Audio aspect of it. That makes a lot of sense! Thanks for that!

UPDATE: Actually it was due to an ethernet problem. My Intel I225-V 2.5GB ethernet connector wasn't compatible with my mobo the way it was set up and would cause it to go on the fritz. There are posts about this issue.

Thanks for your suggestion though.
 
Last edited:
ive got that exact adapter, if your on monterey you need to change in ehternet settings to this and restart View attachment 558613
if ventura you need a kext for it, the one that worked for me i have uploaded, but do one or the other, dont add this kext if your internet works, i did this in preparation for ventura and it Kerpan'd, I just installed ventura then added the ethernet afterwards, so make sure its on a thumb drive or something
Luckily in Ventura I didn't need a kext. I think if you have v3 of the firmware, it works fine.

Read this for more information: Gigabyte Z690 Aero G + i5-12600K + AMD RX 6800 XT | Page 178 | tonymacx86.com
 
Status
Not open for further replies.
Back
Top