return ret;\r
\r
}\r
+\r
+static int pwm_regulator_suspend(struct platform_device *pdev, pm_message_t state)\r
+{\r
+ struct pwm_platform_data *pdata = pdev->dev.platform_data;\r
+ pwm_set_rate(pdata,1000*1000,0);//pwm clk will change to 24M after suspend\r
+ DBG("%s,pwm_id=%d\n",__func__,pdata->pwm_id);\r
+ return 0;\r
+}\r
+\r
+static int pwm_regulator_resume(struct platform_device *pdev)\r
+{\r
+ struct pwm_platform_data *pdata = pdev->dev.platform_data;\r
+ DBG("%s,pwm_id=%d\n",__func__,pdata->pwm_id);\r
+ return 0;\r
+}\r
+\r
static int __devexit pwm_regulator_remove(struct platform_device *pdev)\r
{\r
struct pwm_platform_data *pdata = pdev->dev.platform_data;\r
.driver = {\r
.name = "pwm-voltage-regulator",\r
},\r
+ .suspend = pwm_regulator_suspend,\r
+ .resume = pwm_regulator_resume,\r
.remove = __devexit_p(pwm_regulator_remove),\r
};\r
\r