linux/drivers/devfreq
Brian Norris 86b091b689 PM / devfreq: rk3399_dmc: Disable edev on remove()
[ Upstream commit 2fccf9e605 ]

Otherwise we hit an unablanced enable-count when unbinding the DFI
device:

[ 1279.659119] ------------[ cut here ]------------
[ 1279.659179] WARNING: CPU: 2 PID: 5638 at drivers/devfreq/devfreq-event.c:360 devfreq_event_remove_edev+0x84/0x8c
...
[ 1279.659352] Hardware name: Google Kevin (DT)
[ 1279.659363] pstate: 80400005 (Nzcv daif +PAN -UAO -TCO BTYPE=--)
[ 1279.659371] pc : devfreq_event_remove_edev+0x84/0x8c
[ 1279.659380] lr : devm_devfreq_event_release+0x1c/0x28
...
[ 1279.659571] Call trace:
[ 1279.659582]  devfreq_event_remove_edev+0x84/0x8c
[ 1279.659590]  devm_devfreq_event_release+0x1c/0x28
[ 1279.659602]  release_nodes+0x1cc/0x244
[ 1279.659611]  devres_release_all+0x44/0x60
[ 1279.659621]  device_release_driver_internal+0x11c/0x1ac
[ 1279.659629]  device_driver_detach+0x20/0x2c
[ 1279.659641]  unbind_store+0x7c/0xb0
[ 1279.659650]  drv_attr_store+0x2c/0x40
[ 1279.659663]  sysfs_kf_write+0x44/0x58
[ 1279.659672]  kernfs_fop_write_iter+0xf4/0x190
[ 1279.659684]  vfs_write+0x2b0/0x2e4
[ 1279.659693]  ksys_write+0x80/0xec
[ 1279.659701]  __arm64_sys_write+0x24/0x30
[ 1279.659714]  el0_svc_common+0xf0/0x1d8
[ 1279.659724]  do_el0_svc_compat+0x28/0x3c
[ 1279.659738]  el0_svc_compat+0x10/0x1c
[ 1279.659746]  el0_sync_compat_handler+0xa8/0xcc
[ 1279.659758]  el0_sync_compat+0x188/0x1c0
[ 1279.659768] ---[ end trace cec200e5094155b4 ]---

Signed-off-by: Brian Norris <briannorris@chromium.org>
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-06-09 10:20:57 +02:00
..
event PM / devfreq: exynos: Rename Exynos to lowercase 2020-01-06 10:50:09 +09:00
devfreq-event.c PM / devfreq: event: Change prototype of devfreq_event_get_edev_by_phandle function 2020-09-29 17:50:10 +09:00
devfreq.c PM / devfreq: Add missing error code in devfreq_add_device() 2021-07-14 16:56:11 +02:00
exynos-bus.c PM / devfreq: event: Change prototype of devfreq_event_get_edev_by_phandle function 2020-09-29 17:50:10 +09:00
governor_passive.c PM / devfreq: passive: fix compiler warning 2019-08-26 21:37:37 +09:00
governor_performance.c
governor_powersave.c
governor_simpleondemand.c PM / devfreq: Change to DEVFREQ_GOV_UPDATE_INTERVAL event name 2020-03-25 08:35:03 +09:00
governor_userspace.c PM / devfreq: Use constant name of userspace governor 2020-03-25 08:35:03 +09:00
governor.h PM / devfreq: Fix a typo in a comment 2020-03-25 08:35:03 +09:00
imx-bus.c PM / devfreq: imx-bus: Fix inconsistent IS_ERR and PTR_ERR 2020-05-28 18:02:40 +09:00
imx8m-ddrc.c PM / devfreq: imx8m-ddrc: Fix inconsistent IS_ERR and PTR_ERR 2019-12-31 03:09:57 +09:00
Kconfig PM / devfreq: Add generic imx bus scaling driver 2020-05-28 18:02:39 +09:00
Makefile PM / devfreq: Add generic imx bus scaling driver 2020-05-28 18:02:39 +09:00
rk3399_dmc.c PM / devfreq: rk3399_dmc: Disable edev on remove() 2022-06-09 10:20:57 +02:00
tegra20-devfreq.c PM / devfreq: Introduce driver for NVIDIA Tegra20 2019-08-24 20:11:12 +09:00
tegra30-devfreq.c PM / devfreq: tegra30: Improve initial hardware resetting 2020-09-29 17:50:10 +09:00