[v11,0/3] regulator: Add X-Powers AXP15060/AXP313a PMIC support

Message ID 20230524000012.15028-1-andre.przywara@arm.com
Headers
Series regulator: Add X-Powers AXP15060/AXP313a PMIC support |

Message

Andre Przywara May 24, 2023, midnight UTC
  Hi,

this patch series adds support for the X-Powers AXP15060 and AXP313a
PMIC, which are general purpose PMICs as seen on different boards with
different SOCs, mostly from Allwinner.

This is mostly a repost of the previous patches, combining both the
AXP313a and AXP15060 series, rebased on top of v6.4-rc3, and omitting
the patches that already got merged.
The first two patches are the successors of the AXP313a v10 post,
the third patch is based on Shengyu's AXP15060 v3 post.

There were no code changes, just some tiny context differences due to
the rebase, plus I added the newly gained tags.

As the DT bindings and the AXP15060 MFD part are already in the tree,
this is just completing support with the MFD part for the AXP313a, and
the regulator support for both PMICs.

Shengyu, Martin: can you please give this a final test?

Cheers,
Andre

Changelog:

v3/v10 .. v11:
- add broonie's and Chen-Yu's review tags
- rebase on top of v6.4-rc3

AXP313a:
v9 .. v10:
- use MFD_CELL_RES macro
- mark dcdc-freq property as "false" for AXP313a
- add Lee's ACK

v8 .. v9:
- use MFD_CELL_NAME macro
- fix LDO regulator names to match the datasheet
- only mark changing registers as volatile
- use correct register for shutdown operation
- add power key resources
- disallow x-powers,dcdc-freq in the DT binding
- drop unused OUTPUT_MONITOR register name, add SHUTDOWN_CTRL
- require dcdcfreq being 0 (non-present DT property default)

v7 .. v8:
- Add check for dcdcfreq being zero

v6 .. v7:
- Use alphabetical ordering

v5 .. v6:
- change name from AXP1530 to AXP313a
- extend commit messages
- drop AXP*_FREQUENCY register (not used anyway)
- better vertically align struct definitions
- rename IRQs to match names used for other PMICs
- add RTC_LDO regulator
- use decimal numbers for selector ranges
- use macro definitions to name some values
- force DC/DC switching frequency to be fixed at 3 MHz
- change LDO source supply to VIN1 (as per datasheet)

v4 .. v5:
- Use alphabetical ordering in mfd
- Correct { placement line
- Replace spaces with tabs in 1 struct

v3 .. v4:
- Fix indentation

v2 .. v3:
- Move AXP1530 dt-binding to alphabetical order

v1 .. v2:
- Remove RSB support.
- Drop .id = 0
- Add dt-binding for the AXP1530

AXP15060:
v2 .. v3:
- Rebase to AXP313a series v10 [1] + newest (20230420) -next branch
- Disables DC-DC frequency setting
- Add axp_regulator_only_cells rather than directly using axp806_cells
  for cases that IRQ line isn't connected.
- Fix some whitespace
- Rename swout to sw to keep up with bindings
- Add check for setting DC-DC frequency

v1 .. v2:
- Move cpusldo before drivevbus (Krzysztof Kozlowski)


Martin Botka (2):
  mfd: axp20x: Add support for AXP313a PMIC
  regulator: axp20x: Add support for AXP313a variant

Shengyu Qu (1):
  regulator: axp20x: Add AXP15060 support

 drivers/mfd/axp20x-i2c.c             |   2 +
 drivers/mfd/axp20x.c                 |  78 ++++++-
 drivers/regulator/axp20x-regulator.c | 290 ++++++++++++++++++++++++++-
 include/linux/mfd/axp20x.h           |  32 +++
 4 files changed, 393 insertions(+), 9 deletions(-)
  

Comments

Shengyu Qu May 24, 2023, 9:12 a.m. UTC | #1
Hi Andre,

Thank you for your work, test succeeded on AXP15060 with no problem.

Tested-by: Shengyu Qu <wiagn233@outlook.com>

Best regards,

Shengyu

> Hi,
>
> this patch series adds support for the X-Powers AXP15060 and AXP313a
> PMIC, which are general purpose PMICs as seen on different boards with
> different SOCs, mostly from Allwinner.
>
> This is mostly a repost of the previous patches, combining both the
> AXP313a and AXP15060 series, rebased on top of v6.4-rc3, and omitting
> the patches that already got merged.
> The first two patches are the successors of the AXP313a v10 post,
> the third patch is based on Shengyu's AXP15060 v3 post.
>
> There were no code changes, just some tiny context differences due to
> the rebase, plus I added the newly gained tags.
>
> As the DT bindings and the AXP15060 MFD part are already in the tree,
> this is just completing support with the MFD part for the AXP313a, and
> the regulator support for both PMICs.
>
> Shengyu, Martin: can you please give this a final test?
>
> Cheers,
> Andre
>
> Changelog:
>
> v3/v10 .. v11:
> - add broonie's and Chen-Yu's review tags
> - rebase on top of v6.4-rc3
>
> AXP313a:
> v9 .. v10:
> - use MFD_CELL_RES macro
> - mark dcdc-freq property as "false" for AXP313a
> - add Lee's ACK
>
> v8 .. v9:
> - use MFD_CELL_NAME macro
> - fix LDO regulator names to match the datasheet
> - only mark changing registers as volatile
> - use correct register for shutdown operation
> - add power key resources
> - disallow x-powers,dcdc-freq in the DT binding
> - drop unused OUTPUT_MONITOR register name, add SHUTDOWN_CTRL
> - require dcdcfreq being 0 (non-present DT property default)
>
> v7 .. v8:
> - Add check for dcdcfreq being zero
>
> v6 .. v7:
> - Use alphabetical ordering
>
> v5 .. v6:
> - change name from AXP1530 to AXP313a
> - extend commit messages
> - drop AXP*_FREQUENCY register (not used anyway)
> - better vertically align struct definitions
> - rename IRQs to match names used for other PMICs
> - add RTC_LDO regulator
> - use decimal numbers for selector ranges
> - use macro definitions to name some values
> - force DC/DC switching frequency to be fixed at 3 MHz
> - change LDO source supply to VIN1 (as per datasheet)
>
> v4 .. v5:
> - Use alphabetical ordering in mfd
> - Correct { placement line
> - Replace spaces with tabs in 1 struct
>
> v3 .. v4:
> - Fix indentation
>
> v2 .. v3:
> - Move AXP1530 dt-binding to alphabetical order
>
> v1 .. v2:
> - Remove RSB support.
> - Drop .id = 0
> - Add dt-binding for the AXP1530
>
> AXP15060:
> v2 .. v3:
> - Rebase to AXP313a series v10 [1] + newest (20230420) -next branch
> - Disables DC-DC frequency setting
> - Add axp_regulator_only_cells rather than directly using axp806_cells
>    for cases that IRQ line isn't connected.
> - Fix some whitespace
> - Rename swout to sw to keep up with bindings
> - Add check for setting DC-DC frequency
>
> v1 .. v2:
> - Move cpusldo before drivevbus (Krzysztof Kozlowski)
>
>
> Martin Botka (2):
>    mfd: axp20x: Add support for AXP313a PMIC
>    regulator: axp20x: Add support for AXP313a variant
>
> Shengyu Qu (1):
>    regulator: axp20x: Add AXP15060 support
>
>   drivers/mfd/axp20x-i2c.c             |   2 +
>   drivers/mfd/axp20x.c                 |  78 ++++++-
>   drivers/regulator/axp20x-regulator.c | 290 ++++++++++++++++++++++++++-
>   include/linux/mfd/axp20x.h           |  32 +++
>   4 files changed, 393 insertions(+), 9 deletions(-)
>
  
Mark Brown June 6, 2023, 1:30 p.m. UTC | #2
On Wed, 24 May 2023 01:00:09 +0100, Andre Przywara wrote:
> this patch series adds support for the X-Powers AXP15060 and AXP313a
> PMIC, which are general purpose PMICs as seen on different boards with
> different SOCs, mostly from Allwinner.
> 
> This is mostly a repost of the previous patches, combining both the
> AXP313a and AXP15060 series, rebased on top of v6.4-rc3, and omitting
> the patches that already got merged.
> The first two patches are the successors of the AXP313a v10 post,
> the third patch is based on Shengyu's AXP15060 v3 post.
> 
> [...]

Applied to

   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator.git for-next

Thanks!

[2/3] regulator: axp20x: Add support for AXP313a variant
      commit: 60fd7eb89670d2636ac3156881acbd103c6eba6a
[3/3] regulator: axp20x: Add AXP15060 support
      commit: 9e72869d0fe12aba8cd489e485d93912b3f5c248

All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.

You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.

If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.

Please add any relevant lists and maintainers to the CCs when replying
to this mail.

Thanks,
Mark