snd_hda doesn't automatic switch output between headphone and speaker on Macbook Pro 2012

suken woo sukenwoo at gmail.com
Wed May 28 08:22:46 UTC 2014


 hi all:
just setting on /boot/loader.conf below

hw.snd.default_unit="3"
hint.hdaa.1.gpio_config="3=set"
hint.hdaa.1.nid11.config="as=0"

speaker works with very good sound quality.headphone have no sound but
sounds still came out of speaker
when I plug in earphones.
if I set hint.hdaa.1.nid9.config="as=1" on loader.conf file
sounds come out from both speaker and headphone.
any trick to overwrite the pins configuration and make it works as
expected?

cat /dev/sndstat
pcm0: <NVIDIA (0x0042) (HDMI/DP 8ch)> (play)
pcm1: <NVIDIA (0x0042) (HDMI/DP 8ch)> (play)
pcm2: <NVIDIA (0x0042) (HDMI/DP 8ch)> (play)
pcm3: <Cirrus Logic CS4206 (Internal Analog Speaker)> (play) default
pcm4: <Cirrus Logic CS4206 (Analog Headphones)> (play)
pcm5: <Cirrus Logic CS4206 (Digital)> (play)

boot with verbose enabled messages:

hdacc0: <NVIDIA (0x0042) HDA CODEC> at cad 0 on hdac0
hdaa0: <NVIDIA (0x0042) Audio Function Group> at nid 1 on hdacc0
hdaa0: Subsystem ID: 0x106b00f2
hdaa0: NumGPIO=0 NumGPO=0 NumGPI=0 GPIWake=0 GPIUnsol=0
hdaa0: Original pins configuration:
hdaa0: nid   0x    as seq device       conn  jack    loc        color
misc
hdaa0:  4 185600f0 15 0  Digital-out   Jack  Digital 0x18       Unknown 0
hdaa0:  5 185600f0 15 0  Digital-out   Jack  Digital 0x18       Unknown 0
hdaa0:  6 585600f0 15 0  Digital-out   None  Digital 0x18       Unknown 0
hdaa0:  7 185600f0 15 0  Digital-out   Jack  Digital 0x18       Unknown 0
hdaa0: Patched pins configuration:
hdaa0: nid   0x    as seq device       conn  jack    loc        color
misc
hdaa0:  4 185600f0 15 0  Digital-out   Jack  Digital 0x18       Unknown 0
hdaa0:  5 185600f0 15 0  Digital-out   Jack  Digital 0x18       Unknown 0
hdaa0:  6 585600f0 15 0  Digital-out   None  Digital 0x18       Unknown 0
DISA
hdaa0:  7 185600f0 15 0  Digital-out   Jack  Digital 0x18       Unknown 0
hdaa0: 3 associations found:
hdaa0: Association 0 (15) out:
hdaa0:  Pin nid=4 seq=0
hdaa0: Association 1 (15) out:
hdaa0:  Pin nid=5 seq=0
hdaa0: Association 2 (15) out:
hdaa0:  Pin nid=7 seq=0
hdaa0: Tracing association 0 (15)
hdaa0:  Pin 4 traced to DAC 8
hdaa0: Association 0 (15) trace succeeded
hdaa0: Tracing association 1 (15)
hdaa0:  Pin 5 traced to DAC 9
hdaa0: Association 1 (15) trace succeeded
hdaa0: Tracing association 2 (15)
hdaa0:  Pin 7 traced to DAC 10
hdaa0: Association 2 (15) trace succeeded
hdaa0: Looking for additional DAC for association 0 (15)
hdaa0: Looking for additional DAC for association 1 (15)
hdaa0: Looking for additional DAC for association 2 (15)
hdaa0: Tracing input monitor
hdaa0: Tracing other input monitors
hdaa0: Tracing beeper
hdaa0: FG config/quirks: forcestereo ivref50 ivref80 ivref100 ivref
pcm0: <NVIDIA (0x0042) (HDMI/DP 8ch)> at nid 4 on hdaa0
pcm0: Playback:
pcm0:      Stream cap: 0x00000005 AC3 PCM
pcm0:         PCM cap: 0x000e07f0 16 20 24 bits, 32 44 48 88 96 176 192 KHz
pcm0:             DAC: 8
pcm0:
pcm0:     nid=4 [pin: Digital-out (Jack)]
pcm0:       + <- nid=8 [audio output] [src: pcm]
pcm0:
pcm0: Mixer "vol" -> "none": child=0x00000010
pcm0: Mixer "pcm": parent="vol"
pcm0: Soft PCM mixer ENABLED
pcm0: Playback channel matrix is: unknown, assuming 7.1 (disconnected)
pcm1: <NVIDIA (0x0042) (HDMI/DP 8ch)> at nid 5 on hdaa0
pcm1: Playback:
pcm1:      Stream cap: 0x00000005 AC3 PCM
pcm1:         PCM cap: 0x000e07f0 16 20 24 bits, 32 44 48 88 96 176 192 KHz
pcm1:             DAC: 9
pcm1:
pcm1:     nid=5 [pin: Digital-out (Jack)]
pcm1:       + <- nid=9 [audio output] [src: pcm]
pcm1:
pcm1: Mixer "vol" -> "none": child=0x00000010
pcm1: Mixer "pcm": parent="vol"
pcm1: Soft PCM mixer ENABLED
pcm1: Playback channel matrix is: unknown, assuming 7.1 (disconnected)
pcm2: <NVIDIA (0x0042) (HDMI/DP 8ch)> at nid 7 on hdaa0
pcm2: Playback:
pcm2:      Stream cap: 0x00000005 AC3 PCM
pcm2:         PCM cap: 0x000e07f0 16 20 24 bits, 32 44 48 88 96 176 192 KHz
pcm2:             DAC: 10
pcm2:
pcm2:     nid=7 [pin: Digital-out (Jack)]
pcm2:       + <- nid=10 [audio output] [src: pcm]
pcm2:
pcm2: Mixer "vol" -> "none": child=0x00000010
pcm2: Mixer "pcm": parent="vol"
pcm2: Soft PCM mixer ENABLED
pcm2: Playback channel matrix is: unknown, assuming 7.1 (disconnected)
hdacc1: <Cirrus Logic CS4206 HDA CODEC> at cad 0 on hdac1
hdaa1: <Cirrus Logic CS4206 Audio Function Group> at nid 1 on hdacc1
hdaa1: Subsystem ID: 0x106b2800
hdaa1: NumGPIO=4 NumGPO=0 NumGPI=0 GPIWake=0 GPIUnsol=0
hdaa1:  GPIO0: disabled
hdaa1:  GPIO1: disabled
hdaa1:  GPIO2: disabled
hdaa1:  GPIO3: output state=0
hdaa1: Original pins configuration:
hdaa1: nid   0x    as seq device       conn  jack    loc        color
misc
hdaa1:  9 002b4020 2  0  Headphones    Jack  Combo   0x00       Green   0
hdaa1: 10 90100112 1  2  Speaker       Fixed Unknown Internal   Unknown 1
hdaa1: 11 90100110 1  0  Speaker       Fixed Unknown Internal   Unknown 1
hdaa1: 12 400000f0 15 0  Line-out      None  Unknown 0x00       Unknown 0
hdaa1: 13 400000f0 15 0  Line-out      None  Unknown 0x00       Unknown 0
hdaa1: 14 90a60100 0  0  Mic           Fixed Digital Internal   Unknown 1
hdaa1: 15 400000f0 15 0  Line-out      None  Unknown 0x00       Unknown 0
hdaa1: 16 004be030 3  0  SPDIF-out     Jack  Combo   0x00       White   0
hdaa1: 18 400000f0 15 0  Line-out      None  Unknown 0x00       Unknown 0
hdaa1: 21 400000f0 15 0  Line-out      None  Unknown 0x00       Unknown 0
hdaa1: Patching pin config nid=11 0x90100110 -> 0x90100100
hdaa1: Patched pins configuration:
hdaa1: nid   0x    as seq device       conn  jack    loc        color
misc
hdaa1:  9 002b4020 2  0  Headphones    Jack  Combo   0x00       Green   0
hdaa1: 10 90100112 1  2  Speaker       Fixed Unknown Internal   Unknown 1
hdaa1: 11 90100100 0  0  Speaker       Fixed Unknown Internal   Unknown 1
DISA
hdaa1: 12 400000f0 15 0  Line-out      None  Unknown 0x00       Unknown 0
DISA
hdaa1: 13 400000f0 15 0  Line-out      None  Unknown 0x00       Unknown 0
DISA
hdaa1: 14 90a60100 0  0  Mic           Fixed Digital Internal   Unknown 1
DISA
hdaa1: 15 400000f0 15 0  Line-out      None  Unknown 0x00       Unknown 0
DISA
hdaa1: 16 004be030 3  0  SPDIF-out     Jack  Combo   0x00       White   0
hdaa1: 18 400000f0 15 0  Line-out      None  Unknown 0x00       Unknown 0
DISA
hdaa1: 21 400000f0 15 0  Line-out      None  Unknown 0x00       Unknown 0
DISA
hdaa1: 3 associations found:
hdaa1: Association 0 (1) out:
hdaa1:  Pin nid=10 seq=2
hdaa1: Association 1 (2) out:
hdaa1:  Pin nid=9 seq=0
hdaa1: Association 2 (3) out:
hdaa1:  Pin nid=16 seq=0
hdaa1: Tracing association 0 (1)
hdaa1:  Pin 10 traced to DAC 3
hdaa1: Association 0 (1) trace succeeded
hdaa1: Tracing association 1 (2)
hdaa1:  Pin 9 traced to DAC 2
hdaa1: Association 1 (2) trace succeeded
hdaa1: Tracing association 2 (3)
hdaa1:  Pin 16 traced to DAC 8
hdaa1: Association 2 (3) trace succeeded
hdaa1: Looking for additional DAC for association 0 (1)
hdaa1: Looking for additional DAC for association 1 (2)
hdaa1: Looking for additional DAC for association 2 (3)
hdaa1: Tracing input monitor
hdaa1: Tracing other input monitors
hdaa1: Tracing beeper
hdaa1: GPIO commit
hdaa1:  GPIO0: disabled
hdaa1:  GPIO1: disabled
hdaa1:  GPIO2: disabled
hdaa1:  GPIO3: output state=1
hdaa1: Pin sense: nid=9 sense=0x80000000 (connected)
hdaa1: FG config/quirks: forcestereo ivref50 ivref80 ivref100 ivref
pcm3: <Cirrus Logic CS4206 (Internal Analog Speaker)> at nid 10 on hdaa1
pcm3: Playback:
pcm3:      Stream cap: 0x00000003 FLOAT32 PCM
pcm3:         PCM cap: 0x001e07f0 16 20 24 32 bits, 32 44 48 88 96 176 192
KHz
pcm3:             DAC: 3
pcm3:
pcm3:     nid=10 [pin: Speaker (Fixed)]
pcm3:       + <- nid=3 [audio output] [src: pcm]
pcm3:
pcm3: Master Volume (OSS: vol): -57/6dB
pcm3:    +- ctl  2 (nid   3 out):    -57/6dB (128 steps) + mute
pcm3:
pcm3: PCM Volume (OSS: pcm): -57/6dB
pcm3:    +- ctl  2 (nid   3 out):    -57/6dB (128 steps) + mute
pcm3:
pcm3: Mixer "vol":
pcm3: Mixer "pcm":
pcm3: Playback channel set is: Back Left, Back Right,
pcm3: Playback channel matrix is: unknown, assuming 2.0 (unknown)
pcm4: <Cirrus Logic CS4206 (Analog Headphones)> at nid 9 on hdaa1
pcm4: Playback:
pcm4:      Stream cap: 0x00000003 FLOAT32 PCM
pcm4:         PCM cap: 0x001e07f0 16 20 24 32 bits, 32 44 48 88 96 176 192
KHz
pcm4:             DAC: 2
pcm4:
pcm4:     nid=9 [pin: Headphones (Green Jack)]
pcm4:       + <- nid=2 [audio output] [src: pcm]
pcm4:
pcm4: Master Volume (OSS: vol): -57/6dB
pcm4:    +- ctl  1 (nid   2 out):    -57/6dB (128 steps) + mute
pcm4:
pcm4: PCM Volume (OSS: pcm): -57/6dB
pcm4:    +- ctl  1 (nid   2 out):    -57/6dB (128 steps) + mute
pcm4:
pcm4: Mixer "vol":
pcm4: Mixer "pcm":
pcm4: Playback channel set is: Front Left, Front Right,
pcm4: Playback channel matrix is: 2.0 (connected)
pcm5: <Cirrus Logic CS4206 (Digital)> at nid 16 on hdaa1
pcm5: Playback:
pcm5:      Stream cap: 0x00000007 AC3 FLOAT32 PCM
pcm5:         PCM cap: 0x001e07f0 16 20 24 32 bits, 32 44 48 88 96 176 192
KHz
pcm5:             DAC: 8
pcm5:
pcm5:     nid=16 [pin: SPDIF-out (White Jack)]
pcm5:       + <- nid=8 [audio output] [src: pcm]
pcm5:
pcm5: Mixer "vol" -> "none": child=0x00000010
pcm5: Mixer "pcm": parent="vol"
pcm5: Soft PCM mixer ENABLED
pcm5: Playback channel set is: Front Left, Front Right,
pcm5: Playback channel matrix is: 2.0 (unknown)

-- 








-- 
--wsk


More information about the freebsd-mobile mailing list