[alsa-devel] [pulseaudio-discuss] Issue with multiple hdmi codecs in radeonhd, hacked to work
Anssi Hannula
anssi.hannula at iki.fi
Mon Dec 9 07:08:13 CET 2013
09.12.2013 08:01, Anssi Hannula kirjoitti:
> 09.12.2013 06:50, Raymond Yau kirjoitti:
>> 2013/12/9 John Ettedgui <john.ettedgui at gmail.com
>> <mailto:john.ettedgui at gmail.com>>
>>
>>
>> I am using the gitcompile script to configure, compile...
>> There is no configure by default, I was able to autogen it, but then
>> I had issues while building so I reverted back to gitcompile
>>
>> [ 4.841881] ALSA hda_intel.c:3170 0000:01:00.1: Handle VGA-switcheroo
>> audio client
>> [ 4.841885] ALSA hda_intel.c:3364 0000:01:00.1: Using LPIB position fix
>> [ 4.841886] ALSA hda_intel.c:3510 0000:01:00.1: Force to non-snoop mode
>> [ 4.841920] snd_hda_intel 0000:01:00.1: irq 47 for MSI/MSI-X
>> [ 4.841940] ALSA hda_intel.c:3635 0000:01:00.1: chipset global
>> capabilities = 0x0
>>
>> seem the max number of playback streams is hardcoded in the driver
>
> Indeed it is hardcoded to 1 (previous ATI/AMD codecs had a single HDMI
> pin). This is almost certainly not true anymore.
>
> I wonder what the limit is now, maybe the amount of HDMI pins so that
> there can be 6 or 7 independent streams? Alex?
>
>
>> [ 4.842211] [drm] radeon kernel modesetting enabled.
>> [ 4.844508] ALSA hda_intel.c:1244 0000:01:00.1: codec_mask = 0x1
>> [ 4.844630] ALSA hda_intel.c:1716 0000:01:00.1: codec #0 probed OK
>> [ 4.844632] ALSA hda_intel.c:1837 0000:01:00.1: Enable sync_write for
>> stable communication
>> [ 4.851623] ALSA patch_hdmi.c:1301 HDMI status: Codec=0 Pin=3
>> Presence_Detect=0 ELD_Valid=0
>> [ 4.851654] ALSA patch_hdmi.c:1301 HDMI status: Codec=0 Pin=5
>> Presence_Detect=0 ELD_Valid=0
>> [ 4.851685] ALSA patch_hdmi.c:1301 HDMI status: Codec=0 Pin=7
>> Presence_Detect=0 ELD_Valid=0
>> [ 4.851717] ALSA patch_hdmi.c:1301 HDMI status: Codec=0 Pin=9
>> Presence_Detect=0 ELD_Valid=0
>> [ 4.851751] ALSA patch_hdmi.c:1301 HDMI status: Codec=0 Pin=11
>> Presence_Detect=0 ELD_Valid=0
>> [ 4.851787] ALSA patch_hdmi.c:1301 HDMI status: Codec=0 Pin=13
>> Presence_Detect=0 ELD_Valid=0
>> [ 4.851839] input: HDA ATI HDMI HDMI/DP,pcm=11 as
>> /devices/pci0000:00/0000:00:03.0/0000:01:00.1/sound/card0/input12
>> [ 4.851898] input: HDA ATI HDMI HDMI/DP,pcm=10 as
>> /devices/pci0000:00/0000:00:03.0/0000:01:00.1/sound/card0/input11
>> [ 4.851948] input: HDA ATI HDMI HDMI/DP,pcm=9 as
>> /devices/pci0000:00/0000:00:03.0/0000:01:00.1/sound/card0/input10
>> [ 4.852014] input: HDA ATI HDMI HDMI/DP,pcm=8 as
>> /devices/pci0000:00/0000:00:03.0/0000:01:00.1/sound/card0/input9
>> [ 4.852075] input: HDA ATI HDMI HDMI/DP,pcm=7 as
>> /devices/pci0000:00/0000:00:03.0/0000:01:00.1/sound/card0/input8
>> [ 4.852129] input: HDA ATI HDMI HDMI/DP,pcm=3 as
>> /devices/pci0000:00/0000:00:03.0/0000:01:00.1/sound/card0/input7
>>
>> Does this mean monitor is plugged and graphic driver is requesting
>> monitor to provide EDID ?
>
> The above means that no monitor is plugged in (Presence_Detect=0 on all
> HDMI pins).
>
>>
>> 5.340797] ALSA patch_hdmi.c:972 HDMI hot plug event: Codec=0 Pin=3
>> Presence_Detect=1 ELD_Valid=0
>> [ 5.340812] ALSA patch_hdmi.c:1301 HDMI status: Codec=0 Pin=3
>> Presence_Detect=1 ELD_Valid=1
>> [ 5.340825] ALSA hda_eld.c:334 HDMI: ELD buf size is 0, force 128
>> [ 5.340838] ALSA hda_eld.c:351 HDMI: invalid ELD data byte 0
>> [ 5.340844] ALSA patch_hdmi.c:972 HDMI hot plug event: Codec=0 Pin=5
>> Presence_Detect=1 ELD_Valid=0
>> [ 5.340857] ALSA patch_hdmi.c:1301 HDMI status: Codec=0 Pin=5
>> Presence_Detect=1 ELD_Valid=1
>> [ 5.340870] ALSA hda_eld.c:334 HDMI: ELD buf size is 0, force 128
>> [ 5.340882] ALSA hda_eld.c:351 HDMI: invalid ELD data byte 0
>> [ 5.340885] ALSA patch_hdmi.c:972 HDMI hot plug event: Codec=0 Pin=7
>> Presence_Detect=1 ELD_Valid=0
>> [ 5.340898] ALSA patch_hdmi.c:1301 HDMI status: Codec=0 Pin=7
>> Presence_Detect=1 ELD_Valid=1
>> [ 5.340911] ALSA hda_eld.c:334 HDMI: ELD buf size is 0, force 128
>> [ 5.340923] ALSA hda_eld.c:351 HDMI: invalid ELD data byte 0
>> [ 5.340926] ALSA patch_hdmi.c:972 HDMI hot plug event: Codec=0 Pin=9
>> Presence_Detect=1 ELD_Valid=0
>> [ 5.340939] ALSA patch_hdmi.c:1301 HDMI status: Codec=0 Pin=9
>> Presence_Detect=1 ELD_Valid=1
>> [ 5.340952] ALSA hda_eld.c:334 HDMI: ELD buf size is 0, force 128
>> [ 5.340965] ALSA hda_eld.c:351 HDMI: invalid ELD data byte 0
>> [ 5.340967] ALSA patch_hdmi.c:972 HDMI hot plug event: Codec=0 Pin=11
>> Presence_Detect=1 ELD_Valid=0
>> [ 5.340980] ALSA patch_hdmi.c:1301 HDMI status: Codec=0 Pin=11
>> Presence_Detect=1 ELD_Valid=1
>> [ 5.340993] ALSA hda_eld.c:334 HDMI: ELD buf size is 0, force 128
>> [ 5.341005] ALSA hda_eld.c:351 HDMI: invalid ELD data byte 0
>> [ 5.341008] ALSA patch_hdmi.c:972 HDMI hot plug event: Codec=0 Pin=13
>> Presence_Detect=1 ELD_Valid=0
>> [ 5.341021] ALSA patch_hdmi.c:1301 HDMI status: Codec=0 Pin=13
>> Presence_Detect=1 ELD_Valid=1
>> [ 5.341034] ALSA hda_eld.c:334 HDMI: ELD buf size is 0, force 128
>> [ 5.341046] ALSA hda_eld.c:351 HDMI: invalid ELD data byte 0
>
> And this means the codec reports monitor in all the pins
> (Presence_Detect=1), but the monitor information is missing on all pins.
>
> I'm only getting bits and pieces of the conversation here, but this
> looks like a log from an older kernel without full AMD support as the
> driver tries to use generic ELD methods on AMD hardware (on newer
> kernels, the monitor info is shown in the correct pin and only that
> pin). The presence detect stuff is unchanged on newer kernels, though.
>
>>
>> [ 5.504525] [drm] Radeon Display Connectors
>> [ 5.504527] [drm] Connector 0:
>> [ 5.504528] [drm] DP-1
>> [ 5.504529] [drm] HPD4
>> [ 5.504530] [drm] DDC: 0x6530 0x6530 0x6534 0x6534 0x6538 0x6538
>> 0x653c 0x653c
>> [ 5.504531] [drm] Encoders:
>> [ 5.504532] [drm] DFP1: INTERNAL_UNIPHY2
>> [ 5.504533] [drm] Connector 1:
>> [ 5.504534] [drm] DP-2
>> [ 5.504535] [drm] HPD5
>> [ 5.504536] [drm] DDC: 0x6540 0x6540 0x6544 0x6544 0x6548 0x6548
>> 0x654c 0x654c
>> [ 5.504537] [drm] Encoders:
>> [ 5.504538] [drm] DFP2: INTERNAL_UNIPHY2
>> [ 5.504538] [drm] Connector 2:
>> [ 5.504539] [drm] HDMI-A-1
>> [ 5.504540] [drm] HPD1
>> [ 5.504541] [drm] DDC: 0x6550 0x6550 0x6554 0x6554 0x6558 0x6558
>> 0x655c 0x655c
>> [ 5.504542] [drm] Encoders:
>> [ 5.504543] [drm] DFP3: INTERNAL_UNIPHY1
>> [ 5.504544] [drm] Connector 3:
>> [ 5.504545] [drm] DVI-I-1
>> [ 5.504545] [drm] HPD6
>> [ 5.504547] [drm] DDC: 0x6580 0x6580 0x6584 0x6584 0x6588 0x6588
>> 0x658c 0x658c
>> [ 5.504547] [drm] Encoders:
>> [ 5.504548] [drm] DFP4: INTERNAL_UNIPHY
>> [ 5.504549] [drm] CRT1: INTERNAL_KLDSCP_DAC1
>>
>> [ 5.640237] ALSA patch_hdmi.c:1301 HDMI status: Codec=0 Pin=3
>> Presence_Detect=1 ELD_Valid=1
>> [ 5.640254] ALSA hda_eld.c:334 HDMI: ELD buf size is 0, force 128
>> [ 5.640267] ALSA hda_eld.c:351 HDMI: invalid ELD data byte 0
>> [ 5.640270] ALSA patch_hdmi.c:1301 HDMI status: Codec=0 Pin=5
>> Presence_Detect=1 ELD_Valid=1
>> [ 5.640282] ALSA hda_eld.c:334 HDMI: ELD buf size is 0, force 128
>> [ 5.640295] ALSA hda_eld.c:351 HDMI: invalid ELD data byte 0
>> [ 5.640297] ALSA patch_hdmi.c:1301 HDMI status: Codec=0 Pin=7
>> Presence_Detect=1 ELD_Valid=1
>> [ 5.640310] ALSA hda_eld.c:334 HDMI: ELD buf size is 0, force 128
>> [ 5.640322] ALSA hda_eld.c:351 HDMI: invalid ELD data byte 0
>> [ 5.640324] ALSA patch_hdmi.c:1301 HDMI status: Codec=0 Pin=9
>> Presence_Detect=1 ELD_Valid=1
>> [ 5.640336] ALSA hda_eld.c:334 HDMI: ELD buf size is 0, force 128
>> [ 5.640349] ALSA hda_eld.c:351 HDMI: invalid ELD data byte 0
>> [ 5.640351] ALSA patch_hdmi.c:1301 HDMI status: Codec=0 Pin=11
>> Presence_Detect=1 ELD_Valid=1
>> [ 5.640363] ALSA hda_eld.c:334 HDMI: ELD buf size is 0, force 128
>> [ 5.640376] ALSA hda_eld.c:351 HDMI: invalid ELD data byte 0
>> [ 5.640378] ALSA patch_hdmi.c:1301 HDMI status: Codec=0 Pin=13
>> Presence_Detect=1 ELD_Valid=1
>> [ 5.640390] ALSA hda_eld.c:334 HDMI: ELD buf size is 0, force 128
>> [ 5.640403] ALSA hda_eld.c:351 HDMI: invalid ELD data byte 0
>
> This is ALSA driver retrying reading monitor information (still fails as
> not supported by this driver).
>
>> [ 7.906] (II) RADEON(0): EDID for output DisplayPort-0
>> [ 7.920] (II) RADEON(0): EDID for output DisplayPort-1
>> [ 7.983] (II) RADEON(0): EDID for output HDMI-0
>> [ 7.983] (II) RADEON(0): Manufacturer: DON Model: 26 Serial#: 16843009
>> [ 7.983] (II) RADEON(0): Year: 2011 Week: 0
>> [ 7.983] (II) RADEON(0): EDID Version: 1.3
>> [ 7.983] (II) RADEON(0): Monitor name: DENON-AVAMP
>> [ 7.983] (II) RADEON(0): Number of EDID sections to follow: 1
>> [ 7.983] (II) RADEON(0): EDID (in hex):
>> [ 7.983] (II) RADEON(0): 00ffffffffffff0011ee260001010101
>> [ 7.983] (II) RADEON(0): 00150103800000780adaffa3584aa229
>> [ 7.983] (II) RADEON(0): 17494b00000001010101010101010101
>> [ 7.983] (II) RADEON(0): 010101010101023a801871382d40582c
>> [ 7.983] (II) RADEON(0): 4500ba882100001e011d8018711c1620
>> [ 7.983] (II) RADEON(0): 582c2500ba882100009e000000fc0044
>> [ 7.983] (II) RADEON(0): 454e4f4e2d4156414d500a20000000fd
>> [ 7.983] (II) RADEON(0): 00173d0f440f000a202020202020010d
>> [ 7.983] (II) RADEON(0): 020335714d9005200403020706010e23
>> [ 7.983] (II) RADEON(0): 0f24320f7f073d1ec01507505f7e0157
>> [ 7.983] (II) RADEON(0): 0600677e00835f0000e305030167030c
>> [ 7.983] (II) RADEON(0): 001500b82d011d007251d01e206e2855
>> [ 7.983] (II) RADEON(0): 00ba882100001e8c0ad08a20e02d1010
>> [ 7.983] (II) RADEON(0): 3e9600ba88210000188c0ad08a20e02d
>> [ 7.983] (II) RADEON(0): 10103e96000b88210000188c0aa01451
>> [ 7.983] (II) RADEON(0): f01600267c4300ba88210000980000e7
>>
>>
>> [ 8.003] (II) RADEON(0): EDID for output DVI-0
>> [ 8.003] (II) RADEON(0): Output DisplayPort-0 disconnected
>> [ 8.003] (II) RADEON(0): Output DisplayPort-1 disconnected
>> [ 8.003] (II) RADEON(0): Output HDMI-0 connected
>> [ 8.003] (II) RADEON(0): Output DVI-0 disconnected
>>
>> Does this mean the graphic driver received EDID from DENON-AVAMP and
>> pass ELD to audio driver ?
>
> ATI/AMD does not internally use ELD but analogous custom stuff. But as
> noted, the HDA driver on this kernel does not support reading it, it is
> a 3.12+ feature (though note that writing the info is disabled in 3.12
> radeon video driver on some cards).
A typo here, AMD stuff is a 3.13+ feature.
>>
>> [ 8.228364] ALSA patch_hdmi.c:972 HDMI hot plug event: Codec=0 Pin=3
>> Presence_Detect=0 ELD_Valid=1
>> [ 8.228380] ALSA patch_hdmi.c:1301 HDMI status: Codec=0 Pin=3
>> Presence_Detect=1 ELD_Valid=1
>> [ 8.228393] ALSA hda_eld.c:334 HDMI: ELD buf size is 0, force 128
>> [ 8.228406] ALSA hda_eld.c:351 HDMI: invalid ELD data byte 0
>> [ 8.377652] type=1006 audit(1386558737.773:2): pid=515 uid=0 old
>> auid=4294967295 new auid=1000 old ses=4294967295 new ses=1 res=1
>> [ 8.520795] ALSA hda_codec.c:1633 hda_codec_cleanup_stream: NID=0x2
>> [ 8.521113] ALSA hda_codec.c:1633 hda_codec_cleanup_stream: NID=0x2
>> [ 8.521434] ALSA hda_codec.c:1633 hda_codec_cleanup_stream: NID=0x2
>> [ 8.521727] ALSA hda_codec.c:1633 hda_codec_cleanup_stream: NID=0x2
>> [ 8.526625] ALSA patch_hdmi.c:1301 HDMI status: Codec=0 Pin=3
>> Presence_Detect=1 ELD_Valid=1
>> [ 8.526640] ALSA hda_eld.c:334 HDMI: ELD buf size is 0, force 128
>> [ 8.526652] ALSA hda_eld.c:351 HDMI: invalid ELD data byte 0
>>
>>
>> [ 8.261] (II) config/udev: Adding drm device (/dev/dri/card0)
>> [ 8.262] (II) config/udev: Adding input device HDA ATI HDMI
>> HDMI/DP,pcm=9 (/dev/input/event8)
>> [ 8.262] (II) No input driver specified, ignoring this device.
>> [ 8.262] (II) This device may have been added with another device file.
>> [ 8.262] (II) config/udev: Adding input device HDA ATI HDMI
>> HDMI/DP,pcm=10 (/dev/input/event7)
>> [ 8.262] (II) No input driver specified, ignoring this device.
>> [ 8.262] (II) This device may have been added with another device file.
>> [ 8.262] (II) config/udev: Adding input device HDA ATI HDMI
>> HDMI/DP,pcm=11 (/dev/input/event6)
>> [ 8.262] (II) No input driver specified, ignoring this device.
>> [ 8.262] (II) This device may have been added with another device file.
>> [ 8.262] (II) config/udev: Adding input device HDA ATI HDMI
>> HDMI/DP,pcm=3 (/dev/input/event11)
>> [ 8.262] (II) No input driver specified, ignoring this device.
>> [ 8.262] (II) This device may have been added with another device file.
>> [ 8.262] (II) config/udev: Adding input device HDA ATI HDMI
>> HDMI/DP,pcm=7 (/dev/input/event10)
>> [ 8.262] (II) No input driver specified, ignoring this device.
>> [ 8.262] (II) This device may have been added with another device file.
>> [ 8.263] (II) config/udev: Adding input device HDA ATI HDMI
>> HDMI/DP,pcm=8 (/dev/input/event9)
>> [ 8.263] (II) No input driver specified, ignoring this device.
>> [ 8.263] (II) This device may have been added with another device file.
>> [ 8.263] (II) config/udev: Adding input device Logitech USB Receiver
>> (/dev/input/event0)
>>
>>
>>
>>
>
>
--
Anssi Hannula
More information about the Alsa-devel
mailing list