From 6fb0c4f6edb2e8d87948458f7fab87b29d726dd5 Mon Sep 17 00:00:00 2001 From: Geng Xiujun Date: Thu, 17 May 2012 10:44:34 +0800 Subject: [PATCH] Gfx-display: correct sleep function usage for DVx BZ: 36765 use usleep_range instead of mdelay and msleep for short time delay. Change-Id: Ic9b1bb246e555d8817d87f4d25347bcf0a9f7049 Signed-off-by: Geng Xiujun Reviewed-on: http://android.intel.com:8080/49126 Reviewed-by: Hogander, Jouni Reviewed-by: Xu, Randy Tested-by: Tong, BoX Reviewed-by: Imberton, Guilhem Reviewed-by: buildbot Tested-by: buildbot --- drivers/staging/mrst/drv/mdfld_dsi_lvds_bridge.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/drivers/staging/mrst/drv/mdfld_dsi_lvds_bridge.c b/drivers/staging/mrst/drv/mdfld_dsi_lvds_bridge.c index 6abb375..3112641 100644 --- a/drivers/staging/mrst/drv/mdfld_dsi_lvds_bridge.c +++ b/drivers/staging/mrst/drv/mdfld_dsi_lvds_bridge.c @@ -362,7 +362,7 @@ void dsi_lvds_suspend_lvds_bridge(struct drm_device *dev) if (gpio_direction_output(GPIO_MIPI_BRIDGE_RESET, 0)) gpio_set_value_cansleep(GPIO_MIPI_BRIDGE_RESET, 0); - msleep(10); + usleep_range(500, 1000); lvds_suspend_state = true; } @@ -388,15 +388,15 @@ void dsi_lvds_resume_lvds_bridge(struct drm_device *dev) /* RESET */ if (gpio_direction_output(GPIO_MIPI_BRIDGE_RESET, 1)) gpio_set_value_cansleep(GPIO_MIPI_BRIDGE_RESET, 1); - msleep(20); + usleep_range(500, 1000); if (gpio_direction_output(GPIO_MIPI_BRIDGE_RESET, 0)) gpio_set_value_cansleep(GPIO_MIPI_BRIDGE_RESET, 0); - msleep(20); + usleep_range(500, 1000); if (gpio_direction_output(GPIO_MIPI_BRIDGE_RESET, 1)) gpio_set_value_cansleep(GPIO_MIPI_BRIDGE_RESET, 1); - msleep(20); + usleep_range(500, 1000); lvds_suspend_state = false; } @@ -415,17 +415,17 @@ void dsi_lvds_set_bridge_reset_state(int state) gpio_set_value_cansleep(GPIO_MIPI_BRIDGE_RESET, 0); /* FIXME: * per spec, the min period of reset signal is 50 nano secs, - * but no detailed description. Here delay 1ms for safe. + * but no detailed description. Here wait 0.5~1ms for safe. */ - mdelay(1); + usleep_range(500, 1000); } else { if (gpio_direction_output(GPIO_MIPI_BRIDGE_RESET, 0)) gpio_set_value_cansleep(GPIO_MIPI_BRIDGE_RESET, 0); /*Pull MIPI Bridge reset pin to Low */ - mdelay(1); + usleep_range(500, 1000); if (gpio_direction_output(GPIO_MIPI_BRIDGE_RESET, 1)) gpio_set_value_cansleep(GPIO_MIPI_BRIDGE_RESET, 1); /*Pull MIPI Bridge reset pin to High */ - mdelay(1); + usleep_range(500, 1000); } } @@ -539,7 +539,7 @@ void dsi_lvds_toshiba_bridge_panel_off(void) if (gpio_direction_output(GPIO_MIPI_LCD_BL_EN, 0)) gpio_set_value_cansleep(GPIO_MIPI_LCD_BL_EN, 0); - mdelay(1); + usleep_range(1000, 2000); /* try to turn vadd off */ vlcm_vadd_put(); -- 2.7.4