Mule is an MCU that emulates a set of I2C devices which are reachable through an I2C-mux that is implemented in a different patch-series[1]. Device #1 on the mux is a PWM controller that allows users to I2C-configure the PWM output signal. On rk3399-puma-haikou, px30-ringneck-haikou, rk3588-tiger-haikou and rk3588-jaguar boards, this PWM controller is connected to a PWM beeper. +-----------------------------------------------+ | Mule | | +---------------+ | ----+----->|Config register| | | | +--------|------+ | | | | | | | V | | | __ +--------------+ | | | | \-------->| amc6821 | | | | | | +--------------+ | +--------+ | | | M |-------->| PWM over I2C |------->| Beeper | | +------------->| U | +--------------+ | +--------+ | | X |-------->| dev #2 | | | | | +--------------+ | | | /-------->| dev #3 | | | |__/ +--------------+ | +-----------------------------------------------+ This patch-series add support for Mule PWM-over-I2C controller as well as the PWM-beeper on theses boards. The device-tree patches are to be merged after the other patch-series. The dt-bindings and driver patches can be merged regardless of the state of the other series. [1] https://lore.kernel.org/lkml/20240506-dev-mule-i2c-mux-v2-0-a91c954f65d7@xxxxxxxxx/ Signed-off-by: Farouk Bouabid <farouk.bouabid@xxxxxxxxx> --- Farouk Bouabid (6): dt-bindings: pwm: add dt-bindings for mule pwm-over-i2c controller pwm: add mule pwm-over-i2c driver arm64: dts: rockchip: add pwm-beeper to rk3399-puma-haikou arm64: dts: rockchip: add pwm-beeper to px30-ringneck-haikou arm64: dts: rockchip: add pwm-beeper to rk3588-tiger-haikou arm64: dts: rockchip: add pwm-beeper to rk3588-jaguar .../devicetree/bindings/pwm/tsd,pwm-mule.yaml | 46 +++++++++ .../boot/dts/rockchip/px30-ringneck-haikou.dts | 5 + arch/arm64/boot/dts/rockchip/px30-ringneck.dtsi | 13 +++ .../arm64/boot/dts/rockchip/rk3399-puma-haikou.dts | 5 + arch/arm64/boot/dts/rockchip/rk3399-puma.dtsi | 13 +++ arch/arm64/boot/dts/rockchip/rk3588-jaguar.dts | 18 ++++ .../boot/dts/rockchip/rk3588-tiger-haikou.dts | 6 ++ arch/arm64/boot/dts/rockchip/rk3588-tiger.dtsi | 13 +++ drivers/pwm/Kconfig | 10 ++ drivers/pwm/Makefile | 1 + drivers/pwm/pwm-mule.c | 115 +++++++++++++++++++++ 11 files changed, 245 insertions(+) --- base-commit: fd8c3f3cd1b029f1851393839f7ce558db9cf202 change-id: 20240515-buzzer_support-33d93c9d0f1b Best regards, -- Farouk Bouabid <farouk.bouabid@xxxxxxxxx>