linux-uconsole/drivers/power/supply
Stephen Boyd 8a1327879f power: supply: Init device wakeup after device_add()
[ Upstream commit 8288022284 ]

We may want to use the device pointer in device_init_wakeup() with
functions that expect the device to already be added with device_add().
For example, if we were to link the device initializing wakeup to
something in sysfs such as a class for wakeups we'll run into an error.
It looks like this code was written with the assumption that the device
would be added before initializing wakeup due to the order of operations
in power_supply_unregister().

Let's change the order of operations so we don't run into problems here.

Fixes: 948dcf9662 ("power_supply: Prevent suspend until power supply events are processed")
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Tri Vo <trong@android.com>
Cc: Kalesh Singh <kaleshsingh@google.com>
Cc: Ravi Chandra Sadineni <ravisadineni@chromium.org>
Cc: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Stephen Boyd <swboyd@chromium.org>
Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-01-27 14:51:08 +01:00
..
88pm860x_battery.c
88pm860x_charger.c
ab8500_bmdata.c power: supply: ab8500: Drop AB8540/9540 support 2018-04-25 23:49:44 +02:00
ab8500_btemp.c power: supply: ab8500: Drop AB8540/9540 support 2018-04-25 23:49:44 +02:00
ab8500_charger.c power: supply: ab8500_charger: fix spelling mistake: "faile" -> "failed" 2018-05-01 13:31:38 +02:00
ab8500_fg.c power: supply: ab8500_fg: silence uninitialized variable warnings 2019-11-20 18:46:45 +01:00
abx500_chargalg.c power: supply: ab8500: Drop AB8540/9540 support 2018-04-25 23:49:44 +02:00
act8945a_charger.c power: supply: act8945a_charger: fix of_irq_get() error check 2017-07-24 14:09:00 +02:00
adp5061.c power: supply: adp5061: Fix a couple off by ones 2018-07-11 12:00:24 +02:00
apm_power.c
axp20x_ac_power.c power: supply: account for const type of of_device_id.data 2018-01-08 18:40:46 +01:00
axp20x_battery.c power: supply: axp20x_battery: add support for AXP813 2018-03-09 16:52:33 +01:00
axp20x_usb_power.c power: supply: mark expected switch fall-throughs 2018-07-23 00:10:47 +02:00
axp288_charger.c power: supply: axp288_charger: Fix unchecked return value 2019-05-22 07:37:35 +02:00
axp288_fuel_gauge.c power: supply: axp288_fuel_gauge: Add ACEPC T8 and T11 mini PCs to the blacklist 2019-05-22 07:37:35 +02:00
bq27xxx_battery.c power: supply: bq27xxx: Update comments 2018-07-24 11:58:50 +02:00
bq27xxx_battery_hdq.c power: supply: bq27xxx: move platform driver code into bq27xxx_battery_hdq.c 2017-07-25 15:31:21 +02:00
bq27xxx_battery_i2c.c power: supply: bq27xxx: Add support for BQ27426 2018-04-25 23:11:47 +02:00
bq2415x_charger.c power: supply: bq2415x: add DT referencing support 2018-03-12 14:34:51 +01:00
bq24190_charger.c bq24190: Simplify code in property_is_writeable 2018-01-08 18:40:06 +01:00
bq24257_charger.c
bq24735-charger.c power: supply: bq24735: remove incorrect le16_to_cpu calls 2017-06-15 16:47:35 +02:00
bq25890_charger.c
charger-manager.c power: supply: charger-manager: Fix incorrect return value 2019-03-27 14:14:43 +09:00
collie_battery.c
cpcap-battery.c power: supply: cpcap-battery: Fix signed counter sample register 2019-12-17 20:35:37 +01:00
cpcap-charger.c cpcap-charger: generate events for userspace 2019-03-23 20:10:09 +01:00
cros_usbpd-charger.c power: supply: mark expected switch fall-throughs 2018-07-23 00:10:47 +02:00
da9030_battery.c
da9052-battery.c
da9150-charger.c
da9150-fg.c power: supply: da9150-fg: remove VLA usage 2018-03-12 14:34:52 +01:00
ds2760_battery.c power: supply: ds2760_battery: add devicetree probing 2018-07-11 18:09:09 +02:00
ds2780_battery.c power: add to_power_supply macro to the API 2018-02-21 23:27:13 +01:00
ds2781_battery.c power: add to_power_supply macro to the API 2018-02-21 23:27:13 +01:00
ds2782_battery.c
generic-adc-battery.c power: generic-adc-battery: check for duplicate properties copied from iio channels 2018-07-06 18:58:44 +02:00
goldfish_battery.c
gpio-charger.c power: supply: simplify getting .drvdata 2018-04-25 23:15:51 +02:00
ipaq_micro_battery.c
isp1704_charger.c power: supply: isp1704: Fix unchecked return value of devm_kzalloc 2017-05-01 11:52:25 +02:00
jz4740-battery.c
Kconfig Immutable branch for moving ds2760 driver from w1 to power supply 2018-07-22 23:33:24 +02:00
lego_ev3_battery.c power: supply: lego_ev3_battery: fix Vce offset 2018-07-22 23:33:43 +02:00
lp8727_charger.c
lp8788-charger.c power: supply: lp8788: Make several arrays static const * const 2017-08-12 13:58:14 -04:00
ltc2941-battery-gauge.c Merge branch 'fixes' into for-next 2018-03-12 14:35:10 +01:00
ltc3651-charger.c power: supply: ltc3651-charger: fix some error codes in probe 2017-06-08 13:05:27 +02:00
Makefile adp5061: New driver for ADP5061 I2C battery charger 2018-07-06 19:36:14 +02:00
max1721x_battery.c power: supply: max1721x: fix spelling mistake "RSenese" -> "RSense" 2018-06-28 14:24:13 +02:00
max8903_charger.c
max8925_power.c
max8997_charger.c power: supply: max8997: Improve a size determination in probe 2017-11-06 13:49:12 +01:00
max8998_charger.c power: supply: max8998-charger: Fix platform data retrieval 2019-11-20 18:46:47 +01:00
max14577_charger.c
max14656_charger_detector.c power: supply: max14656: fix potential use-after-free 2019-11-06 13:05:39 +01:00
max17040_battery.c
max17042_battery.c max17042: propagate of_node to power supply device 2018-03-12 14:29:52 +01:00
max77693_charger.c power: supply: max77693_charger: fix unintentional fall-through 2018-07-23 00:14:49 +02:00
olpc_battery.c power: supply: olpc_battery: correct the temperature units 2019-01-13 09:51:10 +01:00
pcf50633-charger.c power: supply: pcf50633-charger: remove redundant variable charging_start 2017-11-06 13:49:57 +01:00
pda_power.c power: supply: pda_power: move from timer to delayed_work 2017-05-01 12:41:58 +02:00
pm2301_charger.c
pm2301_charger.h
pmu_battery.c
power_supply.h
power_supply_core.c power: supply: Init device wakeup after device_add() 2020-01-27 14:51:08 +01:00
power_supply_leds.c
power_supply_sysfs.c power: supply: sysfs: ratelimit property read error message 2019-10-01 08:26:07 +02:00
qcom_smbb.c extcon: Split out extcon header file for consumer and provider device 2017-10-23 14:07:58 +09:00
rt5033_battery.c
rt9455_charger.c
rx51_battery.c power: supply: avoid unused twl4030-madc.h 2017-05-01 13:03:09 +02:00
s3c_adc_battery.c power: supply: s3c-adc-battery: fix driver data initialization 2018-04-26 00:12:11 +02:00
sbs-battery.c power: supply: sbs-battery: only return health when battery present 2019-10-11 18:20:56 +02:00
sbs-charger.c
sbs-manager.c power: supply: sbs-message: double left shift bug in sbsm_select() 2017-12-01 16:08:00 +01:00
smb347-charger.c
test_power.c
tosa_battery.c
tps65090-charger.c
tps65217_charger.c power: supply: tps65217: Switch to SPDX identifier. 2018-06-28 14:19:20 +02:00
twl4030_charger.c power: supply: twl4030_charger: disable eoc interrupt on linear charge 2019-11-20 18:47:01 +01:00
twl4030_madc_battery.c power: supply: avoid unused twl4030-madc.h 2017-05-01 13:03:09 +02:00
wm97xx_battery.c treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
wm831x_backup.c
wm831x_power.c power: wm831x_power: Support USB charger current limit management 2017-08-15 15:05:01 +03:00
wm8350_power.c power: supply: mark expected switch fall-throughs 2018-07-23 00:10:47 +02:00
z2_battery.c treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00