[FINAL UPDATE/DIAGNOSIS CORRECTION]: Complete Functional Fix with Partial Acoustic Calibration for iMac 18,3 (CS8409/CS42L83)
Hello, We have conducted an in-depth analysis of the sound issue (no PEQ, silent output) on the iMac 18,3 and confirm that the original diagnosis focused on UCM profiles was inaccurate. Correction: Why Software UCM Profiles Fail The root-cause problem is at the lowest level: the standard snd_hda_intel driver fails to send the proprietary HDA-Verbs sequence from Apple, which is essential to wake up and activate the Cirrus Logic CS8409/CS42L83 DSP and amplifier. Consequence: Since the hardware is not correctly initialized, it does not expose the necessary ALSA mixer controls to the system. Therefore, no UCM profile can functionally exist or solve the problem until the hardware is activated via HDA-Verbs. Functional Solution (HDA-Verbs Fix and DKMS Installer) - NOTE: PARTIAL FIX The issue is currently resolved by applying HDA-Verbs to activate the hardware and set the basic gain (GAIN fix). Implementation: We used a patched snd-hda-codec-cs8409 module (v5.0/v6.0) that applies custom Verbs (extracted from Apple Bootcamp drivers) via ALSA firmware. Status: The sound is functional and stable, all mixer controls are exposed, and audio is playing. Limitation (REASON FOR PARTIAL FIX): The fix is only partial in terms of audio quality. Although we successfully activated the DSP, the parameters used for the Parametric Equalizer (PEQ) are generic (basic GAIN/EQ). Missing Data: The optimal acoustic tuning that Apple uses (to compensate for the small iMac speaker acoustics for good bass and treble) is proprietary and is not included in the script. Result: Sound works, but does not achieve the optimal quality found in macOS until the exact PEQ data is obtained. Availability: For easy testing and deployment, I am including a functional installer script (iMac_CS8409_Installer.sh) which automates the installation of the DKMS module and HDA-Verbs configuration. Conclusion and Upstream Submission The complete bug report, diagnostic data, and functional patch have been submitted to the ALSA mailing list ([email protected]) in the required format for kernel integration. Recommendation for Ubuntu: Please follow this issue at the upstream level, as the fix requires integrating specific HDA-Verbs directly into the main kernel module (snd-hda-codec-cirrus). Once the fix is accepted, this bug should be closed as resolved in the next stable kernel release. Attachments to the bug report include (all in one ZIP): iMac_CS8409_Installer.sh (Key functional script) amixer_output_functional.txt (Proof of functionality after the fix) cs8409_verbs_config.txt (HDA-Verbs used) ucm2_status_missing_cs8409.txt (Proof that UCM profile for this HW does not exist) Thank you for your cooperation. Marek - mahav ** Attachment added: "cs8409_report.zip" https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2119402/+attachment/5915374/+files/cs8409_report.zip -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/2119402 Title: )Persistent driver issues on iMac 18,3 (27", 2017) Status in linux package in Ubuntu: Confirmed Bug description: Summary: After long-term testing of Ubuntu 24.04.2 LTS on the Apple iMac 18,3 (27", 2017), I’ve concluded that the system contains all necessary drivers — located in the kernel and in packages like linux- modules-extra — but their behavior is unpredictable. Ubuntu often fails to load, assign, or correctly activate them during installation. There are ongoing issues affecting sound, graphics drivers, internal microphone, and webcam functionality. 📋 Observed issues: Audio – Cirrus Logic CS8409 / CS42L83 The snd-hda-codec-cs8409 module is available, but not properly initialized. The system shows “Dummy Output” and audio doesn’t work without manual patching. Internal microphone (NID 0x45) is detected but inactive. Missing alsa-ucm-conf profile → no devices or input streams shown in GUI. Graphics – AMD Radeon (AMDGPU) On installation, the system loads Mesa fallback driver → incorrect resolution and audio instability. Installing AMDGPU driver 25.10.1 resolved both resolution and audio subsystem interaction issues. Webcam (Apple internal) Camera launches via cheese, but turns off abruptly during recording. Likely related to power delivery, ACPI events, or missing initialization routines. 🧪 Diagnostics & insights: Upstream kernel 6.16-rc6 contains working DMIC initialization for microphone (patch_cs8409.c). Ubuntu kernel 6.11 includes the CS8409 module, but lacks full microphone functionality. Drivers exist, but: Are not loaded automatically during installation. Are not assigned correctly to hardware. Do not activate input/output devices without manual effort. 📎 Attached information: Diagnostic logs from alsa-info.sh, dmesg, arecord, pw-dump Technical analysis of upstream kernel code (DMIC logic – NID 0x45) Attached .txt file containing hardware documentation extracted from Apple BootCamp: Retrieved from system path: marek- havlik@mahav:~/Plocha/WindowsSupport$ ls '$WinPEDriver$' BootCamp The file includes component identifiers (CS8409, CS42L83, AMDGPU, webcam) helpful for developing UCM profiles and driver assignments. 🛠️ Suggestions to the development team: Include a proper UCM profile for CS8409 / CS42L83 in alsa-ucm-conf Backport DMIC activation patch from kernel 6.16 to Ubuntu 6.11+ Improve hardware detection logic to: Load modules without manual intervention Automatically match drivers during Ubuntu installation Prefer AMDGPU over Mesa fallback when Apple hardware is detected Investigate webcam and microphone behavior — possibly caused by ACPI, UVC or missing init triggers Note: Due to recurring issues, I no longer actively use Ubuntu on this system. However, I am happy to assist with testing, validating patches, or helping with a DKMS implementation. I have access to the real hardware (iMac18,3) as well as the original BootCamp documentation from macOS. Thank you for your work — I hope these insights help improve Apple hardware support on Ubuntu. – Marek (mahav-t) To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2119402/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : [email protected] Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp

