aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/omapdrm
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/omapdrm')
-rw-r--r--drivers/gpu/drm/omapdrm/dss/dsi.c21
1 files changed, 10 insertions, 11 deletions
diff --git a/drivers/gpu/drm/omapdrm/dss/dsi.c b/drivers/gpu/drm/omapdrm/dss/dsi.c
index ecfdc6ef2500..0c4668e722b9 100644
--- a/drivers/gpu/drm/omapdrm/dss/dsi.c
+++ b/drivers/gpu/drm/omapdrm/dss/dsi.c
@@ -215,10 +215,8 @@ struct dsi_reg { u16 module; u16 idx; };
215typedef void (*omap_dsi_isr_t) (void *arg, u32 mask); 215typedef void (*omap_dsi_isr_t) (void *arg, u32 mask);
216struct dsi_data; 216struct dsi_data;
217 217
218static int dsi_display_init_dispc(struct dsi_data *dsi, 218static int dsi_display_init_dispc(struct dsi_data *dsi);
219 enum omap_channel channel); 219static void dsi_display_uninit_dispc(struct dsi_data *dsi);
220static void dsi_display_uninit_dispc(struct dsi_data *dsi,
221 enum omap_channel channel);
222 220
223static int dsi_vc_send_null(struct dsi_data *dsi, int channel); 221static int dsi_vc_send_null(struct dsi_data *dsi, int channel);
224 222
@@ -3845,7 +3843,7 @@ static int dsi_enable_video_output(struct omap_dss_device *dssdev, int channel)
3845 return -ENODEV; 3843 return -ENODEV;
3846 } 3844 }
3847 3845
3848 r = dsi_display_init_dispc(dsi, dispc_channel); 3846 r = dsi_display_init_dispc(dsi);
3849 if (r) 3847 if (r)
3850 goto err_init_dispc; 3848 goto err_init_dispc;
3851 3849
@@ -3895,7 +3893,7 @@ err_mgr_enable:
3895 dsi_vc_enable(dsi, channel, false); 3893 dsi_vc_enable(dsi, channel, false);
3896 } 3894 }
3897err_pix_fmt: 3895err_pix_fmt:
3898 dsi_display_uninit_dispc(dsi, dispc_channel); 3896 dsi_display_uninit_dispc(dsi);
3899err_init_dispc: 3897err_init_dispc:
3900 return r; 3898 return r;
3901} 3899}
@@ -3918,7 +3916,7 @@ static void dsi_disable_video_output(struct omap_dss_device *dssdev, int channel
3918 3916
3919 dss_mgr_disable(dispc_channel); 3917 dss_mgr_disable(dispc_channel);
3920 3918
3921 dsi_display_uninit_dispc(dsi, dispc_channel); 3919 dsi_display_uninit_dispc(dsi);
3922} 3920}
3923 3921
3924static void dsi_update_screen_dispc(struct dsi_data *dsi) 3922static void dsi_update_screen_dispc(struct dsi_data *dsi)
@@ -4104,9 +4102,9 @@ static int dsi_configure_dispc_clocks(struct dsi_data *dsi)
4104 return 0; 4102 return 0;
4105} 4103}
4106 4104
4107static int dsi_display_init_dispc(struct dsi_data *dsi, 4105static int dsi_display_init_dispc(struct dsi_data *dsi)
4108 enum omap_channel channel)
4109{ 4106{
4107 enum omap_channel channel = dsi->output.dispc_channel;
4110 int r; 4108 int r;
4111 4109
4112 dss_select_lcd_clk_source(dsi->dss, channel, dsi->module_id == 0 ? 4110 dss_select_lcd_clk_source(dsi->dss, channel, dsi->module_id == 0 ?
@@ -4167,9 +4165,10 @@ err:
4167 return r; 4165 return r;
4168} 4166}
4169 4167
4170static void dsi_display_uninit_dispc(struct dsi_data *dsi, 4168static void dsi_display_uninit_dispc(struct dsi_data *dsi)
4171 enum omap_channel channel)
4172{ 4169{
4170 enum omap_channel channel = dsi->output.dispc_channel;
4171
4173 if (dsi->mode == OMAP_DSS_DSI_CMD_MODE) 4172 if (dsi->mode == OMAP_DSS_DSI_CMD_MODE)
4174 dss_mgr_unregister_framedone_handler(channel, 4173 dss_mgr_unregister_framedone_handler(channel,
4175 dsi_framedone_irq_callback, dsi); 4174 dsi_framedone_irq_callback, dsi);