public inbox for devicetree@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 0/6] pwm: Update PWM_PXA driver for SpacemiT K1
@ 2025-04-29  8:50 Guodong Xu
  2025-04-29  8:50 ` [PATCH v3 1/6] dt-bindings: pwm: marvell,pxa-pwm: Add SpacemiT K1 PWM support Guodong Xu
                   ` (8 more replies)
  0 siblings, 9 replies; 21+ messages in thread
From: Guodong Xu @ 2025-04-29  8:50 UTC (permalink / raw)
  To: ukleinek, robh, krzk+dt, conor+dt, paul.walmsley, palmer, aou,
	alex, dlan, p.zabel, drew, inochiama, geert+renesas, heylenay,
	tglx, hal.feng, unicorn_wang, duje.mihanovic, heikki.krogerus
  Cc: elder, linux-pwm, devicetree, linux-kernel, linux-riscv, spacemit,
	guodong

This patchset adds support for the SpacemiT K1 SoC in the PWM_PXA driver
and updates related device tree bindings. The changes enable PWM
functionality on the K1 platform through driver enhancements,
configuration updates, and device tree additions.

Functionality has been verified on the Banana Pi BPI-F3 board using PWM14,
configured as a pwm-backlight. Per community feedback, the actual
pwm-backlight node is not included in this patchset but can be found in
patch 7 of the v1 series, with modification of pwms property to 4-cell
format to match updated binding (#pwm-cells = <3>) since v3.

+		pwms = <&pwm14 0 2000 0>;

This patchset is based on [spacemit/for-next]
  base: https://github.com/spacemit-com/linux for-next

Plus the following dependencies:
1. Clock controller driver, posted by Heylen Chu (v8), with most of it has
   been accepted:
https://lore.kernel.org/all/20250416135406.16284-1-heylenay@4d2.org/
2. Reset controller driver, posted by Alex Elder (v5):
https://lore.kernel.org/all/20250418145401.2603648-1-elder@riscstar.com/

Major differences between v3 and v2:
 - Patch 1:
    - Added: Reviewed-by: Rob Herring (Arm) <robh@kernel.org> # v2.
    - When compatible string contains "spacemit,k1-pwm",
      #pwm-cells must be 3.
 - Patch 2:
    - Dropped the addition of a reset_control field to struct pxa_pwm_chip.
    - Using a local variable in pwm_probe() instead.
 - Patch 3:
    - In k1.dtsi, changed #pwm-cells = <1> to <3>.

Major differences between v2 and v1:
 - Dropped the addition of spacemit,k1-pwm as a compatible string in the
   PWM_PXA driver; instead, it now falls back to marvell,pxa910-pwm.
 - Removed pinctrl settings for all PWM nodes (pwm0-pwm14); only the
   pwm14_1 configuration is included in this version.
 - Changed PWM_PXA from built-in to a loadable module (=m) in the
   riscv defconfig.

v2 consists of the following patches:
Patch 1: Add spacemit,k1-pwm compatible string (with fallback to
           marvell,pxa910-pwm) and support optional resets property.
Patch 2: Add reset controller support to the PWM_PXA driver.
Patch 3: Add device tree nodes for all 20 PWM instances on K1.
Patch 4: Add pinctrl settings for PWM14.
Patch 5: Add ARCH_SPACEMIT dependency to the PWM_PXA Kconfig entry.
Patch 6: Enable PWM and PWM_PXA in riscv defconfig for SpacemiT K1.

v2:
https://lore.kernel.org/all/20250420070251.378950-1-guodong@riscstar.com/

v1:
https://lore.kernel.org/all/20250411131423.3802611-1-guodong@riscstar.com/

Best regards,
Guodong Xu

Guodong Xu (6):
  dt-bindings: pwm: marvell,pxa-pwm: Add SpacemiT K1 PWM support
  pwm: pxa: add optional reset control
  riscv: dts: spacemit: add PWM support for K1 SoC
  riscv: dts: spacemit: add pwm14_1 pinctrl setting
  pwm: Kconfig: add depends on ARCH_SPACEMIT to PWM_PXA
  riscv: defconfig: Enable PWM support for SpacemiT K1 SoC

 .../bindings/pwm/marvell,pxa-pwm.yaml         |  35 +++-
 arch/riscv/boot/dts/spacemit/k1-pinctrl.dtsi  |   7 +
 arch/riscv/boot/dts/spacemit/k1.dtsi          | 180 ++++++++++++++++++
 arch/riscv/configs/defconfig                  |   2 +
 drivers/pwm/Kconfig                           |   2 +-
 drivers/pwm/pwm-pxa.c                         |   7 +
 6 files changed, 225 insertions(+), 8 deletions(-)


base-commit: cb9c3aeae509b36afbdf46942a7a0a0dfc856ce7
prerequisite-patch-id: a5d2fb43fd88525fa6c8ee767c31adfee87f1012
prerequisite-patch-id: 8a8d0eefd0b4423d87f3c093b451a0fa60622ec4
prerequisite-patch-id: 30f92f93e5b3577bde61424303f21c709a715ec5
prerequisite-patch-id: d774b8281b5c6a822445365ee94925e1ab6c7a93
prerequisite-patch-id: 54a4f5d065eb9f212fd99efec6e7e06abbb9bad8
prerequisite-patch-id: 93962be60d1b58a98d947edf51b4af9edf513785
prerequisite-patch-id: 5f53f8bf16fb067628092daebc4831293261aa01
-- 
2.43.0


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

end of thread, other threads:[~2025-07-10  6:33 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-04-29  8:50 [PATCH v3 0/6] pwm: Update PWM_PXA driver for SpacemiT K1 Guodong Xu
2025-04-29  8:50 ` [PATCH v3 1/6] dt-bindings: pwm: marvell,pxa-pwm: Add SpacemiT K1 PWM support Guodong Xu
2025-04-29  8:50 ` [PATCH v3 2/6] pwm: pxa: add optional reset control Guodong Xu
2025-04-29  8:50 ` [PATCH v3 3/6] riscv: dts: spacemit: add PWM support for K1 SoC Guodong Xu
2025-04-29  8:50 ` [PATCH v3 4/6] riscv: dts: spacemit: add pwm14_1 pinctrl setting Guodong Xu
2025-05-26 16:54   ` Uwe Kleine-König
2025-05-26 21:52     ` Yixun Lan
2025-05-27  2:48       ` Guodong Xu
2025-05-27  3:27         ` Yixun Lan
2025-05-27  4:36           ` Guodong Xu
2025-04-29  8:50 ` [PATCH v3 5/6] pwm: Kconfig: add depends on ARCH_SPACEMIT to PWM_PXA Guodong Xu
2025-04-29  8:50 ` [PATCH v3 6/6] riscv: defconfig: Enable PWM support for SpacemiT K1 SoC Guodong Xu
2025-07-07 22:29   ` Yixun Lan
2025-07-08 16:50     ` Conor Dooley
2025-05-14  7:21 ` [PATCH v3 0/6] pwm: Update PWM_PXA driver for SpacemiT K1 Guodong Xu
2025-05-26 17:22 ` Uwe Kleine-König
2025-05-27  2:41   ` Guodong Xu
2025-05-27  9:03     ` Uwe Kleine-König
2025-07-08 14:33 ` (subset) " Yixun Lan
2025-07-09  6:37   ` Yixun Lan
2025-07-10  6:33     ` Guodong Xu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox