mirror of
https://github.com/torvalds/linux
synced 2024-10-19 01:39:28 +00:00
thermal: rcar_gen3_thermal: disable interrupt in .remove
Currently IRQ remains enabled after .remove, later if device is probed, IRQ is requested before .thermal_init, this may cause IRQ function be called before device is initialized. this patch disables interrupt in .remove, to ensure irq function only be called after device is fully initialized. Signed-off-by: Jiada Wang <jiada_wang@mentor.com> Reviewed-by: Simon Horman <horms+renesas@verge.net.au> Reviewed-by: Daniel Lezcano <daniel.lezcano@linaro.org> Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
This commit is contained in:
parent
2c0928c9e0
commit
63f55fcea5
|
@ -307,6 +307,9 @@ MODULE_DEVICE_TABLE(of, rcar_gen3_thermal_dt_ids);
|
||||||
static int rcar_gen3_thermal_remove(struct platform_device *pdev)
|
static int rcar_gen3_thermal_remove(struct platform_device *pdev)
|
||||||
{
|
{
|
||||||
struct device *dev = &pdev->dev;
|
struct device *dev = &pdev->dev;
|
||||||
|
struct rcar_gen3_thermal_priv *priv = dev_get_drvdata(dev);
|
||||||
|
|
||||||
|
rcar_thermal_irq_set(priv, false);
|
||||||
|
|
||||||
pm_runtime_put(dev);
|
pm_runtime_put(dev);
|
||||||
pm_runtime_disable(dev);
|
pm_runtime_disable(dev);
|
||||||
|
|
Loading…
Reference in a new issue