Message ID | 20230114132508.96600-4-fnkl.kernel@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | PWM and keyboard backlight driver for ARM Macs | expand |
On Sat, Jan 14, 2023 at 04:25:06PM +0300, Sasha Finkelstein wrote: > Adds PWM controller and keyboard backlight bindings for M1 MacBooks > > Signed-off-by: Sasha Finkelstein <fnkl.kernel@gmail.com> > Acked-by: Sven Peter <sven@svenpeter.dev> > --- > arch/arm64/boot/dts/apple/t8103-j293.dts | 17 +++++++++++++++++ > arch/arm64/boot/dts/apple/t8103-j313.dts | 17 +++++++++++++++++ > arch/arm64/boot/dts/apple/t8103.dtsi | 9 +++++++++ > 3 files changed, 43 insertions(+) > > diff --git a/arch/arm64/boot/dts/apple/t8103-j293.dts b/arch/arm64/boot/dts/apple/t8103-j293.dts > index 151074109a11..7381dccc1613 100644 > --- a/arch/arm64/boot/dts/apple/t8103-j293.dts > +++ b/arch/arm64/boot/dts/apple/t8103-j293.dts > @@ -11,10 +11,23 @@ > > #include "t8103.dtsi" > #include "t8103-jxxx.dtsi" > +#include <dt-bindings/leds/common.h> > > / { > compatible = "apple,j293", "apple,t8103", "apple,arm-platform"; > model = "Apple MacBook Pro (13-inch, M1, 2020)"; > + > + led-controller { > + compatible = "pwm-leds"; > + led-0 { > + pwms = <&fpwm1 0 40000>; > + label = "kbd_backlight"; > + function = LED_FUNCTION_KBD_BACKLIGHT; > + color = <LED_COLOR_ID_WHITE>; > + max-brightness = <255>; > + default-state = "keep"; > + }; > + }; > }; > > &bluetooth0 { > @@ -47,3 +60,7 @@ &i2c2 { > &i2c4 { > status = "okay"; > }; > + > +&fpwm1 { > + status = "okay"; > +}; > \ No newline at end of file This missing newline looks wrong. Otherwise the patch looks fine to me. Best regards Uwe
On Wed, 15 Feb 2023 at 12:16, Uwe Kleine-König <u.kleine-koenig@pengutronix.de> wrote: > > This missing newline looks wrong. > > Otherwise the patch looks fine to me. > Do you want a respin, or can this be fixed when applying the patch?
Hello Sasha, On Wed, Feb 15, 2023 at 05:47:07PM +0100, Sasha Finkelstein wrote: > On Wed, 15 Feb 2023 at 12:16, Uwe Kleine-König > <u.kleine-koenig@pengutronix.de> wrote: > > > > This missing newline looks wrong. > > > > Otherwise the patch looks fine to me. > > Do you want a respin, or can this be fixed when applying the patch? I'm not the one who will apply this patch, so I cannot say. Having said that, I wonder who will apply. Will this go via the arm tree, or via pwm? Best regards Uwe
On Wed, 15 Feb 2023 at 19:04, Uwe Kleine-König <u.kleine-koenig@pengutronix.de> wrote: > I'm not the one who will apply this patch, so I cannot say. Having said > that, I wonder who will apply. Will this go via the arm tree, or via > pwm? That is a good question: The pwm driver should probably go via the pwm tree, but the device tree changes would be better via asahi-soc. That leaves the bindings as the, "no idea which one". I wouldn't mind hearing from marcan or Krzysztof as to what their thoughts are on how to send it properly.
Hi, > > On 15. Feb 2023, at 19:19, Sasha Finkelstein <fnkl.kernel@gmail.com> wrote: > > On Wed, 15 Feb 2023 at 19:04, Uwe Kleine-König > <u.kleine-koenig@pengutronix.de> wrote: >> I'm not the one who will apply this patch, so I cannot say. Having said >> that, I wonder who will apply. Will this go via the arm tree, or via >> pwm? > > That is a good question: The pwm driver should probably go via the > pwm tree, but the device tree changes would be better via asahi-soc. > That leaves the bindings as the, "no idea which one". > I wouldn't mind hearing from marcan or Krzysztof as to what their > thoughts are on how to send it properly. The usual process is to take the dt-binding changes and the driver through the subsystem tree (I guess pwm in this case) and the changes to the device trees themselves through our asahi-soc and then through Arnd’s soc tree. Sven
diff --git a/arch/arm64/boot/dts/apple/t8103-j293.dts b/arch/arm64/boot/dts/apple/t8103-j293.dts index 151074109a11..7381dccc1613 100644 --- a/arch/arm64/boot/dts/apple/t8103-j293.dts +++ b/arch/arm64/boot/dts/apple/t8103-j293.dts @@ -11,10 +11,23 @@ #include "t8103.dtsi" #include "t8103-jxxx.dtsi" +#include <dt-bindings/leds/common.h> / { compatible = "apple,j293", "apple,t8103", "apple,arm-platform"; model = "Apple MacBook Pro (13-inch, M1, 2020)"; + + led-controller { + compatible = "pwm-leds"; + led-0 { + pwms = <&fpwm1 0 40000>; + label = "kbd_backlight"; + function = LED_FUNCTION_KBD_BACKLIGHT; + color = <LED_COLOR_ID_WHITE>; + max-brightness = <255>; + default-state = "keep"; + }; + }; }; &bluetooth0 { @@ -47,3 +60,7 @@ &i2c2 { &i2c4 { status = "okay"; }; + +&fpwm1 { + status = "okay"; +}; \ No newline at end of file diff --git a/arch/arm64/boot/dts/apple/t8103-j313.dts b/arch/arm64/boot/dts/apple/t8103-j313.dts index bc1f865aa790..1e26aa1ef525 100644 --- a/arch/arm64/boot/dts/apple/t8103-j313.dts +++ b/arch/arm64/boot/dts/apple/t8103-j313.dts @@ -11,10 +11,23 @@ #include "t8103.dtsi" #include "t8103-jxxx.dtsi" +#include <dt-bindings/leds/common.h> / { compatible = "apple,j313", "apple,t8103", "apple,arm-platform"; model = "Apple MacBook Air (M1, 2020)"; + + led-controller { + compatible = "pwm-leds"; + led-0 { + pwms = <&fpwm1 0 40000>; + label = "kbd_backlight"; + function = LED_FUNCTION_KBD_BACKLIGHT; + color = <LED_COLOR_ID_WHITE>; + max-brightness = <255>; + default-state = "keep"; + }; + }; }; &bluetooth0 { @@ -39,3 +52,7 @@ &pcie0_dart_2 { /delete-node/ &port01; /delete-node/ &port02; + +&fpwm1 { + status = "okay"; +}; diff --git a/arch/arm64/boot/dts/apple/t8103.dtsi b/arch/arm64/boot/dts/apple/t8103.dtsi index 9859219699f4..5300fd115561 100644 --- a/arch/arm64/boot/dts/apple/t8103.dtsi +++ b/arch/arm64/boot/dts/apple/t8103.dtsi @@ -432,6 +432,15 @@ i2c4: i2c@235020000 { status = "disabled"; /* only used in J293 */ }; + fpwm1: pwm@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>;