Il codec Cirrus Logic CS8409 (subsystem Apple 0x106b3900) è supportato a metà
dal driver kernel standard: le cuffie funzionano, ma l'autoconfig riporta
speaker_outs=0 — gli amplificatori delle casse non vengono mai inizializzati.
davidjo/snd_hda_macbookpro
patcha snd-hda-codec-cs8409 con l'inizializzazione degli ampli Apple (I²C).
Installato via DKMS (snd_hda_macbookpro/0.1): si ricompila da solo a ogni
aggiornamento kernel. Script: scripts/04-audio-cs8409.sh.
Lo script di build esige /usr/src/linux-source-<ver>.tar.bz2. Ubuntu non
pubblica i sorgenti dei kernel HWE. Lo script di questa repo risolve così:
- clone sparso di solo
sound/hdadal git ufficiale del kernel Ubuntu, al tag esatto del kernel in esecuzione (pochi MB invece di ~250); - impacchettamento in un mini-tarball con la struttura attesa dalla build;
- copia in
/usr/srce build DKMS.
Se dopo un aggiornamento kernel le casse tornano mute: rilanciare
sudo scripts/04-audio-cs8409.sh (ricava tag e percorsi da uname -r).
pw-play /usr/share/sounds/alsa/Front_Center.wav # una voce dice "front center"Il modulo patchato in uso si conferma con modinfo -F filename snd-hda-codec-cs8409 che punta a updates/dkms/, e dal modulo extra
snd_hda_scodec_component in lsmod — il driver standard non lo carica mai.