HDMI 1.4b only requires the 3D_Ext_Data byte for the side-by-side (half) structure, and the vendor infoframe for top-and-bottom is built with a 5-byte payload accordingly. At least one sink family ignores a top-and-bottom VSIF without the sixth byte: a JVC DLA-RS4100 (D-ILA, "ILAFPJ--X214A") stays in 2D on the 5-byte frame and engages its 3D mode the moment the byte is present. Amlogic sources send the 6-byte form for top-and-bottom, which is why the same projector works with them.
Send the extra byte, zero, for top-and-bottom as well. Sinks that do not need it ignore a zero 3D_Ext_Data field. Signed-off-by: Adrian Betschart <[email protected]> --- drivers/gpu/drm/amd/display/modules/info_packet/info_packet.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/gpu/drm/amd/display/modules/info_packet/info_packet.c b/drivers/gpu/drm/amd/display/modules/info_packet/info_packet.c index 13478b8bd..3e41b33ea 100644 --- a/drivers/gpu/drm/amd/display/modules/info_packet/info_packet.c +++ b/drivers/gpu/drm/amd/display/modules/info_packet/info_packet.c @@ -574,6 +574,7 @@ void mod_build_hf_vsif_infopacket(const struct dc_stream_state *stream, case TIMING_3D_FORMAT_TOP_AND_BOTTOM: case TIMING_3D_FORMAT_TB_SW_PACKED: info_packet->sb[5] = (0x6 << 4); + length = 6; break; default: -- 2.43.0
