mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-06 10:58:48 +09:00
HACK: lib/kobject_uevent.c: ignore thermal uevent when suspend
Android healthd try to listen power_supply subsystem uevent, but which will block system from suspend on big.LITTLE system because thermal_cooling_device_unregister will called when cpufreq_exit. So ignore this uevent when suspend. Change-Id: I35948498916560d5ec75fe561c9e9d588663ad22 Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
This commit is contained in:
@@ -223,6 +223,21 @@ int kobject_uevent_env(struct kobject *kobj, enum kobject_action action,
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (IS_ENABLED(CONFIG_ARCH_ROCKCHIP) &&
|
||||
IS_ENABLED(CONFIG_FREEZER) &&
|
||||
IS_ENABLED(CONFIG_ANDROID)) {
|
||||
/*
|
||||
* Android healthd try to listen power_supply subsystem uevent,
|
||||
* but which will block system from suspend on big.LITTLE system
|
||||
* because thermal_cooling_device_unregister will called when
|
||||
* cpufreq_exit. So ignore this uevent when suspend.
|
||||
*/
|
||||
extern bool pm_freezing;
|
||||
|
||||
if (pm_freezing && !strcmp(subsystem, "thermal"))
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* environment buffer */
|
||||
env = kzalloc(sizeof(struct kobj_uevent_env), GFP_KERNEL);
|
||||
if (!env)
|
||||
|
||||
Reference in New Issue
Block a user