[PATCH v6 3/3] arm64: dts: broadcom: rpi-5: Add RP1 PWM node
Matthias Brugger
mbrugger at suse.com
Tue Jul 7 05:43:59 PDT 2026
On 03/07/2026 19:05, Andrea della Porta wrote:
> From: Stanimir Varbanov <svarbanov at suse.de>
>
> The RP1 chipset used on the Raspberry Pi 5 features an integrated
> PWM controller to drive the cooling fan.
>
> Add the corresponding DT node for this PWM controller.
>
> Signed-off-by: Stanimir Varbanov <svarbanov at suse.de>
> Co-developed-by: Andrea della Porta <andrea.porta at suse.com>
> Signed-off-by: Andrea della Porta <andrea.porta at suse.com>
Reviewed-by: Matthias Brugger <mbrugger at suse.com>
> ---
> arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b.dts | 12 ++++++++++++
> arch/arm64/boot/dts/broadcom/rp1-common.dtsi | 9 +++++++++
> 2 files changed, 21 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b.dts b/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b.dts
> index 0fc57e72632ed..748be8f1ee9e2 100644
> --- a/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b.dts
> +++ b/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b.dts
> @@ -64,6 +64,12 @@ phy1: ethernet-phy at 1 {
> };
>
> &rp1_gpio {
> + fan_pwm_default_state: fan-pwm-default-state {
> + function = "pwm1";
> + pins = "gpio45";
> + bias-pull-down;
> + };
> +
> usb_vbus_default_state: usb-vbus-default-state {
> function = "vbus1";
> groups = "vbus1";
> @@ -94,6 +100,12 @@ &rp1_i2c6 {
> pinctrl-names = "default";
> };
>
> +&rp1_pwm1 {
> + pinctrl-0 = <&fan_pwm_default_state>;
> + pinctrl-names = "default";
> + status = "okay";
> +};
> +
> &rp1_usb0 {
> pinctrl-0 = <&usb_vbus_default_state>;
> pinctrl-names = "default";
> diff --git a/arch/arm64/boot/dts/broadcom/rp1-common.dtsi b/arch/arm64/boot/dts/broadcom/rp1-common.dtsi
> index 16f5359395835..df4c2d09c8d34 100644
> --- a/arch/arm64/boot/dts/broadcom/rp1-common.dtsi
> +++ b/arch/arm64/boot/dts/broadcom/rp1-common.dtsi
> @@ -99,7 +99,16 @@ rp1_i2c6: i2c at 40088000 {
> clocks = <&rp1_clocks RP1_CLK_SYS>;
> i2c-scl-rising-time-ns = <65>;
> i2c-scl-falling-time-ns = <100>;
> + status = "disabled";
> + };
>
> + rp1_pwm1: pwm at 4009c000 {
> + compatible = "raspberrypi,rp1-pwm";
> + reg = <0x00 0x4009c000 0x0 0x100>;
> + clocks = <&rp1_clocks RP1_CLK_PWM1>;
> + assigned-clocks = <&rp1_clocks RP1_CLK_PWM1>;
> + assigned-clock-rates = <50000000>;
> + #pwm-cells = <3>;
> status = "disabled";
> };
>
More information about the linux-arm-kernel
mailing list