[PATCH RESEND v3 3/4] arm64: dts: apple: t8103: Add PWM controller

Rob Herring robh at kernel.org
Tue Nov 22 18:28:45 PST 2022


On Mon, Nov 21, 2022 at 08:42:27PM +0300, Sasha Finkelstein wrote:
> Adds PWM controller and keyboard backlight bindings for M1 MacBooks
> 
> Signed-off-by: Sasha Finkelstein <fnkl.kernel at gmail.com>
> Acked-by: Sven Peter <sven at svenpeter.dev>
> ---
>  arch/arm64/boot/dts/apple/t8103-j293.dts | 20 ++++++++++++++++++++
>  arch/arm64/boot/dts/apple/t8103-j313.dts | 20 ++++++++++++++++++++
>  arch/arm64/boot/dts/apple/t8103.dtsi     |  9 +++++++++
>  3 files changed, 49 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/apple/t8103-j293.dts b/arch/arm64/boot/dts/apple/t8103-j293.dts
> index ecb10d237a05..0b4b7e8e0726 100644
> --- a/arch/arm64/boot/dts/apple/t8103-j293.dts
> +++ b/arch/arm64/boot/dts/apple/t8103-j293.dts
> @@ -11,6 +11,7 @@
>  
>  #include "t8103.dtsi"
>  #include "t8103-jxxx.dtsi"
> +#include <dt-bindings/leds/common.h>
>  
>  / {
>  	compatible = "apple,j293", "apple,t8103", "apple,arm-platform";
> @@ -43,3 +44,22 @@ &i2c2 {
>  &i2c4 {
>  	status = "okay";
>  };
> +
> +/ {
> +	led-controller {
> +		compatible = "pwm-leds";
> +		led-0 {
> +			pwms = <&fpwm1 0 40000>;
> +			pwm-names = "kbd-backlight";

While allowed pwm-names isn't really needed here as there is only ever 1 
PWM and it is redundant with 'label'.

> +			label = "kbd_backlight";
> +			function = LED_FUNCTION_KBD_BACKLIGHT;
> +			color = <LED_COLOR_ID_WHITE>;
> +			max-brightness = <255>;
> +			default-state = "keep";
> +		};
> +	};
> +};
> +
> +&fpwm1 {
> +	status = "okay";
> +};
> diff --git a/arch/arm64/boot/dts/apple/t8103-j313.dts b/arch/arm64/boot/dts/apple/t8103-j313.dts
> index df741737b8e6..0e0f57dee96b 100644
> --- a/arch/arm64/boot/dts/apple/t8103-j313.dts
> +++ b/arch/arm64/boot/dts/apple/t8103-j313.dts
> @@ -11,6 +11,7 @@
>  
>  #include "t8103.dtsi"
>  #include "t8103-jxxx.dtsi"
> +#include <dt-bindings/leds/common.h>
>  
>  / {
>  	compatible = "apple,j313", "apple,t8103", "apple,arm-platform";
> @@ -35,3 +36,22 @@ &pcie0_dart_2 {
>  
>  /delete-node/ &port01;
>  /delete-node/ &port02;
> +
> +/ {
> +	led-controller {
> +		compatible = "pwm-leds";
> +		led-0 {
> +			pwms = <&fpwm1 0 40000>;
> +			pwm-names = "kbd-backlight";
> +			label = "kbd_backlight";
> +			function = LED_FUNCTION_KBD_BACKLIGHT;
> +			color = <LED_COLOR_ID_WHITE>;
> +			max-brightness = <255>;
> +			default-state = "keep";
> +		};
> +	};
> +};
> +
> +&fpwm1 {
> +	status = "okay";
> +};
> diff --git a/arch/arm64/boot/dts/apple/t8103.dtsi b/arch/arm64/boot/dts/apple/t8103.dtsi
> index 51a63b29d404..ccdb26ef6b22 100644
> --- a/arch/arm64/boot/dts/apple/t8103.dtsi
> +++ b/arch/arm64/boot/dts/apple/t8103.dtsi
> @@ -191,6 +191,15 @@ i2c4: i2c at 235020000 {
>  			status = "disabled"; /* only used in J293 */
>  		};
>  
> +		fpwm1: pwm at 235044000 {
> +			compatible = "apple,t8103-fpwm", "apple,s5l-fpwm";
> +			reg = <0x2 0x35044000 0x0 0x4000>;
> +			power-domains = <&ps_fpwm1>;
> +			clocks = <&clkref>;
> +			#pwm-cells = <2>;
> +			status = "disabled";
> +		};
> +
>  		serial0: serial at 235200000 {
>  			compatible = "apple,s5l-uart";
>  			reg = <0x2 0x35200000 0x0 0x1000>;
> -- 
> 2.38.1
> 
> 



More information about the linux-arm-kernel mailing list