]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
arm64: dts: apple: Add touchbar digitizer nodes
authorSasha Finkelstein <fnkl.kernel@gmail.com>
Tue, 25 Feb 2025 21:19:54 +0000 (22:19 +0100)
committerSven Peter <sven@svenpeter.dev>
Wed, 26 Feb 2025 15:33:46 +0000 (15:33 +0000)
Adds device tree entries for the touchbar digitizer

Co-developed-by: Janne Grunau <j@jannau.net>
Signed-off-by: Janne Grunau <j@jannau.net>
Reviewed-by: Neal Gompa <neal@gompa.dev>
Acked-by: Sven Peter <sven@svenpeter.dev>
Signed-off-by: Sasha Finkelstein <fnkl.kernel@gmail.com>
Link: https://lore.kernel.org/r/20250225-z2-dts-v1-1-df101a7c17c8@gmail.com
Signed-off-by: Sven Peter <sven@svenpeter.dev>
arch/arm64/boot/dts/apple/t8103-j293.dts
arch/arm64/boot/dts/apple/t8112-j493.dts
arch/arm64/boot/dts/apple/t8112.dtsi

index 56b0c67bfcda321b60c621de092643017693ff91..0a93d3891c23da8b8c77dce64001caacb69ee140 100644 (file)
        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 {
 &fpwm1 {
        status = "okay";
 };
+
+&spi0 {
+       cs-gpios = <&pinctrl_ap 109 GPIO_ACTIVE_LOW>;
+       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;
+       };
+};
index 0ad908349f55406783942735a2e9dad54cda00ec..045bd0716cb7d20c1379ebc1e3ff7f4d0dddc179 100644 (file)
        compatible = "apple,j493", "apple,t8112", "apple,arm-platform";
        model = "Apple MacBook Pro (13-inch, M2, 2022)";
 
+       /*
+        * All of those are used by the bootloader to pass calibration
+        * blobs and other device-specific properties
+        */
        aliases {
                bluetooth0 = &bluetooth0;
+               touchbar0 = &touchbar0;
                wifi0 = &wifi0;
        };
 
 &fpwm1 {
        status = "okay";
 };
+
+&spi3 {
+       status = "okay";
+
+       touchbar0: touchbar@0 {
+               compatible = "apple,j493-touchbar";
+               reg = <0>;
+               spi-max-frequency = <8000000>;
+               spi-cs-setup-delay-ns = <2000>;
+               spi-cs-hold-delay-ns = <2000>;
+               reset-gpios = <&pinctrl_ap 170 GPIO_ACTIVE_LOW>;
+               interrupts-extended = <&pinctrl_ap 174 IRQ_TYPE_EDGE_FALLING>;
+               firmware-name = "apple/dfrmtfw-j493.bin";
+               touchscreen-size-x = <23045>;
+               touchscreen-size-y = <640>;
+               touchscreen-inverted-y;
+       };
+};
index 58d88f1ef92a32061765bd3b569fdae0255dcd7e..271986a7697f7033e96d11fb4ea6a50a467f0f2f 100644 (file)
                        power-domains = <&ps_spi3>;
                        #address-cells = <1>;
                        #size-cells = <0>;
-                       status = "disabled";
+                       status = "disabled"; /* only used in J493 */
                };
 
                serial0: serial@235200000 {