Skip to content

Commit 9a2f1aa

Browse files
committed
Merge tag 'for-v3.13-fixes' of git://git.infradead.org/battery-2.6
Pull battery fixes from Anton Vorontsov: "Two fixes: - fix build error caused by max17042_battery conversion to the regmap API. - fix kernel oops when booting with wakeup_source_activate enabled" * tag 'for-v3.13-fixes' of git://git.infradead.org/battery-2.6: max17042_battery: Fix build errors caused by missing REGMAP_I2C config power_supply: Fix Oops from NULL pointer dereference from wakeup_source_activate
2 parents 23e8e59 + 93353e8 commit 9a2f1aa

File tree

2 files changed

+7
-6
lines changed

2 files changed

+7
-6
lines changed

drivers/power/Kconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,7 @@ config BATTERY_MAX17040
196196
config BATTERY_MAX17042
197197
tristate "Maxim MAX17042/17047/17050/8997/8966 Fuel Gauge"
198198
depends on I2C
199+
select REGMAP_I2C
199200
help
200201
MAX17042 is fuel-gauge systems for lithium-ion (Li+) batteries
201202
in handheld and portable equipment. The MAX17042 is configured

drivers/power/power_supply_core.c

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -511,6 +511,10 @@ int power_supply_register(struct device *parent, struct power_supply *psy)
511511
dev_set_drvdata(dev, psy);
512512
psy->dev = dev;
513513

514+
rc = dev_set_name(dev, "%s", psy->name);
515+
if (rc)
516+
goto dev_set_name_failed;
517+
514518
INIT_WORK(&psy->changed_work, power_supply_changed_work);
515519

516520
rc = power_supply_check_supplies(psy);
@@ -524,10 +528,6 @@ int power_supply_register(struct device *parent, struct power_supply *psy)
524528
if (rc)
525529
goto wakeup_init_failed;
526530

527-
rc = kobject_set_name(&dev->kobj, "%s", psy->name);
528-
if (rc)
529-
goto kobject_set_name_failed;
530-
531531
rc = device_add(dev);
532532
if (rc)
533533
goto device_add_failed;
@@ -553,11 +553,11 @@ int power_supply_register(struct device *parent, struct power_supply *psy)
553553
register_cooler_failed:
554554
psy_unregister_thermal(psy);
555555
register_thermal_failed:
556-
wakeup_init_failed:
557556
device_del(dev);
558-
kobject_set_name_failed:
559557
device_add_failed:
558+
wakeup_init_failed:
560559
check_supplies_failed:
560+
dev_set_name_failed:
561561
put_device(dev);
562562
success:
563563
return rc;

0 commit comments

Comments
 (0)