linux-stable/drivers/gpu/drm/bridge
Ville Syrjälä f1781e9bb2 drm/edid: Allow HDMI infoframe without VIC or S3D
Appedix F of HDMI 2.0 says that some HDMI sink may fail to switch from
3D to 2D mode in a timely fashion if the source simply stops sending the
HDMI infoframe. The suggested workaround is to keep sending the
infoframe even when strictly not necessary (ie. no VIC and no S3D).
HDMI 1.4 does allow for this behaviour, stating that sending the
infoframe is optional in this case.

The infoframe was first specified in HDMI 1.4, so in theory sinks
predating that may not appreciate us sending an uknown infoframe
their way. To avoid regressions let's try to determine if the sink
supports the infoframe or not. Unfortunately there's no direct way
to do that, so instead we'll just check if we managed to parse any
HDMI 1.4 4k or stereo modes from the EDID, and if so we assume the
sink will accept the infoframe. Also if the EDID contains the HDMI
2.0 HDMI Forum VSDB we can assume the sink is prepared to receive
the infoframe.

v2: Fix getting has_hdmi_infoframe from display_info
    Always fail constructing the infoframe if the display
    possibly can't handle it

Cc: Shashank Sharma <shashank.sharma@intel.com>
Cc: Andrzej Hajda <a.hajda@samsung.com>
Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Shashank Sharma <shashank.sharma@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20171113170427.4150-3-ville.syrjala@linux.intel.com
2017-11-22 19:24:34 +02:00
..
adv7511 drm/bridge: adv7511: Fix a use after free 2017-10-18 09:38:43 +05:30
analogix drm: Nuke drm_atomic_helper_connector_dpms 2017-08-08 14:48:48 +02:00
synopsys drm/edid: Allow HDMI infoframe without VIC or S3D 2017-11-22 19:24:34 +02:00
analogix-anx78xx.c drm/drivers: drop redundant drm_edid_to_eld() calls 2017-11-07 17:43:35 +02:00
analogix-anx78xx.h drm/bridge: Add Analogix anx78xx support 2016-05-12 11:32:14 +02:00
dumb-vga-dac.c drm: Nuke drm_atomic_helper_connector_dpms 2017-08-08 14:48:48 +02:00
Kconfig drm/bridge/sii8620: add remote control support 2017-10-11 13:14:25 +02:00
lvds-encoder.c drm/bridge: Refactor out the panel wrapper from the lvds-encoder bridge. 2017-06-05 14:00:40 +05:30
Makefile drm/bridge: add Silicon Image SiI9234 driver 2017-10-06 14:28:22 +02:00
megachips-stdpxxxx-ge-b850v3-fw.c drm: Nuke drm_atomic_helper_connector_dpms 2017-08-08 14:48:48 +02:00
nxp-ptn3460.c drm: Nuke drm_atomic_helper_connector_dpms 2017-08-08 14:48:48 +02:00
panel.c drm/bridge: make drm_panel_bridge_remove more robust 2017-10-10 11:32:35 +02:00
parade-ps8622.c drm: Nuke drm_atomic_helper_connector_dpms 2017-08-08 14:48:48 +02:00
sii902x.c drm: Nuke drm_atomic_helper_connector_dpms 2017-08-08 14:48:48 +02:00
sii9234.c drm/bridge: add Silicon Image SiI9234 driver 2017-10-06 14:28:22 +02:00
sil-sii8620.c drm/edid: Allow HDMI infoframe without VIC or S3D 2017-11-22 19:24:34 +02:00
sil-sii8620.h drm/bridge/sii8620: add HSIC initialization code 2017-02-02 15:15:30 +05:30
tc358767.c Linux 4.13-rc5 2017-08-15 16:16:58 +10:00
ti-tfp410.c drm: Nuke drm_atomic_helper_connector_dpms 2017-08-08 14:48:48 +02:00