Merge tag 'for-v6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power...
authorLinus Torvalds <torvalds@linux-foundation.org>
Thu, 14 Mar 2024 17:19:48 +0000 (10:19 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 14 Mar 2024 17:19:48 +0000 (10:19 -0700)
Pull power supply and reset updates from Sebastian Reichel:
 "New features:
   - axp20x_usb_power: report USB type

  Cleanups:
   - convert lots of drivers to use devm_power_supply_register()
   - convert lots of reset drivers to use devm_register_sys_off_handler()
   - constify device_type and power_supply_class
   - axp20x_usb_power: use correct property to report input current limit
   - mm8013: correct handling of "not charging" status register
   - core: fix charge_behaviour formatting
   - minor fixes cleanups"

* tag 'for-v6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply: (66 commits)
  power: supply: core: fix charge_behaviour formatting
  power: supply: core: ease special formatting implementations
  power: supply: mm8013: fix "not charging" detection
  power: supply: move power_supply_attr_groups definition back to sysfs
  power: supply: core: simplify power_supply_class_init
  power: supply: core: add power_supply_for_each_device()
  power: supply: core: make power_supply_class constant
  power: supply: bq2415x_charger: report online status
  power: supply: core: move power_supply_attr_group into #ifdef block
  power: supply: core: Fix power_supply_init_attrs() stub
  power: supply: bq27xxx: Report charge full state correctly
  power: reset: rmobile-reset: Make sysc_base2 local
  power: supply: core: constify the struct device_type usage
  power: supply: axp288_fuel_gauge: Deny ROCK Pi X
  power: reset: rmobile-reset: Map correct MMIO resource
  power: reset: xgene-reboot: Fix a NULL vs IS_ERR() test
  power: supply: axp288_fuel_gauge: Add STCK1A* Intel Compute Sticks to the deny-list
  power: reset: syscon-poweroff: Use devm_register_sys_off_handler(POWER_OFF)
  power: reset: syscon-poweroff: Move device data into a struct
  power: reset: restart-poweroff: Use devm_register_sys_off_handler(POWER_OFF)
  ...

1  2 
drivers/power/supply/bq27xxx_battery_i2c.c

index 9910c600743ebd9b9e01a1cb393c0378ae837807,019f29d13d28a670bf3102c2f53b34d886131047..c1737f964840a1e036b0f9eafdffaafe5da5a2c7
@@@ -209,14 -207,8 +207,10 @@@ static void bq27xxx_battery_i2c_remove(
  {
        struct bq27xxx_device_info *di = i2c_get_clientdata(client);
  
 -      free_irq(client->irq, di);
 +      if (client->irq)
 +              free_irq(client->irq, di);
 +
        bq27xxx_battery_teardown(di);
-       mutex_lock(&battery_mutex);
-       idr_remove(&battery_id, di->id);
-       mutex_unlock(&battery_mutex);
  }
  
  static const struct i2c_device_id bq27xxx_i2c_id_table[] = {