Commit d23286ff authored by Stefan Agner's avatar Stefan Agner Committed by Tomi Valkeinen

drm/bridge: use bus flags in bridge timings

The DRM bus flags convey additional information on pixel data on
the bus. All current available bus flags might be of interest for
a bridge. Remove the sampling_edge field and use bus_flags.

In the case at hand a dumb VGA bridge needs a specific data enable
polarity (DRM_BUS_FLAG_DE_LOW).
Signed-off-by: default avatarStefan Agner <stefan@agner.ch>
Signed-off-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
Tested-by: default avatarSebastian Reichel <sebastian.reichel@collabora.com>
Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
parent 88bc4178
...@@ -234,7 +234,7 @@ static int dumb_vga_remove(struct platform_device *pdev) ...@@ -234,7 +234,7 @@ static int dumb_vga_remove(struct platform_device *pdev)
*/ */
static const struct drm_bridge_timings default_dac_timings = { static const struct drm_bridge_timings default_dac_timings = {
/* Timing specifications, datasheet page 7 */ /* Timing specifications, datasheet page 7 */
.sampling_edge = DRM_BUS_FLAG_PIXDATA_SAMPLE_POSEDGE, .input_bus_flags = DRM_BUS_FLAG_PIXDATA_SAMPLE_POSEDGE,
.setup_time_ps = 500, .setup_time_ps = 500,
.hold_time_ps = 1500, .hold_time_ps = 1500,
}; };
...@@ -245,7 +245,7 @@ static const struct drm_bridge_timings default_dac_timings = { ...@@ -245,7 +245,7 @@ static const struct drm_bridge_timings default_dac_timings = {
*/ */
static const struct drm_bridge_timings ti_ths8134_dac_timings = { static const struct drm_bridge_timings ti_ths8134_dac_timings = {
/* From timing diagram, datasheet page 9 */ /* From timing diagram, datasheet page 9 */
.sampling_edge = DRM_BUS_FLAG_PIXDATA_SAMPLE_POSEDGE, .input_bus_flags = DRM_BUS_FLAG_PIXDATA_SAMPLE_POSEDGE,
/* From datasheet, page 12 */ /* From datasheet, page 12 */
.setup_time_ps = 3000, .setup_time_ps = 3000,
/* I guess this means latched input */ /* I guess this means latched input */
...@@ -258,7 +258,7 @@ static const struct drm_bridge_timings ti_ths8134_dac_timings = { ...@@ -258,7 +258,7 @@ static const struct drm_bridge_timings ti_ths8134_dac_timings = {
*/ */
static const struct drm_bridge_timings ti_ths8135_dac_timings = { static const struct drm_bridge_timings ti_ths8135_dac_timings = {
/* From timing diagram, datasheet page 14 */ /* From timing diagram, datasheet page 14 */
.sampling_edge = DRM_BUS_FLAG_PIXDATA_SAMPLE_POSEDGE, .input_bus_flags = DRM_BUS_FLAG_PIXDATA_SAMPLE_POSEDGE,
/* From datasheet, page 16 */ /* From datasheet, page 16 */
.setup_time_ps = 2000, .setup_time_ps = 2000,
.hold_time_ps = 500, .hold_time_ps = 500,
......
...@@ -244,15 +244,13 @@ struct drm_bridge_funcs { ...@@ -244,15 +244,13 @@ struct drm_bridge_funcs {
*/ */
struct drm_bridge_timings { struct drm_bridge_timings {
/** /**
* @sampling_edge: * @input_bus_flags:
* *
* Tells whether the bridge samples the digital input signals from the * Tells what additional settings for the pixel data on the bus
* display engine on the positive or negative edge of the clock. This * this bridge requires (like pixel signal polarity). See also
* should use the DRM_BUS_FLAG_PIXDATA_SAMPLE_[POS|NEG]EDGE and * &drm_display_info->bus_flags.
* DRM_BUS_FLAG_SYNC_SAMPLE_[POS|NEG]EDGE bitwise flags from the DRM
* connector (bit 2, 3, 6 and 7 valid).
*/ */
u32 sampling_edge; u32 input_bus_flags;
/** /**
* @setup_time_ps: * @setup_time_ps:
* *
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment