From b260ef595ebe0477ea65cc5e4109b760c9535a58 Mon Sep 17 00:00:00 2001 From: Finley Xiao Date: Wed, 2 Aug 2017 16:19:50 +0800 Subject: [PATCH] drm/rockchip: vop: Fix unregister devfreq notifier unsuccessfully Change-Id: I0d1e02eea2af59d63ea2948e14277aa6ad9955b6 Signed-off-by: Finley Xiao --- drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c index 7b4e9ac48956..c2a7b9fe3161 100644 --- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c +++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c @@ -3236,13 +3236,13 @@ static int vop_bind(struct device *dev, struct device *master, void *data) for (i = 0; i < ARRAY_SIZE(dmc_vop); i++) { if (dmc_vop[i]) continue; - dmc_vop[i] = vop; if (devfreq_vop) { - dmc_vop[i]->dmc_nb.notifier_call = dmc_notifier_call; + vop->dmc_nb.notifier_call = dmc_notifier_call; devfreq_register_notifier(devfreq_vop, - &dmc_vop[i]->dmc_nb, + &vop->dmc_nb, DEVFREQ_TRANSITION_NOTIFIER); } + dmc_vop[i] = vop; break; } @@ -3265,7 +3265,8 @@ static void vop_unbind(struct device *dev, struct device *master, void *data) if (!devfreq_vop) break; - devfreq_unregister_notifier(devfreq_vop, &dmc_vop[i]->dmc_nb, + devfreq_unregister_notifier(devfreq_vop, + &vop->dmc_nb, DEVFREQ_TRANSITION_NOTIFIER); break; } -- 2.34.1