arm64: rockchip_defconfig: enable CONFIG_USB_UAS
[firefly-linux-kernel-4.4.55.git] / lib / kobject_uevent.c
index f6c2c1e7779c9c93a11133a27c57081746f5fd2c..586f2f57fbfc359946d50c7098c621038ac99de0 100644 (file)
@@ -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)