Commit 0a6d561c authored by Janne Grunau's avatar Janne Grunau Committed by Sven Peter
Browse files

arm64: dts: apple: t8112: Add spi controller nodes



Apple silicon devices have one or more SPI devices. Add device tree
nodes for all known controllers. The missing ones could be guessed and
tested with a little effort but since the devices expose no pins and
no new devices are expected there is no point in spending the effort.
SPI is used for spi-nor and input devices like keyboard, trackpad,
touchscreen and fingerprint reader. Only the spi-nor flash has upstream
drivers. Support for it will be added in a following commit.

Reviewed-by: default avatarNeal Gompa <neal@gompa.dev>
Signed-off-by: default avatarJanne Grunau <j@jannau.net>
Link: https://lore.kernel.org/r/20241203-asahi-spi-dt-v2-3-cd68bfaf0c84@jannau.net


Signed-off-by: default avatarSven Peter <sven@svenpeter.dev>
parent 556cd4bb
Loading
Loading
Loading
Loading
+43 −1
Original line number Diff line number Diff line
@@ -349,6 +349,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.
@@ -467,6 +474,34 @@ fpwm1: pwm@235044000 {
			status = "disabled";
		};

		spi1: spi@235104000 {
			compatible = "apple,t8112-spi", "apple,spi";
			reg = <0x2 0x35104000 0x0 0x4000>;
			interrupt-parent = <&aic>;
			interrupts = <AIC_IRQ 749 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clk_200m>;
			pinctrl-0 = <&spi1_pins>;
			pinctrl-names = "default";
			power-domains = <&ps_spi1>;
			#address-cells = <1>;
			#size-cells = <0>;
			status = "disabled";
		};

		spi3: spi@23510c000 {
			compatible = "apple,t8112-spi", "apple,spi";
			reg = <0x2 0x3510c000 0x0 0x4000>;
			interrupt-parent = <&aic>;
			interrupts = <AIC_IRQ 751 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&clkref>;
			pinctrl-0 = <&spi3_pins>;
			pinctrl-names = "default";
			power-domains = <&ps_spi3>;
			#address-cells = <1>;
			#size-cells = <0>;
			status = "disabled";
		};

		serial0: serial@235200000 {
			compatible = "apple,s5l-uart";
			reg = <0x2 0x35200000 0x0 0x1000>;
@@ -626,13 +661,20 @@ i2c4_pins: i2c4-pins {
					 <APPLE_PINMUX(130, 1)>;
			};

			spi3_pins: spi3-pins {
			spi1_pins: spi1-pins {
				pinmux = <APPLE_PINMUX(46, 1)>,
					<APPLE_PINMUX(47, 1)>,
					<APPLE_PINMUX(48, 1)>,
					<APPLE_PINMUX(49, 1)>;
			};

			spi3_pins: spi3-pins {
				pinmux = <APPLE_PINMUX(93, 1)>,
					<APPLE_PINMUX(94, 1)>,
					<APPLE_PINMUX(95, 1)>,
					<APPLE_PINMUX(96, 1)>;
			};

			pcie_pins: pcie-pins {
				pinmux = <APPLE_PINMUX(162, 1)>,
					 <APPLE_PINMUX(163, 1)>,