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