summaryrefslogtreecommitdiffstats
path: root/drivers/devfreq/tegra-devfreq.c
diff options
context:
space:
mode:
authorTomeu Vizoso <tomeu.vizoso@collabora.com>2015-03-17 10:36:16 +0100
committerMyungJoo Ham <myungjoo.ham@samsung.com>2015-03-31 06:17:14 +0200
commit2da19b1a4d4fadf8d84a5cb6a953749a559a29fb (patch)
treee5744282403e7ce56bcbe79a847988f29aad7897 /drivers/devfreq/tegra-devfreq.c
parentPM / devfreq: tegra: remove operating-points (diff)
downloadlinux-2da19b1a4d4fadf8d84a5cb6a953749a559a29fb.tar.xz
linux-2da19b1a4d4fadf8d84a5cb6a953749a559a29fb.zip
PM / devfreq: tegra: Set drvdata before enabling the irq
To avoid a race in which the interrupt will be handled before the drvdata has been set up. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Acked-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Diffstat (limited to 'drivers/devfreq/tegra-devfreq.c')
-rw-r--r--drivers/devfreq/tegra-devfreq.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/devfreq/tegra-devfreq.c b/drivers/devfreq/tegra-devfreq.c
index 5ba35cc2ea04..7fa1bd4c431b 100644
--- a/drivers/devfreq/tegra-devfreq.c
+++ b/drivers/devfreq/tegra-devfreq.c
@@ -697,6 +697,8 @@ static int tegra_devfreq_probe(struct platform_device *pdev)
return -ENODEV;
}
+ platform_set_drvdata(pdev, tegra);
+
err = devm_request_threaded_irq(&pdev->dev, irq, actmon_isr,
actmon_thread_isr, IRQF_SHARED,
"tegra-devfreq", tegra);
@@ -705,8 +707,6 @@ static int tegra_devfreq_probe(struct platform_device *pdev)
return err;
}
- platform_set_drvdata(pdev, tegra);
-
tegra_devfreq_profile.initial_freq = clk_get_rate(tegra->emc_clock);
tegra->devfreq = devm_devfreq_add_device(&pdev->dev,
&tegra_devfreq_profile,