Commit 9109594d authored by Tomi Valkeinen's avatar Tomi Valkeinen

drm/bridge: tfp410: add pclk limits

Add pixel clock limits to the driver as per TFP410 datasheet: min 25MHz,
max 165MHz.
Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
Reviewed-by: default avatarAndrzej Hajda <a.hajda@samsung.com>
Reviewed-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200121094655.9092-1-tomi.valkeinen@ti.com
parent 2f2aa137
...@@ -167,10 +167,23 @@ static void tfp410_disable(struct drm_bridge *bridge) ...@@ -167,10 +167,23 @@ static void tfp410_disable(struct drm_bridge *bridge)
gpiod_set_value_cansleep(dvi->powerdown, 1); gpiod_set_value_cansleep(dvi->powerdown, 1);
} }
static enum drm_mode_status tfp410_mode_valid(struct drm_bridge *bridge,
const struct drm_display_mode *mode)
{
if (mode->clock < 25000)
return MODE_CLOCK_LOW;
if (mode->clock > 165000)
return MODE_CLOCK_HIGH;
return MODE_OK;
}
static const struct drm_bridge_funcs tfp410_bridge_funcs = { static const struct drm_bridge_funcs tfp410_bridge_funcs = {
.attach = tfp410_attach, .attach = tfp410_attach,
.enable = tfp410_enable, .enable = tfp410_enable,
.disable = tfp410_disable, .disable = tfp410_disable,
.mode_valid = tfp410_mode_valid,
}; };
static void tfp410_hpd_work_func(struct work_struct *work) static void tfp410_hpd_work_func(struct work_struct *work)
......
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