summaryrefslogtreecommitdiffstats
path: root/drivers/clocksource/timer-ti-dm.c
diff options
context:
space:
mode:
authorLadislav Michl <ladis@linux-mips.org>2018-02-15 07:01:49 +0100
committerTony Lindgren <tony@atomide.com>2018-02-22 19:54:14 +0100
commit1a3acad26613fff7c7590ab32ff21f8c2a10fba9 (patch)
treeb1916138b3dfb99f9f8fb364fac0c6140a66b909 /drivers/clocksource/timer-ti-dm.c
parentclocksource: timer-ti-dm: Populate the timer ops to the pdata (diff)
downloadlinux-1a3acad26613fff7c7590ab32ff21f8c2a10fba9.tar.xz
linux-1a3acad26613fff7c7590ab32ff21f8c2a10fba9.zip
clocksource: timer-ti-dm: Hook device platform data if not already assigned
In the case of device tree boot the device platform data is usually NULL so hook the platform data obtained from the match. As part of un-constify the platform_data pointer. Signed-off-by: Ladislav Michl <ladis@linux-mips.org> Signed-off-by: Keerthy <j-keerthy@ti.com> Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.co.uk> Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'drivers/clocksource/timer-ti-dm.c')
-rw-r--r--drivers/clocksource/timer-ti-dm.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/clocksource/timer-ti-dm.c b/drivers/clocksource/timer-ti-dm.c
index 4496172b2927..70782a41c493 100644
--- a/drivers/clocksource/timer-ti-dm.c
+++ b/drivers/clocksource/timer-ti-dm.c
@@ -806,14 +806,16 @@ static int omap_dm_timer_probe(struct platform_device *pdev)
struct omap_dm_timer *timer;
struct resource *mem, *irq;
struct device *dev = &pdev->dev;
- const struct of_device_id *match;
const struct dmtimer_platform_data *pdata;
int ret;
- match = of_match_device(of_match_ptr(omap_timer_match), dev);
- pdata = match ? match->data : dev->platform_data;
+ pdata = of_device_get_match_data(dev);
+ if (!pdata)
+ pdata = dev_get_platdata(dev);
+ else
+ dev->platform_data = (void *)pdata;
- if (!pdata && !dev->of_node) {
+ if (!pdata) {
dev_err(dev, "%s: no platform data.\n", __func__);
return -ENODEV;
}