Re: [alsa-devel] Intel HDA / ALC662 analog surround problem
You have to post the output of alsa-info.sh
Please see the attached file.
0.655493] sound hdaudioC1D0: autoconfig: line_outs=1 (0x14/0x0/0x0/0x0/0x0) type:line [ 0.655494] sound hdaudioC1D0: speaker_outs=1 (0x15/0x0/0x0/0x0/0x0) [ 0.655495] sound hdaudioC1D0: hp_outs=1 (0x1b/0x0/0x0/0x0/0x0) [ 0.655496] sound hdaudioC1D0: mono: mono_out=0x0 [ 0.655496] sound hdaudioC1D0: dig-out=0x1e/0x0 [ 0.655497] sound hdaudioC1D0: inputs: [ 0.655498] sound hdaudioC1D0: Front Mic=0x19 [ 0.655499] sound hdaudioC1D0: Rear Mic=0x18 [ 0.655499] sound hdaudioC1D0: Line=0x1a
This is a known bug of hda_generic.c for those desktop with internal speaker and three audio jacks at rear panel (e.g. those lenovo thinkcenter with alc66x codec)
The driver prefer to assign volume control/dac to headphone, line out and internal speaker instead of line out and the other two multi io jacks
The workaround is to change the internal speaker as not connected node 0x15
or
You need to increase badness of multi io so that driver select multi io as the best config
The channel mode should be automatically added for those desktop with
three
audio jacks (green line out, blue line in and pink mic) at rear panel
Although I do have these jacks, there unfortunately isn't a channel mode.
either your computer BIOS does not set the correct pin default or it
can be
disabled by hint
Do you really mean "disabled" or do you mean to enable them by hint?
As you can see I don't have a hwC1D0/hints (and no reconfig), so I cannot
try
setting multi_io to make the driver re-configuring itself. Would an early patching make sense (or maybe I missing a kernel config option for the hints)?
If I only knew more about these "pins" (there seem to be 11, from 0x12 to 0x1e) I could try to add a model for the ALC66x since the existing ones (mario, asus-mode?, etc) don't make any differences.
Raymond,
You have to post the output of alsa-info.sh
Please see the attached file.
[ 0.655493] sound hdaudioC1D0: autoconfig: line_outs=1 (0x14/0x0/0x0/0x0/0x0) type:line [ 0.655494] sound hdaudioC1D0: speaker_outs=1 (0x15/0x0/0x0/0x0/0x0) [ 0.655495] sound hdaudioC1D0: hp_outs=1 (0x1b/0x0/0x0/0x0/0x0) [ 0.655496] sound hdaudioC1D0: mono: mono_out=0x0 [ 0.655496] sound hdaudioC1D0: dig-out=0x1e/0x0 [ 0.655497] sound hdaudioC1D0: inputs: [ 0.655498] sound hdaudioC1D0: Front Mic=0x19 [ 0.655499] sound hdaudioC1D0: Rear Mic=0x18 [ 0.655499] sound hdaudioC1D0: Line=0x1a
This is a known bug of hda_generic.c for those desktop with internal speaker and three audio jacks at rear panel (e.g. those lenovo thinkcenter with alc66x codec)
The driver prefer to assign volume control/dac to headphone, line out and internal speaker instead of line out and the other two multi io jacks
The workaround is to change the internal speaker as not connected node 0x15
Could you please advise how to do this? Is it possible from userland or do I have to patch something?
Would a new fixup mode definition for the kernel help and if yes, how should it look like, i.e. which pins should be listed? (I'm capable of submitting a kernel patch.)
or
You need to increase badness of multi io so that driver select multi io as the best config
I've found your patch from 2013 while googling for the topic. The current kernel already sets BAD_MULTI_IO = 0x120.
Do you mean to further increase it? If so, to what value, or is increasing possible from userland?
Ingo
You have to post the output of alsa-info.sh
Please see the attached file.
[ 0.655493] sound hdaudioC1D0: autoconfig: line_outs=1
(0x14/0x0/0x0/0x0/0x0) type:line
[ 0.655494] sound hdaudioC1D0: speaker_outs=1
(0x15/0x0/0x0/0x0/0x0)
[ 0.655495] sound hdaudioC1D0: hp_outs=1 (0x1b/0x0/0x0/0x0/0x0) [ 0.655496] sound hdaudioC1D0: mono: mono_out=0x0 [ 0.655496] sound hdaudioC1D0: dig-out=0x1e/0x0 [ 0.655497] sound hdaudioC1D0: inputs: [ 0.655498] sound hdaudioC1D0: Front Mic=0x19 [ 0.655499] sound hdaudioC1D0: Rear Mic=0x18 [ 0.655499] sound hdaudioC1D0: Line=0x1a
This is a known bug of hda_generic.c for those desktop with internal speaker and three audio jacks at rear panel (e.g. those lenovo
thinkcenter
with alc66x codec)
The driver prefer to assign volume control/dac to headphone, line out
and
internal speaker instead of line out and the other two multi io jacks
The workaround is to change the internal speaker as not connected node 0x15
Could you please advise how to do this? Is it possible from userland or
do I
have to patch something?
http://git.alsa-project.org/?p=alsa-tools.git;a=blob;f=hdajackretask/README;...
Would a new fixup mode definition for the kernel help and if yes, how
should
it look like, i.e. which pins should be listed? (I'm capable of
submitting a
kernel patch.)
or
You need to increase badness of multi io so that driver select multi io
as
the best config
I've found your patch from 2013 while googling for the topic. The current kernel already sets BAD_MULTI_IO = 0x120.
Do you mean to further increase it? If so, to what value, or is increasing possible from userland?
You need to increase BAD_MULTI_IO from 0x120 to 0x4120 since BAD_NO_DAC = 0x4000 for the driver to select config with mio=1
The driver seem to avoid the playback volume control shared by internal speaker, headphone and line out, this may mean that you need a suitable name for this volume control
participants (2)
-
Ingo Brückl
-
Raymond Yau