[PATCH v7 0/3] pwm: Add pwm driver for Sophgo SG2042
From: Chen Wang
Date: Wed Feb 05 2025 - 01:59:45 EST
From: Chen Wang <unicorn_wang@xxxxxxxxxxx>
Add driver for pwm controller of Sophgo SG2042 SoC.
Thanks,
Chen
---
Changes in v7:
The patch series is based on v6.14-rc1.
Fixed following issues as per comments from Uwe Kleine-König, thanks.
- dt-bindings: change value of "#pwm-cells" from 2 to 3.
- driver: rename variables period/hlperiod to period_ticks/hlperiod_ticks and
improve coding of apply()/get_state(); use
devm_reset_control_get_optional_shared_deasserted() instead of
devm_reset_control_get_optional_shared() and reset_control_deassert();
add more comments and other miscellaneous code improvements.
Changes in v6:
Nothing major changes just rebased onto v6.13-rc1 and retested. You can
simply review or test the patches at the link [6].
Changes in v5:
The patch series is based on v6.12-rc1. You can simply review or test
the patches at the link [5].
Updated driver to add resets property for pwm controller node as per
suggestion from Inochi.
Changes in v4:
The patch series is based on v6.12-rc1. You can simply review or test
the patches at the link [4].
Updated driver to set property atomic of pwm_chip to true as per suggestion
from Sean.
Changes in v3:
The patch series is catched up with v6.12-rc1. You can simply review or test
the patches at the link [3].
Add patch #3 for dts part change.
Changes in v2:
The patch series is based on v6.11-rc6. You can simply review or test the
patches at the link [2].
Fixed following issues as per comments from Yixun Lan, Krzysztof Kozlowski
and Uwe Kleine-König, thanks.
- Some minor issues in dt-bindings.
- driver issues, use macros with name prefix for registers access; add
limitations comments; fixed potential calculation overflow problem;
add .get_state() callback and other miscellaneous code improvements.
Changes in v1:
The patch series is based on v6.11-rc6. You can simply review or test the
patches at the link [1].
Link: https://lore.kernel.org/linux-riscv/cover.1725536870.git.unicorn_wang@xxxxxxxxxxx/ [1]
Link: https://lore.kernel.org/linux-riscv/cover.1725931796.git.unicorn_wang@xxxxxxxxxxx/ [2]
Link: https://lore.kernel.org/linux-riscv/cover.1728355974.git.unicorn_wang@xxxxxxxxxxx/ [3]
Link: https://lore.kernel.org/linux-riscv/cover.1729037302.git.unicorn_wang@xxxxxxxxxxx/ [4]
Link: https://lore.kernel.org/linux-riscv/cover.1729843087.git.unicorn_wang@xxxxxxxxxxx/ [5]
Link: https://lore.kernel.org/linux-riscv/cover.1733281657.git.unicorn_wang@xxxxxxxxxxx/ [6]
---
Chen Wang (3):
dt-bindings: pwm: sophgo: add PWM controller for SG2042
pwm: sophgo: add driver for Sophgo SG2042 PWM
riscv: sophgo: dts: add pwm controller for SG2042 SoC
.../bindings/pwm/sophgo,sg2042-pwm.yaml | 58 ++++++
arch/riscv/boot/dts/sophgo/sg2042.dtsi | 9 +
drivers/pwm/Kconfig | 10 +
drivers/pwm/Makefile | 1 +
drivers/pwm/pwm-sophgo-sg2042.c | 196 ++++++++++++++++++
5 files changed, 274 insertions(+)
create mode 100644 Documentation/devicetree/bindings/pwm/sophgo,sg2042-pwm.yaml
create mode 100644 drivers/pwm/pwm-sophgo-sg2042.c
base-commit: 2014c95afecee3e76ca4a56956a936e23283f05b
--
2.34.1