On Wednesday, March 23, 2022 6:04 PM, Nikula, Jani <jani.nikula@xxxxxxxxx> wrote : >On Mon, 21 Mar 2022, Cooper Chiou <cooper.chiou@xxxxxxxxx> wrote: >> In DisplayID v2.0 CTS data block 0x81 case, there is no any audio >> information definition, but drm_detect_monitor_audio didn't filter it >> so that it caused eDP dummy audio card be detected improperly. >> >> We observed this issue on some AUO/BOE eDP panel with DID v2.0 CTA >> block, and fix issue by adding filter for edid_ext[0]=DATA_BLOCK_CTA >> case. > >Out of curiosity, what does the CTA DisplayID Data Block have for Data Block revision? > >I haven't found any mention anywhere that it should have any correspondence to the CEA *extension* revision number, which is supposed to be 1..3, and really only 3 for about a decade now. > >Both the DisplayID v1.3 and v2.0 specs only mention revision 0. > >BR, >Jani. > We don't get many issues in EDID with DisplayID structure. In this case, the revision number is "0" as well. As you mentioned, DisplayID v1.3 and v2.0 spec define the block revision value is always 0. Do you think it would cause any problem? Best regards, Shawn >> >> Cc: Jani Nikula <jani.nikula@xxxxxxxxx> >> Cc: Shawn C Lee <shawn.c.lee@xxxxxxxxx> >> >> Signed-off-by: Cooper Chiou <cooper.chiou@xxxxxxxxx> >> --- >> drivers/gpu/drm/drm_edid.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c >> index f5f5de362ff2..6c9ae4b130bd 100644 >> --- a/drivers/gpu/drm/drm_edid.c >> +++ b/drivers/gpu/drm/drm_edid.c >> @@ -4845,7 +4845,7 @@ bool drm_detect_monitor_audio(struct edid *edid) >> int start_offset, end_offset; >> >> edid_ext = drm_find_cea_extension(edid); >> - if (!edid_ext) >> + if (!edid_ext || (edid_ext[0] == DATA_BLOCK_CTA)) >> goto end; >> >> has_audio = ((edid_ext[3] & EDID_BASIC_AUDIO) != 0); > >-- >Jani Nikula, Intel Open Source Graphics Center >