linux/drivers/gpu/drm/omapdrm/dss
Laurent Pinchart b4935e3a3c drm/omap: Store bus flags in the omap_dss_device structure
Source components in the display pipeline need to configure their output
signals polarities and clock driving edge based on the requirements of
the sink component.

Those requirements are currently shared across the whole pipeline in the
flags of a videomode structure, instead of being local to each bus. This
both prevents multiple buses from having different configurations (when
the hardware supports it), and makes it difficult to move from videomode
to drm_display_mode as the latter doesn't contain bus polarities and
clock edge flags.

Add a bus_flags field to the omap_dss_device structure and move the
DISPLAY_FLAGS_DE_(LOW|HIGH), DISPLAY_FLAGS_PIXDATA_(POS|NEG)EDGE and
DISPLAY_FLAGS_SYNC_(POS|NEG)EDGE videomode flags to bus_flags in all
external encoders, connectors and panels. The videomode flags are still
used internally for internal encoders, this will be addressed in a
second step.

The related videomode flags in the default mode of the DVI connector can
simply be dropped, as they are always overridden by the TFP410 driver.
Note that this results in both the DISPLAY_FLAGS_SYNC_POSEDGE and
DISPLAY_FLAGS_SYNC_NEGEDGE flags being set, which is invalid, but only
the former is tested for when programming the DISPC, so the DVI
connector flags are effectively overridden by the TFP410 flags.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.co.uk>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2018-09-03 16:13:30 +03:00
..
base.c drm/omap: Move most omap_dss_driver operations to omap_dss_device_ops 2018-09-03 16:13:29 +03:00
core.c drm/omap: dss: Move platform_device_register from core.c to dss.c probe 2018-09-03 16:13:25 +03:00
dispc_coefs.c drm: omapdrm: Remove filename from header and fix copyright tag 2017-12-19 11:21:32 +02:00
dispc.c drm/omap: Remove supported output check in CRTC connect handler 2018-09-03 16:13:28 +03:00
dispc.h drm: omapdrm: Remove filename from header and fix copyright tag 2017-12-19 11:21:32 +02:00
display.c drm/omap: dss: Add function to retrieve display for an output 2018-09-03 16:13:27 +03:00
dpi.c drm/omap: Make the video_mode pointer to .set_timings() const 2018-09-03 16:13:29 +03:00
dsi.c drm/omap: Store bus flags in the omap_dss_device structure 2018-09-03 16:13:30 +03:00
dss-of.c drm/omap: dss: Extend omapdss_of_find_source_for_first_ep() to sinks 2018-09-03 16:13:27 +03:00
dss.c drm/omap: Move most omap_dss_driver operations to omap_dss_device_ops 2018-09-03 16:13:29 +03:00
dss.h drm/omap: Remove supported output check in CRTC connect handler 2018-09-03 16:13:28 +03:00
hdmi4_cec.c drm: omapdrm: hdmi4: Allocate the omap_hdmi data structure dynamically 2018-03-01 09:18:18 +02:00
hdmi4_cec.h omapdrm: hdmi4_cec: add OMAP4 HDMI CEC support 2017-10-12 10:49:14 +03:00
hdmi4_core.c drm/omap: check return value from soc_device_match 2018-05-07 10:19:11 -04:00
hdmi4_core.h drm: omapdrm: hdmi4: Allocate the omap_hdmi data structure dynamically 2018-03-01 09:18:18 +02:00
hdmi4.c drm/omap: Make the video_mode pointer to .set_timings() const 2018-09-03 16:13:29 +03:00
hdmi5_core.c drm: omapdrm: Use unsigned int type 2018-03-01 09:09:10 +02:00
hdmi5_core.h
hdmi5.c drm/omap: Make the video_mode pointer to .set_timings() const 2018-09-03 16:13:29 +03:00
hdmi_common.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
hdmi_phy.c drm: omapdrm: Use unsigned int type 2018-03-01 09:09:10 +02:00
hdmi_pll.c drm: omapdrm: dss: Store the registered plls array in struct dss_device 2018-03-01 09:18:18 +02:00
hdmi_wp.c drm: omapdrm: Use unsigned int type 2018-03-01 09:09:10 +02:00
hdmi.h drm: omapdrm: hdmi4: Allocate the omap_hdmi data structure dynamically 2018-03-01 09:18:18 +02:00
Kconfig omapdrm: hdmi4: hook up the HDMI CEC support 2017-10-12 10:49:14 +03:00
Makefile main drm pull request for v4.15 2017-11-15 20:42:10 -08:00
omapdss-boot-init.c drm: omapdrm: Remove filename from header and fix copyright tag 2017-12-19 11:21:32 +02:00
omapdss.h drm/omap: Store bus flags in the omap_dss_device structure 2018-09-03 16:13:30 +03:00
output.c drm/omap: dss: Remove the dss_mgr_(dis)connect() operations 2018-09-03 16:13:28 +03:00
pll.c drm/omap: Implement workaround for DRA7 errata ID:i932 2018-06-28 13:41:05 +03:00
sdi.c drm/omap: Store bus flags in the omap_dss_device structure 2018-09-03 16:13:30 +03:00
venc.c drm/omap: Make the video_mode pointer to .set_timings() const 2018-09-03 16:13:29 +03:00
video-pll.c drm/omap: Implement workaround for DRA7 errata ID:i932 2018-06-28 13:41:05 +03:00