mbox series

[v5,0/9] Qualcomm PMIC fixes

Message ID 20231130-b4-qcom-dt-compat-v5-0-41500e237ad0@linaro.org
Headers show
Series Qualcomm PMIC fixes | expand

Message

Caleb Connolly Nov. 30, 2023, 8:22 p.m. UTC
This series addresses some long-standing issues with the SPMI arb
driver, the PMIC, and the PMIC GPIO. It fixes compatibility with
upstream Linux devicetrees, and simplifies pwrkey/resin support by
rewriting the pon driver to be a button driver rather than a GPIO
driver.

Existing users are adjusted to use the new button driver in their
oard init code.

This series is based on the pinctrl [1] and clock [2] cleanup series.
There may be some DTS conflicts applying it standalone.

[1]: https://lore.kernel.org/u-boot/20231106-b4-qcom-pinctrl-v2-0-406e8d8689ca@linaro.org/
[2]: https://lore.kernel.org/u-boot/20231103-b4-qcom-clk-v3-0-8d2d460ece84@linaro.org/

---
Changes in v5:
- Split "rework pwrkey driver into a button driver" into multiple
  commits
- Split "qcom_pmic: fix support for upstream DT" into multiple commits
- Link to v4: https://lore.kernel.org/r/20231128-b4-qcom-dt-compat-v4-0-949d0982d1de@linaro.org

Changes in v4:
* Remove some now unsupported DT binding docs
* Fix qcs404 SPMI arb dts
* Link to v3: https://lore.kernel.org/r/20231114-b4-qcom-dt-compat-v3-0-88a92f8f00ba@linaro.org

Changes in v3:
* Remove now-unneeded header includes in dragonboard{410,820}c-uboot.dtsi
* Drop non-standard DTS support from PMIC GPIO driver
* Also remove old gpio-keys nodes from starqltechn-uboot.dtsi
* Link to v2: https://lore.kernel.org/r/20231108-b4-qcom-dt-compat-v2-0-713233c72948@linaro.org

Changes in v2:
* Avoid using non-standard "label" and "linux,code" properties for
  buttons
* Add missing sdm845 DTS parts
* Put button driver in drivers/button
* Link to v1: https://lore.kernel.org/r/20231106-b4-qcom-dt-compat-v1-0-0ccbb7841241@linaro.org

---
Caleb Connolly (9):
      gpio: qcom_pmic: fix silent dev_read_addr downcast
      button: qcom-pmic: introduce Qualcomm PMIC button driver
      mach-snapdragon: switch to PMIC button driver
      gpio: qcom_pmic: drop pon GPIO driver
      gpio: qcom_pmic: support upstream DT
      dts: qcom: adjust pmic gpio to use upstream bindings
      gpio: qcom_pmic: drop gpio-count property
      spmi: msm: fix register range names
      pmic: qcom: dont use dev_read_addr to get USID

 MAINTAINERS                                      |   1 +
 arch/arm/dts/dragonboard410c-uboot.dtsi          |  11 --
 arch/arm/dts/dragonboard410c.dts                 |  25 +++-
 arch/arm/dts/dragonboard820c-uboot.dtsi          |  12 --
 arch/arm/dts/dragonboard820c.dts                 |  26 ++--
 arch/arm/dts/dragonboard845c-uboot.dtsi          |  11 --
 arch/arm/dts/dragonboard845c.dts                 |   4 +
 arch/arm/dts/qcs404-evb.dts                      |   9 +-
 arch/arm/dts/sdm845.dtsi                         |  28 ++--
 arch/arm/dts/starqltechn-uboot.dtsi              |  10 --
 arch/arm/dts/starqltechn.dts                     |  20 +--
 arch/arm/mach-snapdragon/Kconfig                 |   3 +
 arch/arm/mach-snapdragon/init_sdm845.c           |  45 ++-----
 board/qualcomm/dragonboard410c/dragonboard410c.c |  31 ++---
 board/qualcomm/dragonboard820c/dragonboard820c.c |  29 ++--
 doc/device-tree-bindings/gpio/pm8916_gpio.txt    |  48 -------
 doc/device-tree-bindings/pmic/qcom,spmi-pmic.txt |  94 -------------
 doc/device-tree-bindings/spmi/spmi-msm.txt       |  26 ----
 drivers/button/Kconfig                           |   9 ++
 drivers/button/Makefile                          |   1 +
 drivers/button/button-qcom-pmic.c                | 165 +++++++++++++++++++++++
 drivers/gpio/Kconfig                             |   3 +-
 drivers/gpio/qcom_pmic_gpio.c                    | 146 +++++---------------
 drivers/power/pmic/pmic_qcom.c                   |  13 +-
 drivers/spmi/spmi-msm.c                          |  46 +++----
 25 files changed, 341 insertions(+), 475 deletions(-)
---
base-commit: 4d5dd7090b5ad770974a377f704907893469ebb3

// Caleb (they/them)

Comments

Sumit Garg Dec. 1, 2023, 12:51 p.m. UTC | #1
Hi Caleb,

On Fri, 1 Dec 2023 at 01:52, Caleb Connolly <caleb.connolly@linaro.org> wrote:
>
> This series addresses some long-standing issues with the SPMI arb
> driver, the PMIC, and the PMIC GPIO. It fixes compatibility with
> upstream Linux devicetrees, and simplifies pwrkey/resin support by
> rewriting the pon driver to be a button driver rather than a GPIO
> driver.
>
> Existing users are adjusted to use the new button driver in their
> oard init code.
>
> This series is based on the pinctrl [1] and clock [2] cleanup series.
> There may be some DTS conflicts applying it standalone.
>
> [1]: https://lore.kernel.org/u-boot/20231106-b4-qcom-pinctrl-v2-0-406e8d8689ca@linaro.org/
> [2]: https://lore.kernel.org/u-boot/20231103-b4-qcom-clk-v3-0-8d2d460ece84@linaro.org/
>
> ---
> Changes in v5:
> - Split "rework pwrkey driver into a button driver" into multiple
>   commits
> - Split "qcom_pmic: fix support for upstream DT" into multiple commits
> - Link to v4: https://lore.kernel.org/r/20231128-b4-qcom-dt-compat-v4-0-949d0982d1de@linaro.org
>

This series looks good overall apart from minor issues. So once you
fix them, feel free to add:

Reviewed-by: Sumit Garg <sumit.garg@linaro.org>

Also, I gave this a spin on QCS404 and didn't find any regressions, so:

Tested-by: Sumit Garg <sumit.garg@linaro.org> (QCS404)

-Sumit

> Changes in v4:
> * Remove some now unsupported DT binding docs
> * Fix qcs404 SPMI arb dts
> * Link to v3: https://lore.kernel.org/r/20231114-b4-qcom-dt-compat-v3-0-88a92f8f00ba@linaro.org
>
> Changes in v3:
> * Remove now-unneeded header includes in dragonboard{410,820}c-uboot.dtsi
> * Drop non-standard DTS support from PMIC GPIO driver
> * Also remove old gpio-keys nodes from starqltechn-uboot.dtsi
> * Link to v2: https://lore.kernel.org/r/20231108-b4-qcom-dt-compat-v2-0-713233c72948@linaro.org
>
> Changes in v2:
> * Avoid using non-standard "label" and "linux,code" properties for
>   buttons
> * Add missing sdm845 DTS parts
> * Put button driver in drivers/button
> * Link to v1: https://lore.kernel.org/r/20231106-b4-qcom-dt-compat-v1-0-0ccbb7841241@linaro.org
>
> ---
> Caleb Connolly (9):
>       gpio: qcom_pmic: fix silent dev_read_addr downcast
>       button: qcom-pmic: introduce Qualcomm PMIC button driver
>       mach-snapdragon: switch to PMIC button driver
>       gpio: qcom_pmic: drop pon GPIO driver
>       gpio: qcom_pmic: support upstream DT
>       dts: qcom: adjust pmic gpio to use upstream bindings
>       gpio: qcom_pmic: drop gpio-count property
>       spmi: msm: fix register range names
>       pmic: qcom: dont use dev_read_addr to get USID
>
>  MAINTAINERS                                      |   1 +
>  arch/arm/dts/dragonboard410c-uboot.dtsi          |  11 --
>  arch/arm/dts/dragonboard410c.dts                 |  25 +++-
>  arch/arm/dts/dragonboard820c-uboot.dtsi          |  12 --
>  arch/arm/dts/dragonboard820c.dts                 |  26 ++--
>  arch/arm/dts/dragonboard845c-uboot.dtsi          |  11 --
>  arch/arm/dts/dragonboard845c.dts                 |   4 +
>  arch/arm/dts/qcs404-evb.dts                      |   9 +-
>  arch/arm/dts/sdm845.dtsi                         |  28 ++--
>  arch/arm/dts/starqltechn-uboot.dtsi              |  10 --
>  arch/arm/dts/starqltechn.dts                     |  20 +--
>  arch/arm/mach-snapdragon/Kconfig                 |   3 +
>  arch/arm/mach-snapdragon/init_sdm845.c           |  45 ++-----
>  board/qualcomm/dragonboard410c/dragonboard410c.c |  31 ++---
>  board/qualcomm/dragonboard820c/dragonboard820c.c |  29 ++--
>  doc/device-tree-bindings/gpio/pm8916_gpio.txt    |  48 -------
>  doc/device-tree-bindings/pmic/qcom,spmi-pmic.txt |  94 -------------
>  doc/device-tree-bindings/spmi/spmi-msm.txt       |  26 ----
>  drivers/button/Kconfig                           |   9 ++
>  drivers/button/Makefile                          |   1 +
>  drivers/button/button-qcom-pmic.c                | 165 +++++++++++++++++++++++
>  drivers/gpio/Kconfig                             |   3 +-
>  drivers/gpio/qcom_pmic_gpio.c                    | 146 +++++---------------
>  drivers/power/pmic/pmic_qcom.c                   |  13 +-
>  drivers/spmi/spmi-msm.c                          |  46 +++----
>  25 files changed, 341 insertions(+), 475 deletions(-)
> ---
> base-commit: 4d5dd7090b5ad770974a377f704907893469ebb3
>
> // Caleb (they/them)
>