Message ID | 20221028165215.43662-4-fnkl.kernel@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | PWM and keyboard backlight driver for ARM Macs | expand |
On 28/10/2022 12:52, Sasha Finkelstein wrote: > Adds PWM controller and keyboard backlight bindings for M1 MacBooks > > Signed-off-by: Sasha Finkelstein <fnkl.kernel@gmail.com> > --- > 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..5652cd41730a 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"; > }; > + > +/ { > + pwmleds { Node names should be generic: led-controller https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation > + compatible = "pwm-leds"; > + kbd-backlight { Does not look like you tested the DTS against bindings. Please run `make dtbs_check` (see Documentation/devicetree/bindings/writing-schema.rst for instructions). > + pwms = <&fpwm1 0 40000>; > + label = "kbd_backlight"; > + function = LED_FUNCTION_KBD_BACKLIGHT; > + color = <LED_COLOR_ID_WHITE>; > + max-brightness = <255>; > + default-state = "keep"; > + pwm-names = "kbd-backlight"; This goes just after pwms. > + }; > + }; > +}; > + > +&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..cff53f8770f3 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; > + > +/ { > + pwmleds { Same comments > + compatible = "pwm-leds"; > + kbd-backlight { > + pwms = <&fpwm1 0 40000>; > + label = "kbd_backlight"; > + function = LED_FUNCTION_KBD_BACKLIGHT; > + color = <LED_COLOR_ID_WHITE>; > + max-brightness = <255>; > + default-state = "keep"; > + pwm-names = "kbd-backlight"; > + }; > + }; > +}; > + > +&fpwm1 { > + status = "okay"; > +}; > diff --git a/arch/arm64/boot/dts/apple/t8103.dtsi b/arch/arm64/boot/dts/apple/t8103.dtsi > index 51a63b29d404..a95dc482102e 100644 > --- a/arch/arm64/boot/dts/apple/t8103.dtsi > +++ b/arch/arm64/boot/dts/apple/t8103.dtsi > @@ -191,6 +191,15 @@ i2c4: i2c@235020000 { > status = "disabled"; /* only used in J293 */ > }; > > + fpwm1: fpwm@235044000 { Node names should be generic, so pwm. https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation > + compatible = "apple,t8103-fpwm", "apple,s5l-fpwm"; > + reg = <0x2 0x35044000 0x0 0x4000>; Best regards, Krzysztof
diff --git a/arch/arm64/boot/dts/apple/t8103-j293.dts b/arch/arm64/boot/dts/apple/t8103-j293.dts index ecb10d237a05..5652cd41730a 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"; }; + +/ { + pwmleds { + compatible = "pwm-leds"; + kbd-backlight { + pwms = <&fpwm1 0 40000>; + label = "kbd_backlight"; + function = LED_FUNCTION_KBD_BACKLIGHT; + color = <LED_COLOR_ID_WHITE>; + max-brightness = <255>; + default-state = "keep"; + pwm-names = "kbd-backlight"; + }; + }; +}; + +&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..cff53f8770f3 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; + +/ { + pwmleds { + compatible = "pwm-leds"; + kbd-backlight { + pwms = <&fpwm1 0 40000>; + label = "kbd_backlight"; + function = LED_FUNCTION_KBD_BACKLIGHT; + color = <LED_COLOR_ID_WHITE>; + max-brightness = <255>; + default-state = "keep"; + pwm-names = "kbd-backlight"; + }; + }; +}; + +&fpwm1 { + status = "okay"; +}; diff --git a/arch/arm64/boot/dts/apple/t8103.dtsi b/arch/arm64/boot/dts/apple/t8103.dtsi index 51a63b29d404..a95dc482102e 100644 --- a/arch/arm64/boot/dts/apple/t8103.dtsi +++ b/arch/arm64/boot/dts/apple/t8103.dtsi @@ -191,6 +191,15 @@ i2c4: i2c@235020000 { status = "disabled"; /* only used in J293 */ }; + fpwm1: fpwm@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@235200000 { compatible = "apple,s5l-uart"; reg = <0x2 0x35200000 0x0 0x1000>;
Adds PWM controller and keyboard backlight bindings for M1 MacBooks Signed-off-by: Sasha Finkelstein <fnkl.kernel@gmail.com> --- 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(+)