[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20241203080425.GA1282717@robin.jannau.net>
Date: Tue, 3 Dec 2024 09:04:25 +0100
From: Janne Grunau <j@...nau.net>
To: fnkl.kernel@...il.com
Cc: Hector Martin <marcan@...can.st>, Sven Peter <sven@...npeter.dev>,
Alyssa Rosenzweig <alyssa@...enzweig.io>,
Dmitry Torokhov <dmitry.torokhov@...il.com>,
Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>,
Henrik Rydberg <rydberg@...math.org>, asahi@...ts.linux.dev,
linux-arm-kernel@...ts.infradead.org, linux-input@...r.kernel.org,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 3/4] arm64: dts: apple: Add touchbar digitizer nodes
On Thu, Nov 28, 2024 at 11:29:18PM +0100, Sasha Finkelstein via B4 Relay wrote:
> From: Sasha Finkelstein <fnkl.kernel@...il.com>
>
> Adds device tree entries for the touchbar digitizer
>
> Co-developed-by: Janne Grunau <j@...nau.net>
> Signed-off-by: Janne Grunau <j@...nau.net>
> Signed-off-by: Sasha Finkelstein <fnkl.kernel@...il.com>
> ---
> arch/arm64/boot/dts/apple/t8103-j293.dts | 26 ++++++++++++++++++++++++++
> arch/arm64/boot/dts/apple/t8103.dtsi | 20 ++++++++++++++++++++
> arch/arm64/boot/dts/apple/t8112-j493.dts | 24 ++++++++++++++++++++++++
> arch/arm64/boot/dts/apple/t8112.dtsi | 14 ++++++++++++++
> 4 files changed, 84 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/apple/t8103-j293.dts b/arch/arm64/boot/dts/apple/t8103-j293.dts
> index 56b0c67bfcda321b60c621de092643017693ff91..c31eb3f6f54268cafc9197a9244a5954fbb42802 100644
> --- a/arch/arm64/boot/dts/apple/t8103-j293.dts
> +++ b/arch/arm64/boot/dts/apple/t8103-j293.dts
> @@ -17,6 +17,14 @@ / {
> compatible = "apple,j293", "apple,t8103", "apple,arm-platform";
> model = "Apple MacBook Pro (13-inch, M1, 2020)";
>
> + /*
> + * All of those are used by the bootloader to pass calibration
> + * blobs and other device-specific properties
> + */
> + aliases {
> + touchbar0 = &touchbar0;
> + };
> +
> led-controller {
> compatible = "pwm-leds";
> led-0 {
> @@ -49,3 +57,21 @@ &i2c4 {
> &fpwm1 {
> status = "okay";
> };
> +
> +&spi0 {
> + status = "okay";
> +
> + touchbar0: touchbar@0 {
> + compatible = "apple,j293-touchbar";
> + reg = <0>;
> + spi-max-frequency = <11500000>;
> + spi-cs-setup-delay-ns = <2000>;
> + spi-cs-hold-delay-ns = <2000>;
> + reset-gpios = <&pinctrl_ap 139 GPIO_ACTIVE_LOW>;
> + interrupts-extended = <&pinctrl_ap 194 IRQ_TYPE_EDGE_FALLING>;
> + firmware-name = "apple/dfrmtfw-j293.bin";
> + touchscreen-size-x = <23045>;
> + touchscreen-size-y = <640>;
> + touchscreen-inverted-y;
> + };
> +};
> diff --git a/arch/arm64/boot/dts/apple/t8103.dtsi b/arch/arm64/boot/dts/apple/t8103.dtsi
> index 9b0dad6b618444ac6b1c9735c50cccfc3965f947..9b83341a799d9a37578e5461e6b184f81ee7435c 100644
> --- a/arch/arm64/boot/dts/apple/t8103.dtsi
> +++ b/arch/arm64/boot/dts/apple/t8103.dtsi
> @@ -326,6 +326,13 @@ clkref: clock-ref {
> clock-output-names = "clkref";
> };
>
> + clk_200m: clock-200m {
> + compatible = "fixed-clock";
> + #clock-cells = <0>;
> + clock-frequency = <200000000>;
> + clock-output-names = "clk_200m";
> + };
> +
> /*
> * This is a fabulated representation of the input clock
> * to NCO since we don't know the true clock tree.
> @@ -441,6 +448,19 @@ fpwm1: pwm@...044000 {
> status = "disabled";
> };
>
> + spi0: spi@...100000 {
> + compatible = "apple,t8103-spi", "apple,spi";
> + reg = <0x2 0x35100000 0x0 0x4000>;
> + interrupt-parent = <&aic>;
> + interrupts = <AIC_IRQ 614 IRQ_TYPE_LEVEL_HIGH>;
> + cs-gpios = <&pinctrl_ap 109 GPIO_ACTIVE_LOW>;
Since this appears to be a regular GPIO pin I think it should go into
the spi0 override in t8103-j293.dts. Kind of academic since that's the
only device using spi0. It will however allow to easily rebase this on
top of "Add Apple SPI controller and spi-nor dt nodes:
https://lore.kernel.org/asahi/20241203-asahi-spi-dt-v2-0-cd68bfaf0c84@jannau.net/T/#u
Janne
Powered by blists - more mailing lists