Kernel driver for the Cirrus Logic CS4206:
snd_hda(4)
% cat /dev/sndstat
FreeBSD Audio Driver (64bit 2009061500/amd64)
Installed devices:
pcm0: <Cirrus Logic CS4206 (Internal Analog 3.1/2.0)> on hdaa0 (1p:4v/1r:4v) default
pcm1: <Cirrus Logic CS4206 (Analog Headphones)> on hdaa0 (1p:1v/0r:0v)
pcm2: <Cirrus Logic CS4206 (Digital)> on hdaa0 (1p:1v/0r:0v)
No devices installed from userspace.
By default, sound is tiny (it does sound muffled). These laptops has 2 internal speakers (the right is tied to a tiny sub-woofer) so the default pin assignment should be corrected by inverting sequence of internal speakers pins that are in the same association to correctly power up the sub-woofer. From
snd_hda(4) sequences are explained:
For multichannel input/output associations sequence
numbers encode channel pairs positions: 0 - Front, 1 -
Center/LFE, 2 - Back, 3 - Front Wide Center, 4 - Side.
Standard combinations are: (0) - Stereo; (0, 2), (0,
4) - Quadro; (0, 1, 2), (0, 1, 4) - 5.1; (0, 1, 2, 4)
- 7.1.
hint.hdaa.0.nid10.config="seq=0"
hint.hdaa.0.nid11.config="seq=1"
sysctl hw.snd.vpc_0db=1
The auto-sense of the headphone jack port while being correctly detected does not work when in the same association as the speakers and use the correct
seq=15. Use a graphical mixer (ie.
audio/gtk-mixer) or
sysctl hw.snd.default_unit=1 to switch to the headphones as a workaround.
Equalizers in mixer applications are possible via the following device configuration on
/boot/loader.conf:
# Enable equalizer in mixer applications for internal speakers (pcm0)
hint.pcm.0.eq=1
# Enable equalizer in mixer applications for analog headphones (pcm1)
hint.pcm.1.eq=1
# Enable equalizer in mixer applications for digital line (pcm2)
hint.pcm.2.eq=1