[PW_SID:958016] pwm: Update PWM_PXA driver for SpacemiT K1#351
[PW_SID:958016] pwm: Update PWM_PXA driver for SpacemiT K1#351linux-riscv-bot wants to merge 7 commits into
Conversation
The SpacemiT K1 SoC reuses the Marvell PXA910-compatible PWM controller with one notable difference: the addition of a resets property. To make the device tree pass schema validation (make dtbs_check W=3), this patch updates the binding to accept spacemit,k1-pwm as a compatible string, when used in conjunction with the fallback marvell,pxa910-pwm. Support for the optional resets property is also added, as it is required by the K1 integration but was not present in the original Marvell bindings. Since the PWM reset line may be deasserted during the early bootloader stage, making the resets property optional avoids potential double-deassertion, which could otherwise cause flickering on displays that use PWM for backlight control. Additionally, this patch adjusts the required value of the #pwm-cells property for the new compatible string: - For "spacemit,k1-pwm", #pwm-cells must be set to 3. - For existing Marvell compatibles, #pwm-cells remains 1. Background of #pwm-cells change is by an ongoing community discussion about increasing the #pwm-cells value from 1 to 3 for all Marvell PXA PWM devices. These devices are currently the only ones whose bindings do not pass the line index as the first argument. See [1] for further details. [1] https://lore.kernel.org/all/cover.1738842938.git.u.kleine-koenig@baylibre.com/ Reviewed-by: Rob Herring (Arm) <robh@kernel.org> # v2 Signed-off-by: Guodong Xu <guodong@riscstar.com> Signed-off-by: Linux RISC-V bot <linux.riscv.bot@gmail.com>
Support optional reset control for the PWM PXA driver. During the probe, it acquires the reset controller using devm_reset_control_get_optional_exclusive_deasserted() to get and deassert the reset controller to enable the PWM channel. Signed-off-by: Guodong Xu <guodong@riscstar.com> Signed-off-by: Linux RISC-V bot <linux.riscv.bot@gmail.com>
The SpacemiT K1 SoC features a PWM controller with 20 independent channels. Add the corresponding 20 PWM nodes to the device tree. Signed-off-by: Guodong Xu <guodong@riscstar.com> Signed-off-by: Linux RISC-V bot <linux.riscv.bot@gmail.com>
This patch adds the option 1 (hence the name pwm14_1) pinctrl configuration for PWM14 on the SpacemiT K1 SoC. PWM14 option 1 is used for PWM-based backlight control on MIPI displays. This configuration is present on all existing K1 development boards, such as the Banana Pi BPI-F3 and the Milk-V Jupiter. For reference, a more complete list of PWM0-PWM19 pinctrl configurations including all options can be found in [1]. Note: Since the corresponding functionality for other pins is not yet in use or ready for upstreaming, this patch includes only the pwm14_1 setting. [1] https://lore.kernel.org/all/20250411131423.3802611-7-guodong@riscstar.com/ Signed-off-by: Guodong Xu <guodong@riscstar.com> Signed-off-by: Linux RISC-V bot <linux.riscv.bot@gmail.com>
The SpacemiT K1 SoC uses PWM_PXA driver. Update the Kconfig file for the PWM_PXA driver to allow the SpacemiT K1 SoC to use it. Signed-off-by: Guodong Xu <guodong@riscstar.com> Signed-off-by: Linux RISC-V bot <linux.riscv.bot@gmail.com>
Enable CONFIG_PWM and CONFIG_PWM_PXA in the defconfig to support the PWM controller used on the SpacemiT K1 SoC. Signed-off-by: Guodong Xu <guodong@riscstar.com> Signed-off-by: Linux RISC-V bot <linux.riscv.bot@gmail.com>
|
Patch 1: "[v3,1/6] dt-bindings: pwm: marvell,pxa-pwm: Add SpacemiT K1 PWM support" |
|
Patch 1: "[v3,1/6] dt-bindings: pwm: marvell,pxa-pwm: Add SpacemiT K1 PWM support" |
|
Patch 1: "[v3,1/6] dt-bindings: pwm: marvell,pxa-pwm: Add SpacemiT K1 PWM support" |
|
Patch 1: "[v3,1/6] dt-bindings: pwm: marvell,pxa-pwm: Add SpacemiT K1 PWM support" |
|
Patch 1: "[v3,1/6] dt-bindings: pwm: marvell,pxa-pwm: Add SpacemiT K1 PWM support" |
|
Patch 1: "[v3,1/6] dt-bindings: pwm: marvell,pxa-pwm: Add SpacemiT K1 PWM support" |
|
Patch 1: "[v3,1/6] dt-bindings: pwm: marvell,pxa-pwm: Add SpacemiT K1 PWM support" |
|
Patch 1: "[v3,1/6] dt-bindings: pwm: marvell,pxa-pwm: Add SpacemiT K1 PWM support" |
|
Patch 1: "[v3,1/6] dt-bindings: pwm: marvell,pxa-pwm: Add SpacemiT K1 PWM support" |
|
Patch 1: "[v3,1/6] dt-bindings: pwm: marvell,pxa-pwm: Add SpacemiT K1 PWM support" |
|
Patch 1: "[v3,1/6] dt-bindings: pwm: marvell,pxa-pwm: Add SpacemiT K1 PWM support" |
|
Patch 1: "[v3,1/6] dt-bindings: pwm: marvell,pxa-pwm: Add SpacemiT K1 PWM support" |
|
Patch 2: "[v3,2/6] pwm: pxa: add optional reset control" |
|
Patch 2: "[v3,2/6] pwm: pxa: add optional reset control" |
|
Patch 2: "[v3,2/6] pwm: pxa: add optional reset control" |
|
Patch 2: "[v3,2/6] pwm: pxa: add optional reset control" |
|
Patch 2: "[v3,2/6] pwm: pxa: add optional reset control" |
|
Patch 2: "[v3,2/6] pwm: pxa: add optional reset control" |
|
Patch 2: "[v3,2/6] pwm: pxa: add optional reset control" |
|
Patch 2: "[v3,2/6] pwm: pxa: add optional reset control" |
|
Patch 2: "[v3,2/6] pwm: pxa: add optional reset control" |
|
Patch 2: "[v3,2/6] pwm: pxa: add optional reset control" |
|
Patch 2: "[v3,2/6] pwm: pxa: add optional reset control" |
|
Patch 4: "[v3,4/6] riscv: dts: spacemit: add pwm14_1 pinctrl setting" |
|
Patch 4: "[v3,4/6] riscv: dts: spacemit: add pwm14_1 pinctrl setting" |
|
Patch 5: "[v3,5/6] pwm: Kconfig: add depends on ARCH_SPACEMIT to PWM_PXA" |
|
Patch 5: "[v3,5/6] pwm: Kconfig: add depends on ARCH_SPACEMIT to PWM_PXA" |
|
Patch 5: "[v3,5/6] pwm: Kconfig: add depends on ARCH_SPACEMIT to PWM_PXA" |
|
Patch 5: "[v3,5/6] pwm: Kconfig: add depends on ARCH_SPACEMIT to PWM_PXA" |
|
Patch 5: "[v3,5/6] pwm: Kconfig: add depends on ARCH_SPACEMIT to PWM_PXA" |
|
Patch 5: "[v3,5/6] pwm: Kconfig: add depends on ARCH_SPACEMIT to PWM_PXA" |
|
Patch 5: "[v3,5/6] pwm: Kconfig: add depends on ARCH_SPACEMIT to PWM_PXA" |
|
Patch 5: "[v3,5/6] pwm: Kconfig: add depends on ARCH_SPACEMIT to PWM_PXA" |
|
Patch 5: "[v3,5/6] pwm: Kconfig: add depends on ARCH_SPACEMIT to PWM_PXA" |
|
Patch 5: "[v3,5/6] pwm: Kconfig: add depends on ARCH_SPACEMIT to PWM_PXA" |
|
Patch 5: "[v3,5/6] pwm: Kconfig: add depends on ARCH_SPACEMIT to PWM_PXA" |
|
Patch 5: "[v3,5/6] pwm: Kconfig: add depends on ARCH_SPACEMIT to PWM_PXA" |
|
Patch 6: "[v3,6/6] riscv: defconfig: Enable PWM support for SpacemiT K1 SoC" |
|
Patch 6: "[v3,6/6] riscv: defconfig: Enable PWM support for SpacemiT K1 SoC" |
|
Patch 6: "[v3,6/6] riscv: defconfig: Enable PWM support for SpacemiT K1 SoC" |
|
Patch 6: "[v3,6/6] riscv: defconfig: Enable PWM support for SpacemiT K1 SoC" |
|
Patch 6: "[v3,6/6] riscv: defconfig: Enable PWM support for SpacemiT K1 SoC" |
|
Patch 6: "[v3,6/6] riscv: defconfig: Enable PWM support for SpacemiT K1 SoC" |
|
Patch 6: "[v3,6/6] riscv: defconfig: Enable PWM support for SpacemiT K1 SoC" |
|
Patch 6: "[v3,6/6] riscv: defconfig: Enable PWM support for SpacemiT K1 SoC" |
|
Patch 6: "[v3,6/6] riscv: defconfig: Enable PWM support for SpacemiT K1 SoC" |
|
Patch 6: "[v3,6/6] riscv: defconfig: Enable PWM support for SpacemiT K1 SoC" |
|
Patch 6: "[v3,6/6] riscv: defconfig: Enable PWM support for SpacemiT K1 SoC" |
|
Patch 6: "[v3,6/6] riscv: defconfig: Enable PWM support for SpacemiT K1 SoC" |
4d9ad71 to
625be03
Compare
PR for series 958016 applied to workflow__riscv__fixes
Name: pwm: Update PWM_PXA driver for SpacemiT K1
URL: https://patchwork.kernel.org/project/linux-riscv/list/?series=958016
Version: 3