diff options
Diffstat (limited to 'drivers/pwm/pwm-omap-dmtimer.c')
-rw-r--r-- | drivers/pwm/pwm-omap-dmtimer.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/drivers/pwm/pwm-omap-dmtimer.c b/drivers/pwm/pwm-omap-dmtimer.c index 3e95090cd7cf..5ad42f33e70c 100644 --- a/drivers/pwm/pwm-omap-dmtimer.c +++ b/drivers/pwm/pwm-omap-dmtimer.c | |||
@@ -245,7 +245,7 @@ static int pwm_omap_dmtimer_probe(struct platform_device *pdev) | |||
245 | struct pwm_omap_dmtimer_chip *omap; | 245 | struct pwm_omap_dmtimer_chip *omap; |
246 | struct pwm_omap_dmtimer_pdata *pdata; | 246 | struct pwm_omap_dmtimer_pdata *pdata; |
247 | pwm_omap_dmtimer *dm_timer; | 247 | pwm_omap_dmtimer *dm_timer; |
248 | u32 prescaler; | 248 | u32 v; |
249 | int status; | 249 | int status; |
250 | 250 | ||
251 | pdata = dev_get_platdata(&pdev->dev); | 251 | pdata = dev_get_platdata(&pdev->dev); |
@@ -306,10 +306,12 @@ static int pwm_omap_dmtimer_probe(struct platform_device *pdev) | |||
306 | if (pm_runtime_active(&omap->dm_timer_pdev->dev)) | 306 | if (pm_runtime_active(&omap->dm_timer_pdev->dev)) |
307 | omap->pdata->stop(omap->dm_timer); | 307 | omap->pdata->stop(omap->dm_timer); |
308 | 308 | ||
309 | /* setup dmtimer prescaler */ | 309 | if (!of_property_read_u32(pdev->dev.of_node, "ti,prescaler", &v)) |
310 | if (!of_property_read_u32(pdev->dev.of_node, "ti,prescaler", | 310 | omap->pdata->set_prescaler(omap->dm_timer, v); |
311 | &prescaler)) | 311 | |
312 | omap->pdata->set_prescaler(omap->dm_timer, prescaler); | 312 | /* setup dmtimer clock source */ |
313 | if (!of_property_read_u32(pdev->dev.of_node, "ti,clock-source", &v)) | ||
314 | omap->pdata->set_source(omap->dm_timer, v); | ||
313 | 315 | ||
314 | omap->chip.dev = &pdev->dev; | 316 | omap->chip.dev = &pdev->dev; |
315 | omap->chip.ops = &pwm_omap_dmtimer_ops; | 317 | omap->chip.ops = &pwm_omap_dmtimer_ops; |