[alsa-devel] max channels of 3 jacks 6 channels motherboard using model=auto realtek codec

Takashi Iwai tiwai at suse.de
Wed Jul 6 07:27:13 CEST 2011


At Wed, 6 Jul 2011 11:53:47 +0800,
Raymond Yau wrote:
> 
> Refer to commit ce764ab22e40a046065c9417ee5f04ad2a816ac1
> 
> ALSA: hda - Add channel-mode support to Realtek auto-parser
> 
> It seem that max channel is six instead of two when the channel mode
> is 2ch for those 3 jacks motherboard
> 
> using hda-emu and alsa-info from
> http://thread.gmane.org/gmane.linux.alsa.devel/86816
> 
> > PCM 0 p 44100 2 16
> Open PCM ALC887 Analog for play
> Available PCM parameters:
>   channels: 2/6
>   formats: S16_LE S32_LE
>   rates: 44100 48000 96000 192000
> Prepare PCM, rate=44100, channels=2, format=16 bits
> 
> 
> because
> 
> 	spec->multiout.max_channels = spec->multiout.num_dacs * 2;
> 
> is assigned after  alc_auto_add_multi_channel_mode() increase
> spec->multiout.num_dacs from 1 to 3
> 
> 		spec->multiout.num_dacs = num_pins + 1;

Right, and this is intentional.  Since there should be enough amount
of DACs, the driver keeps using the surround DACs statically.
In that way, apps can keep opening the device in the surround mode
while user can switch the outputs on the fly via channel-mode mixer
enum.


Takashi


More information about the Alsa-devel mailing list