drm/omap: Remove supported output check in CRTC connect handler
The CRTC connect handler checks whether the DSS output supports the DISPC channel assigned to it. As the channel is assigned to the output by the output driver a failure there could only result from a driver bug. All the output drivers have been verified and they are always assigned a DISPC channel that is supported on the SoC they run on. The check can thus be removed. 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>
This commit is contained in:
parent
67dfd2d3d0
commit
d25a7d6746
|
@ -2904,13 +2904,6 @@ static int dispc_ovl_enable(struct dispc_device *dispc,
|
|||
return 0;
|
||||
}
|
||||
|
||||
static enum omap_dss_output_id
|
||||
dispc_mgr_get_supported_outputs(struct dispc_device *dispc,
|
||||
enum omap_channel channel)
|
||||
{
|
||||
return dss_get_supported_outputs(dispc->dss, channel);
|
||||
}
|
||||
|
||||
static void dispc_lcd_enable_signal_polarity(struct dispc_device *dispc,
|
||||
bool act_high)
|
||||
{
|
||||
|
@ -4742,7 +4735,6 @@ static const struct dispc_ops dispc_ops = {
|
|||
.mgr_set_lcd_config = dispc_mgr_set_lcd_config,
|
||||
.mgr_set_timings = dispc_mgr_set_timings,
|
||||
.mgr_setup = dispc_mgr_setup,
|
||||
.mgr_get_supported_outputs = dispc_mgr_get_supported_outputs,
|
||||
.mgr_gamma_size = dispc_mgr_gamma_size,
|
||||
.mgr_set_gamma = dispc_mgr_set_gamma,
|
||||
|
||||
|
|
|
@ -678,12 +678,6 @@ unsigned long dss_get_max_fck_rate(struct dss_device *dss)
|
|||
return dss->feat->fck_freq_max;
|
||||
}
|
||||
|
||||
enum omap_dss_output_id dss_get_supported_outputs(struct dss_device *dss,
|
||||
enum omap_channel channel)
|
||||
{
|
||||
return dss->feat->outputs[channel];
|
||||
}
|
||||
|
||||
static int dss_setup_default_clock(struct dss_device *dss)
|
||||
{
|
||||
unsigned long max_dss_fck, prate;
|
||||
|
|
|
@ -317,8 +317,6 @@ void dss_runtime_put(struct dss_device *dss);
|
|||
|
||||
unsigned long dss_get_dispc_clk_rate(struct dss_device *dss);
|
||||
unsigned long dss_get_max_fck_rate(struct dss_device *dss);
|
||||
enum omap_dss_output_id dss_get_supported_outputs(struct dss_device *dss,
|
||||
enum omap_channel channel);
|
||||
int dss_dpi_select_source(struct dss_device *dss, int port,
|
||||
enum omap_channel channel);
|
||||
void dss_select_hdmi_venc_clk_source(struct dss_device *dss,
|
||||
|
|
|
@ -640,8 +640,6 @@ struct dispc_ops {
|
|||
const struct videomode *vm);
|
||||
void (*mgr_setup)(struct dispc_device *dispc, enum omap_channel channel,
|
||||
const struct omap_overlay_manager_info *info);
|
||||
enum omap_dss_output_id (*mgr_get_supported_outputs)(
|
||||
struct dispc_device *dispc, enum omap_channel channel);
|
||||
u32 (*mgr_gamma_size)(struct dispc_device *dispc,
|
||||
enum omap_channel channel);
|
||||
void (*mgr_set_gamma)(struct dispc_device *dispc,
|
||||
|
|
|
@ -114,12 +114,6 @@ static int omap_crtc_dss_connect(struct omap_drm_private *priv,
|
|||
enum omap_channel channel,
|
||||
struct omap_dss_device *dst)
|
||||
{
|
||||
const struct dispc_ops *dispc_ops = priv->dispc_ops;
|
||||
struct dispc_device *dispc = priv->dispc;
|
||||
|
||||
if (!(dispc_ops->mgr_get_supported_outputs(dispc, channel) & dst->id))
|
||||
return -EINVAL;
|
||||
|
||||
dst->dispc_channel_connected = true;
|
||||
|
||||
return 0;
|
||||
|
|
Loading…
Reference in a new issue