Unverified Commit 18096d33 authored by Hector Martin's avatar Hector Martin Committed by Mark Brown
Browse files

spi: dt-bindings: apple,spi: Add binding for Apple SPI controllers



The Apple SPI controller is present in SoCs such as the M1 (t8103) and
M1 Pro/Max (t600x). This controller uses one IRQ and one clock, and
doesn't need any special properties, so the binding is trivial.

Signed-off-by: default avatarHector Martin <marcan@marcan.st>
Reviewed-by: default avatarRob Herring <robh@kernel.org>
Acked-by: default avatarNick Chan <towinchenmi@gmail.com>
Reviewed-by: default avatarConor Dooley <conor.dooley@microchip.com>
Signed-off-by: default avatarJanne Grunau <j@jannau.net>
Reviewed-by: default avatarMark Kettenis <kettenis@openbsd.org>
Link: https://patch.msgid.link/20241106-asahi-spi-v5-1-e81a4f3a8e19@jannau.net


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 270ddc23
Loading
Loading
Loading
Loading
+62 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/spi/apple,spi.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Apple ARM SoC SPI controller

allOf:
  - $ref: spi-controller.yaml#

maintainers:
  - Hector Martin <marcan@marcan.st>

properties:
  compatible:
    items:
      - enum:
          - apple,t8103-spi
          - apple,t8112-spi
          - apple,t6000-spi
      - const: apple,spi

  reg:
    maxItems: 1

  clocks:
    maxItems: 1

  interrupts:
    maxItems: 1

  power-domains:
    maxItems: 1

required:
  - compatible
  - reg
  - clocks
  - interrupts

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/apple-aic.h>
    #include <dt-bindings/interrupt-controller/irq.h>

    soc {
      #address-cells = <2>;
      #size-cells = <2>;

      spi@39b104000 {
        compatible = "apple,t6000-spi", "apple,spi";
        reg = <0x3 0x9b104000 0x0 0x4000>;
        interrupt-parent = <&aic>;
        interrupts = <AIC_IRQ 0 1107 IRQ_TYPE_LEVEL_HIGH>;
        #address-cells = <1>;
        #size-cells = <0>;
        clocks = <&clk>;
      };
    };