On Thu, Nov 25, 2010 at 3:34 PM, John Ettedgui <john.ettedgui@xxxxxxxxx> wrote: > On Thu, Nov 25, 2010 at 3:15 PM, Anssi Hannula <anssi.hannula@xxxxxx> wrote: >> On 26.11.2010 01:11, John Ettedgui wrote: >>> On Thu, Nov 25, 2010 at 2:58 PM, Anssi Hannula <anssi.hannula@xxxxxx> wrote: >>>> On 26.11.2010 00:42, John Ettedgui wrote: >>>>> On Thu, Nov 25, 2010 at 11:19 AM, Anssi Hannula <anssi.hannula@xxxxxx> wrote: >>>>>> On 25.11.2010 14:21, John Ettedgui wrote: >>>>>>> On Thu, Nov 25, 2010 at 3:40 AM, Anssi Hannula <anssi.hannula@xxxxxx> wrote: >>>>>>>> On 25.11.2010 13:09, John Ettedgui wrote: >>>>>>>>> On Thu, Nov 25, 2010 at 2:49 AM, Anssi Hannula <anssi.hannula@xxxxxx> wrote: >>>>>>>>>> On 25.11.2010 06:12, John Ettedgui wrote: >>>>>>>>>>> I'm actually trying to get a 5.1 setup working without passthrough, if >>>>>>>>>>> I use mplayer with passthrough my receiver behaves just fine, but I am >>>>>>>>>>> trying to send the 6 channels from the computer. >>>>>>>>>>> >>>>>>>>>>> I was actually told that the current ALSA driver for radeon's hdmi >>>>>>>>>>> does not support more than 2 channels, and that would explain why I'm >>>>>>>>>>> getting this behavior. Is that true though? >>>>>>>>>> >>>>>>>>>> Yes. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> However, strangely your log output seems to show the intel's hdmi parser >>>>>>>>>> being used instead: >>>>>>>>>> >>>>>>>>>>> ALSA sound/pci/hda/patch_intelhdmi.c:842: hdmi_setup_stream: NID=0x2, >>>>>>>>>>> stream=0x1, new-format=0x11 >>>>>>>>>> >>>>>>>>>> Were you just trying some patch at the time? >>>>>>>>> >>>>>>>>> yes Wu gave me a patch to try against the kernel, I'm guessing this is >>>>>>>>> the reason you see something unexpected. >>>>>>>> >>>>>>>> Did 6 channels work with that patch? (possibly with a wrong channel order) >>>>>>> Not any better as far as I remember. >>>>>> >>>>>> OK. Did 2 channel audio continue to work with it? >>>>>> >>>>>> If you are not sure, here's the patch doing the same thing against >>>>>> current alsa driver: >>>>>> http://stuff.onse.fi/0001-ALSA-hda-Use-generic-HDMI-code-for-ATI-HDMI-codecs.patch >>>>>> >>>>>> Confirming that would help (it would allow to switch the ATI chip to use >>>>>> the generic parser instead of the ATI-specific one), though not with the >>>>>> multichannel issue (see below). >>>>>> >>>>>> [...] >>>>>> >>>>>>>>> Since I just moved to jack/rca cables I'm in no hurry anymore, but is >>>>>>>>> there any reason why the driver cannot work with more than 2 channels? >>>>>>>> >>>>>>>> I don't really know (it is simply not implemented). >>>>>>> Alright. >>>>>>>> >>>>>>>>> Anything I could do to help with that? >>>>>>>> >>>>>>>> Possibly. But see above, so that we won't try the same things you >>>>>>>> already tried :) >>>>>>>> >>>>>>> Sure :) >>>>>> >>>>>> Looking again at the the alsa info output you provided, I don't think I >>>>>> have any great ideas. It looks like the chip simply reports that it >>>>>> supports a maximum of 2 channels. >>>>>> >>>>>> One option could be hardcoding "chans = 8;" in generic_hdmi_build_pcms() >>>>>> in sound/pci/hda/patch_hdmi.c (assuming you have the above patch and 2 >>>>>> channel audio works with it). However, I find it rather unlikely that it >>>>>> would make any difference. >>>>>> >>>>>> -- >>>>>> Anssi Hannula >>>>>> >>>>> >>>>> Anssi, >>>>> the patch fails on my kernel, I cannot find the hda_codec_preset >>>>> manually in there either. >>>>> Did you want me to try that against a 2.6.37 rc instead of a 2.6.36? >>>> >>>> For 2.6.36 I think you can just use your earlier patch. >>>> >>>> Note that on that kernel generic_hdmi_build_pcms() is >>>> intel_hdmi_build_pcms() in patch_intelhdmi.c. >>>> >>> ok >>>> BTW, I've just been informed by another ATI user that his card was >>>> actually stereo-only, while he thought earlier it was multichannel >>>> capable. So, are you sure your card is a multichannel one? >>>> (if not, it would explain why the card says it is not) >>>> >>>> -- >>>> Anssi Hannula >>>> >>> Yes, it works fine in Window Âso I believe the hardware part is good. >> >> And you are sure it is multichannel PCM, and not e.g. multichannel DTS >> or multichannel AC-3 with on-the-fly compression, which are possible >> with stereo hdmi as well? >> >> Just making sure :) >> >> -- >> Anssi Hannula >> > > Well, I have not super tested it, but the reason I believe it is is > simple, when I use passthrough my receiver says Dolby digital or > something like that, but in Windows just going around or playing games > it says Multichannel. > > I'll get the patch applied in a few minutes, I was running out of > memory and my system was getting really slow... :) > I am not sure if I did it right but now I don't even get hdmi sound working anymore. It is not listed in aplay-l, and dmesg gives me this: [drm:radeon_dvi_detect] *ERROR* HDMI Type A-1: probed a monitor but no|invalid EDID I've attached the patch I used, since I could not used the previous one I had to hack it, maybe I broke something? (I have not set channels to 8 yet, just changed the parser) Thanks, John
--- sound/pci/hda/patch_atihdmi.c | 2 -- sound/pci/hda/patch_intelhdmi.c | 2 ++ 2 files changed, 2 insertions(+), 2 deletions(-) --- sound-2.6.orig/sound/pci/hda/patch_atihdmi.c 2010-01-12 12:44:24.000000000 +0800 +++ sound-2.6/sound/pci/hda/patch_atihdmi.c 2010-01-12 12:45:58.000000000 +0800 @@ -189,7 +189,6 @@ static struct hda_codec_preset snd_hda_p { .id = 0x1002793c, .name = "RS600 HDMI", .patch = patch_atihdmi }, { .id = 0x10027919, .name = "RS600 HDMI", .patch = patch_atihdmi }, { .id = 0x1002791a, .name = "RS690/780 HDMI", .patch = patch_atihdmi }, - { .id = 0x1002aa01, .name = "R6xx HDMI", .patch = patch_atihdmi }, { .id = 0x10951390, .name = "SiI1390 HDMI", .patch = patch_atihdmi }, { .id = 0x17e80047, .name = "Chrontel HDMI", .patch = patch_atihdmi }, {} /* terminator */ @@ -198,7 +197,6 @@ static struct hda_codec_preset snd_hda_p MODULE_ALIAS("snd-hda-codec-id:1002793c"); MODULE_ALIAS("snd-hda-codec-id:10027919"); MODULE_ALIAS("snd-hda-codec-id:1002791a"); -MODULE_ALIAS("snd-hda-codec-id:1002aa01"); MODULE_ALIAS("snd-hda-codec-id:10951390"); MODULE_ALIAS("snd-hda-codec-id:17e80047"); --- sound-2.6.orig/sound/pci/hda/patch_intelhdmi.c 2010-01-12 12:44:18.000000000 +0800 +++ sound-2.6/sound/pci/hda/patch_intelhdmi.c 2010-01-12 12:45:28.000000000 +0800 @@ -187,3 +187,4 @@ { .id = 0x80862805, .name = "CougarPoint HDMI", .patch = patch_intel_hdmi }, { .id = 0x10951392, .name = "SiI1392 HDMI", .patch = patch_intel_hdmi }, +{ .id = 0x1002aa01, .name = "R6xx HDMI", .patch = patch_intel_hdmi }, {} /* terminator */ }; @@ -195,6 +195,7 @@ MODULE_ALIAS("snd-hda-codec-id:80862803" MODULE_ALIAS("snd-hda-codec-id:80862804"); MODULE_ALIAS("snd-hda-codec-id:80862805"); MODULE_ALIAS("snd-hda-codec-id:80860054"); MODULE_ALIAS("snd-hda-codec-id:10951392"); +MODULE_ALIAS("snd-hda-codec-id:1002aa01"); MODULE_LICENSE("GPL"); MODULE_DESCRIPTION("Intel HDMI HD-audio codec");
_______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel