static void sdi_display_disable(struct omap_display *display) { if (display->state == OMAP_DSS_DISPLAY_DISABLED) return; if (display->state == OMAP_DSS_DISPLAY_SUSPENDED) { if (sdi_display_resume(display)) return; } display->panel->disable(display); dispc_enable_lcd_out(0); dss_sdi_disable(); dss_clk_disable(DSS_CLK_ICK | DSS_CLK_FCK1); sdi_pad_config(display, 0); twl4030_disable_regulator(RES_VAUX1); display->state = OMAP_DSS_DISPLAY_DISABLED; }
static void sdi_display_disable(struct omap_dss_device *dssdev) { if (dssdev->state == OMAP_DSS_DISPLAY_DISABLED) return; if (dssdev->state == OMAP_DSS_DISPLAY_SUSPENDED) if (sdi_display_resume(dssdev)) return; if (dssdev->driver->disable) dssdev->driver->disable(dssdev); /* TODO: change here if LCD2 support is needed */ dispc_enable_lcd_out(OMAP_DSS_CHANNEL_LCD, 0); dss_sdi_disable(); dss_clk_disable(DSS_CLK_ICK | DSS_CLK_FCK1); dssdev->state = OMAP_DSS_DISPLAY_DISABLED; omap_dss_stop_device(dssdev); }