Commit abd000db authored by Binbin Zhou's avatar Binbin Zhou Committed by Huacai Chen
Browse files

LoongArch: dts: Add PWM support to Loongson-2K1000



The module is supported, enable it.

Also, add the pwm-fan and cooling-maps associated with it.

Reviewed-by: default avatarYanteng Si <si.yanteng@linux.dev>
Signed-off-by: default avatarBinbin Zhou <zhoubinbin@loongson.cn>
Signed-off-by: default avatarHuacai Chen <chenhuacai@loongson.cn>
parent 07aeb50e
Loading
Loading
Loading
Loading
+24 −0
Original line number Diff line number Diff line
@@ -5,6 +5,7 @@

/dts-v1/;

#include "dt-bindings/thermal/thermal.h"
#include "loongson-2k1000.dtsi"

/ {
@@ -38,6 +39,13 @@ linux,cma {
			linux,cma-default;
		};
	};

	fan0: pwm-fan {
		compatible = "pwm-fan";
		cooling-levels = <255 153 85 25>;
		pwms = <&pwm1 0 100000 0>;
		#cooling-cells = <2>;
	};
};

&gmac0 {
@@ -92,6 +100,22 @@ &spi0 {
	#size-cells = <0>;
};

&pwm1 {
	status = "okay";

	pinctrl-0 = <&pwm1_pins_default>;
	pinctrl-names = "default";
};

&cpu_thermal {
	cooling-maps {
		map0 {
			trip = <&cpu_alert>;
			cooling-device = <&fan0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
		};
	};
};

&ehci0 {
	status = "okay";
};
+41 −1
Original line number Diff line number Diff line
@@ -68,7 +68,7 @@ i2c-gpio-1 {
	};

	thermal-zones {
		cpu-thermal {
		cpu_thermal: cpu-thermal {
			polling-delay-passive = <1000>;
			polling-delay = <5000>;
			thermal-sensors = <&tsensor 0>;
@@ -322,6 +322,46 @@ i2c3: i2c@1fe21800 {
			status = "disabled";
		};

		pwm@1fe22000 {
			compatible = "loongson,ls2k1000-pwm", "loongson,ls7a-pwm";
			reg = <0x0 0x1fe22000 0x0 0x10>;
			interrupt-parent = <&liointc0>;
			interrupts = <24 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk LOONGSON2_APB_CLK>;
			#pwm-cells = <3>;
			status = "disabled";
		};

		pwm1: pwm@1fe22010 {
			compatible = "loongson,ls2k1000-pwm", "loongson,ls7a-pwm";
			reg = <0x0 0x1fe22010 0x0 0x10>;
			interrupt-parent = <&liointc0>;
			interrupts = <25 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk LOONGSON2_APB_CLK>;
			#pwm-cells = <3>;
			status = "disabled";
		};

		pwm@1fe22020 {
			compatible = "loongson,ls2k1000-pwm", "loongson,ls7a-pwm";
			reg = <0x0 0x1fe22020 0x0 0x10>;
			interrupt-parent = <&liointc0>;
			interrupts = <26 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk LOONGSON2_APB_CLK>;
			#pwm-cells = <3>;
			status = "disabled";
		};

		pwm@1fe22030 {
			compatible = "loongson,ls2k1000-pwm", "loongson,ls7a-pwm";
			reg = <0x0 0x1fe22030 0x0 0x10>;
			interrupt-parent = <&liointc0>;
			interrupts = <27 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk LOONGSON2_APB_CLK>;
			#pwm-cells = <3>;
			status = "disabled";
		};

		pmc: power-management@1fe27000 {
			compatible = "loongson,ls2k1000-pmc", "loongson,ls2k0500-pmc", "syscon";
			reg = <0x0 0x1fe27000 0x0 0x58>;