Wei Ni kirjoitti tiistai, 27. heinäkuuta 2010 10:14:37: > Hi, Takashi > MCP7x use old HW design in HDMI, they don't support channel mapping like > MCP89. It use nvhdmi_dig_playback_pcm_prepare_8ch() to prepare channel > mapping and steam id,format. > > Anssi Hannula > Please try the following changes in patch_nvhdmi.c > static hda_nid_t nvhdmi_con_nids_7x[4] = { > /*front, rear, clfe, rear_surr */ > - 0x6, 0x8, 0xa, 0xc, > + 0x6, 0xa, 0x8, 0xc, > }; I actually tried that already, but for some reason changing the order in nvhdmi_con_nids_7x doesn't have any effect. Actually, disabling the whole for loop that assigns the channels in nvhdmi_dig_playback_pcm_prepare_8ch() has no effect, leading me to believe that the commands are not reaching the hardware or they are being overridden. I also just noticed that the HDMI output is the only detected output, even though this board has analog audio and S/PDIF outputs as well. I'm not sure if this is related or not. > -----Original Message----- > From: Takashi Iwai [mailto:tiwai@xxxxxxx] > Sent: Monday, July 26, 2010 5:35 PM > To: Anssi Hannula > Cc: alsa-devel@xxxxxxxxxxxxxxxx; Wei Ni > Subject: Re: Wrong channel order with multichannel HDMI on > MCP7A > > At Mon, 26 Jul 2010 11:14:17 +0200, > > 私 wrote: > > At Sun, 25 Jul 2010 19:51:39 +0300, > > > > Anssi Hannula wrote: > > > Hi all! > > > > > > I have a motherboard with NVIDIA MCP7A HDMI audio. > > > However, multichannel audio is not mapped properly into the HDMI order. > > > > > > On 5.1, I get RL in FC, RR in LFE, FC in RL, LFE in RR. > > > > > > Interestingly, this is not consistent with the ALSA channel order (FL > > > FR RL RR FC LFE) being passed directly to HDMI (FL FR LFE FC RL RR). > > > Instead it looks like there has been a waveformatex (FL FR FC LFE RL > > > RR; windows?) => HDMI conversion instead of ALSA => HDMI. > > > > > > Same happens for 7.1. > > > > > > Is it possible to set the hardware to do an ALSA => HDMI conversion > > > instead? If not, we should manually compensate for this somewhere, > > > right? > > > > Does the patch below change anything? > > Ah crap, it should be irrelevant. > Wei, don't MCP 7x chips support the channel mapping as MCP 89? > > > thanks, > > Takashi > > > > Somewhat relatedly, trying to output 4 channels results in silence > > > only. > > > > Although 5.1/7.1 work? > > > > > Trying to output 3 or 5 channels triggers a timeout with I/O error, > > > with the following in the kernel log: "ALSA pcm_lib.c:1757: playback > > > write error (DMA or IRQ trouble?)" > > > > HD-audio doesn't support the odd number of channels in general, so > > they should be played as 4 or 6 channels. But, it looks like > > something wrong in the setup... > > > > > > thanks, > > > > Takashi > > > > --- > > diff --git a/sound/pci/hda/patch_nvhdmi.c b/sound/pci/hda/patch_nvhdmi.c > > index 3c10c0b..7355c60 100644 > > --- a/sound/pci/hda/patch_nvhdmi.c > > +++ b/sound/pci/hda/patch_nvhdmi.c > > @@ -511,6 +511,8 @@ static int patch_nvhdmi_8ch_7x(struct hda_codec > > *codec) > > > > codec->patch_ops = nvhdmi_patch_ops_8ch_7x; > > > > + init_channel_allocations(); > > + > > > > return 0; > > > > } > > --------------------------------------------------------------------------- > -------- This email message is for the sole use of the intended > recipient(s) and may contain confidential information. Any unauthorized > review, use, disclosure or distribution is prohibited. If you are not the > intended recipient, please contact the sender by reply email and destroy > all copies of the original message. > --------------------------------------------------------------------------- > -------- _______________________________________________ > Alsa-devel mailing list > Alsa-devel@xxxxxxxxxxxxxxxx > http://mailman.alsa-project.org/mailman/listinfo/alsa-devel -- Anssi Hannula _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel