devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v16 0/9] Add PWM support for IPQ chipsets
@ 2025-10-01 14:04 George Moussalem via B4 Relay
  2025-10-01 14:04 ` [PATCH v16 1/9] dt-bindings: pwm: add IPQ6018 binding George Moussalem via B4 Relay
                   ` (10 more replies)
  0 siblings, 11 replies; 25+ messages in thread
From: George Moussalem via B4 Relay @ 2025-10-01 14:04 UTC (permalink / raw)
  To: Uwe Kleine-König, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Baruch Siach, Bjorn Andersson, Konrad Dybcio
  Cc: linux-arm-msm, linux-pwm, devicetree, linux-kernel, Devi Priya,
	Krzysztof Kozlowski, Baruch Siach, George Moussalem,
	Bjorn Andersson

Add PWM driver and binding support for IPQ chipsets.
Also, add nodes to add support for pwm in ipq6018, ipq5018, ipq5332, and
ipq9574.

I've picked up work based on Devi's last submission (v15) which dates
back to 05 October 2023 as below SoCs are still active.

V16:

  Removed reg description in bindings as the offset is not relative to
  the TCSR region anymore since simple-mfd support was dropped and PWM
  nodes defined as their own nodes, not child nodes. Updated the example
  too.

  Dropped patch to add simple-mfd support to the qcom,tcsr bindings

  Simplified code to calculate divs and duty cycle as per Uwe's comments

  Removed unused pwm_chip struct from ipq_pwm_chip struct

  Removed unnecessary cast as per Uwe's comment

  Replaced devm_clk_get & clk_prepare_enable by devm_clk_get_enabled

  Replaced pwmchip_add by devm_pwmchip_add and removed .remove function

  Removed .owner from driver struct

  Added compatibles to the bindings and nodes to the device trees to add
  PWM support PWM in the IPQ5018, IPQ5332, and IPQ9574 SoCs

v15:

  No change

v14:

  Picked up the R-b tag

v13:

  Updated the file name to match the compatible

  Sorted the properties and updated the order in the required field

  Dropped the syscon node from examples

v12:

  Picked up the R-b tag

v11:

  No change

v10:

  No change

v9:

  Add 'ranges' property to example (Rob)

  Drop label in example (Rob)

v8:

  Add size cell to 'reg' (Rob)

v7:

  Use 'reg' instead of 'offset' (Rob)

  Drop 'clock-names' and 'assigned-clock*' (Bjorn)

  Use single cell address/size in example node (Bjorn)

  Move '#pwm-cells' lower in example node (Bjorn)

  List 'reg' as required

v6:

  Device node is child of TCSR; remove phandle (Rob Herring)

  Add assigned-clocks/assigned-clock-rates (Uwe Kleine-König)

v5: Use qcom,pwm-regs for phandle instead of direct regs (Bjorn
    Andersson, Kathiravan T)

v4: Update the binding example node as well (Rob Herring's bot)

v3: s/qcom,pwm-ipq6018/qcom,ipq6018-pwm/ (Rob Herring)

v2: Make #pwm-cells const (Rob Herring)

V15:
Detailed Change logs are added to the respective patches.

V14 can be found at:
https://lore.kernel.org/linux-arm-msm/20231005043127.2690639-1-quic_devipriy@quicinc.com/

Devi Priya (4):
  pwm: driver for qualcomm ipq6018 pwm block
  dt-bindings: pwm: add IPQ6018 binding
  dt-bindings: mfd: qcom,tcsr: Add simple-mfd support for IPQ6018
  arm64: dts: qcom: ipq6018: add pwm node

 .../devicetree/bindings/mfd/qcom,tcsr.yaml    | 112 +++++--
 .../bindings/pwm/qcom,ipq6018-pwm.yaml        |  45 +++
 arch/arm64/boot/dts/qcom/ipq6018.dtsi         |  15 +-
 drivers/pwm/Kconfig                           |  12 +
 drivers/pwm/Makefile                          |   1 +
 drivers/pwm/pwm-ipq.c                         | 282 ++++++++++++++++++
 6 files changed, 435 insertions(+), 32 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/pwm/qcom,ipq6018-pwm.yaml
 create mode 100644 drivers/pwm/pwm-ipq.c

--
2.34.1

---
Devi Priya (3):
      dt-bindings: pwm: add IPQ6018 binding
      pwm: driver for qualcomm ipq6018 pwm block
      arm64: dts: qcom: ipq6018: add pwm node

George Moussalem (6):
      dt-bindings: pwm: qcom,ipq6018-pwm: Add compatible for ipq5018
      dt-bindings: pwm: qcom,ipq6018-pwm: Add compatible for ipq5332
      dt-bindings: pwm: qcom,ipq6018-pwm: Add compatible for ipq9574
      arm64: dts: qcom: ipq5018: add pwm node
      arm64: dts: qcom: ipq5332: add pwm node
      arm64: dts: qcom: ipq9574: add pwm node

 .../devicetree/bindings/pwm/qcom,ipq6018-pwm.yaml  |  51 +++++
 arch/arm64/boot/dts/qcom/ipq5018.dtsi              |  10 +
 arch/arm64/boot/dts/qcom/ipq5332.dtsi              |  10 +
 arch/arm64/boot/dts/qcom/ipq6018.dtsi              |  10 +
 arch/arm64/boot/dts/qcom/ipq9574.dtsi              |  10 +
 drivers/pwm/Kconfig                                |  12 ++
 drivers/pwm/Makefile                               |   1 +
 drivers/pwm/pwm-ipq.c                              | 214 +++++++++++++++++++++
 8 files changed, 318 insertions(+)
---
base-commit: 846bd2225ec3cfa8be046655e02b9457ed41973e
change-id: 20250922-ipq-pwm-c8c75c147d52

Best regards,
-- 
George Moussalem <george.moussalem@outlook.com>



^ permalink raw reply	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2025-10-08 13:31 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-01 14:04 [PATCH v16 0/9] Add PWM support for IPQ chipsets George Moussalem via B4 Relay
2025-10-01 14:04 ` [PATCH v16 1/9] dt-bindings: pwm: add IPQ6018 binding George Moussalem via B4 Relay
2025-10-01 14:04 ` [PATCH v16 2/9] pwm: driver for qualcomm ipq6018 pwm block George Moussalem via B4 Relay
2025-10-01 14:04 ` [PATCH v16 3/9] dt-bindings: pwm: qcom,ipq6018-pwm: Add compatible for ipq5018 George Moussalem via B4 Relay
2025-10-05 17:07   ` George Moussalem
2025-10-08 13:31     ` Rob Herring
2025-10-08 13:31   ` Rob Herring (Arm)
2025-10-01 14:04 ` [PATCH v16 4/9] dt-bindings: pwm: qcom,ipq6018-pwm: Add compatible for ipq5332 George Moussalem via B4 Relay
2025-10-08 13:28   ` Rob Herring (Arm)
2025-10-01 14:04 ` [PATCH v16 5/9] dt-bindings: pwm: qcom,ipq6018-pwm: Add compatible for ipq9574 George Moussalem via B4 Relay
2025-10-08 13:28   ` Rob Herring (Arm)
2025-10-01 14:04 ` [PATCH v16 6/9] arm64: dts: qcom: ipq6018: add pwm node George Moussalem via B4 Relay
2025-10-02  2:05   ` Dmitry Baryshkov
2025-10-01 14:04 ` [PATCH v16 7/9] arm64: dts: qcom: ipq5018: " George Moussalem via B4 Relay
2025-10-02  2:06   ` Dmitry Baryshkov
2025-10-01 14:04 ` [PATCH v16 8/9] arm64: dts: qcom: ipq5332: " George Moussalem via B4 Relay
2025-10-02  2:06   ` Dmitry Baryshkov
2025-10-01 14:04 ` [PATCH v16 9/9] arm64: dts: qcom: ipq9574: " George Moussalem via B4 Relay
2025-10-02  2:21   ` Dmitry Baryshkov
2025-10-01 23:42 ` [PATCH v16 0/9] Add PWM support for IPQ chipsets Rob Herring (Arm)
2025-10-03  7:06   ` George Moussalem
2025-10-06 12:06     ` Konrad Dybcio
2025-10-03  9:04 ` Kathiravan Thirumoorthy
2025-10-03  9:30   ` George Moussalem
2025-10-03  9:39     ` Kathiravan Thirumoorthy

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).