mirror of https://gitee.com/openkylin/linux.git
drm/omap: dsi: move enable/disable to bridge enable/disable
Clean up the code by inlining dsi_enable_video_outputs and dsi_disable_video_outputs functions. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.com> Link: https://patchwork.freedesktop.org/patch/msgid/20201215104657.802264-76-tomi.valkeinen@ti.com
This commit is contained in:
parent
7aa5234623
commit
5d676b6f27
|
@ -3338,20 +3338,6 @@ static void dsi_disable_video_output(struct omap_dss_device *dssdev, int vc)
|
|||
dsi_display_uninit_dispc(dsi);
|
||||
}
|
||||
|
||||
static void dsi_disable_video_outputs(struct omap_dss_device *dssdev)
|
||||
{
|
||||
struct dsi_data *dsi = to_dsi_data(dssdev);
|
||||
|
||||
dsi_bus_lock(dsi);
|
||||
dsi->video_enabled = false;
|
||||
|
||||
dsi_disable_video_output(dssdev, VC_VIDEO);
|
||||
|
||||
dsi_display_disable(dssdev);
|
||||
|
||||
dsi_bus_unlock(dsi);
|
||||
}
|
||||
|
||||
static void dsi_update_screen_dispc(struct dsi_data *dsi)
|
||||
{
|
||||
unsigned int bytespp;
|
||||
|
@ -3793,23 +3779,6 @@ static void dsi_display_enable(struct omap_dss_device *dssdev)
|
|||
_dsi_display_enable(dsi);
|
||||
}
|
||||
|
||||
static void dsi_enable_video_outputs(struct omap_dss_device *dssdev)
|
||||
{
|
||||
struct dsi_data *dsi = to_dsi_data(dssdev);
|
||||
|
||||
dsi_bus_lock(dsi);
|
||||
|
||||
dsi_display_enable(dssdev);
|
||||
|
||||
dsi_enable_video_output(dssdev, VC_VIDEO);
|
||||
|
||||
dsi->video_enabled = true;
|
||||
|
||||
dsi_set_ulps_auto(dsi, true);
|
||||
|
||||
dsi_bus_unlock(dsi);
|
||||
}
|
||||
|
||||
static void _dsi_display_disable(struct dsi_data *dsi,
|
||||
bool disconnect_lanes, bool enter_ulps)
|
||||
{
|
||||
|
@ -4971,15 +4940,35 @@ static void dsi_bridge_mode_set(struct drm_bridge *bridge,
|
|||
static void dsi_bridge_enable(struct drm_bridge *bridge)
|
||||
{
|
||||
struct dsi_data *dsi = drm_bridge_to_dsi(bridge);
|
||||
struct omap_dss_device *dssdev = &dsi->output;
|
||||
|
||||
dsi_enable_video_outputs(&dsi->output);
|
||||
dsi_bus_lock(dsi);
|
||||
|
||||
dsi_display_enable(dssdev);
|
||||
|
||||
dsi_enable_video_output(dssdev, VC_VIDEO);
|
||||
|
||||
dsi->video_enabled = true;
|
||||
|
||||
dsi_set_ulps_auto(dsi, true);
|
||||
|
||||
dsi_bus_unlock(dsi);
|
||||
}
|
||||
|
||||
static void dsi_bridge_disable(struct drm_bridge *bridge)
|
||||
{
|
||||
struct dsi_data *dsi = drm_bridge_to_dsi(bridge);
|
||||
struct omap_dss_device *dssdev = &dsi->output;
|
||||
|
||||
dsi_disable_video_outputs(&dsi->output);
|
||||
dsi_bus_lock(dsi);
|
||||
|
||||
dsi->video_enabled = false;
|
||||
|
||||
dsi_disable_video_output(dssdev, VC_VIDEO);
|
||||
|
||||
dsi_display_disable(dssdev);
|
||||
|
||||
dsi_bus_unlock(dsi);
|
||||
}
|
||||
|
||||
static const struct drm_bridge_funcs dsi_bridge_funcs = {
|
||||
|
|
Loading…
Reference in New Issue