Fix Regression with AXP20X for 6.13-rc1
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest2 patches 8 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/2 | iio: core: Add devm_ API for iio_channel_get_sysdrivers/ include/ | +38 | 0 replies | |
| 2/2 | power: supply: axp20x: Use devm_iio_channel_get_sys() for iio chansdrivers/ drivers/ drivers/ | +13 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [PATCH 0/2] Fix Regression with AXP20X for 6.13-rc1
From: Chris Morgan <[email protected]>
After performing a git bisect, I identified a commit that broke the battery and charger driver for my AXP717 PMIC. This was caused by commit e37ec3218870 ("mfd: axp20x: Allow multiple regulators").
After digging into it, it appears when mfd_add_devices was called with a platform ID of PLATFORM_DEVID_NONE, the devm_iio_channel_get() call made by the various AXP20X power drivers would not be able to generate a dev_name(dev) for some reason, and the iio_channel_get() call used in the devm_ helper would fall back to making a iio_channel_get_sys() call. After the platform ID was updated, now iio_channel_get() is no longer falling back to iio_channel_get_sys(). At least this is my limited understanding of what happened.
To fix this, I added a new devm_ helper of devm_iio_channel_get_sys() that directly calls iio_channel_get_sys(), and I updated all the affected drivers with the new routine. I then no longer experienced any issues with the drivers on my devices.
Chris Morgan (2):
iio: core: Add devm_ API for iio_channel_get_sys
power: supply: axp20x: Use devm_iio_channel_get_sys() for iio chans
drivers/iio/inkern.c | 18 ++++++++++++++++++ drivers/power/supply/axp20x_ac_power.c | 4 ++-- drivers/power/supply/axp20x_battery.c | 16 ++++++++-------- drivers/power/supply/axp20x_usb_power.c | 6 +++--- include/linux/iio/consumer.h | 20 ++++++++++++++++++++ 5 files changed, 51 insertions(+), 13 deletions(-)
Signature · 1 line
2.43.0