Commit 7767cd04 authored by Eddie James's avatar Eddie James Committed by Rob Herring (Arm)
Browse files

dt-bindings: fsi: ast2600-fsi-master: Convert to json-schema



Convert to json-schema for the AST2600 FSI master documentation.

Signed-off-by: default avatarEddie James <eajames@linux.ibm.com>
Reviewed-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20240522192524.3286237-9-eajames@linux.ibm.com


Signed-off-by: default avatarRob Herring (Arm) <robh@kernel.org>
parent 07f8b912
Loading
Loading
Loading
Loading
+80 −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/fsi/aspeed,ast2600-fsi-master.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Aspeed FSI master

maintainers:
  - Eddie James <eajames@linux.ibm.com>

description:
  The AST2600 and later contain two identical FSI masters. They share a
  clock and have a separate interrupt line and output pins.

properties:
  compatible:
    enum:
      - aspeed,ast2600-fsi-master

  reg:
    maxItems: 1

  clocks:
    maxItems: 1

  cfam-reset-gpios:
    maxItems: 1
    description:
      Output GPIO pin for CFAM reset

  fsi-routing-gpios:
    maxItems: 1
    description:
      Output GPIO pin for setting the FSI mux (internal or cabled)

  fsi-mux-gpios:
    maxItems: 1
    description:
      Input GPIO pin for detecting the desired FSI mux state

  interrupts:
    maxItems: 1

required:
  - compatible
  - reg
  - clocks
  - interrupts

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

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/clock/ast2600-clock.h>
    #include <dt-bindings/gpio/aspeed-gpio.h>
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    fsi-master@1e79b000 {
        compatible = "aspeed,ast2600-fsi-master";
        reg = <0x1e79b000 0x94>;
        #address-cells = <2>;
        #size-cells = <0>;
        interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_fsi1_default>;
        clocks = <&syscon ASPEED_CLK_GATE_FSICLK>;
        fsi-routing-gpios = <&gpio0 ASPEED_GPIO(Q, 7) GPIO_ACTIVE_HIGH>;
        fsi-mux-gpios = <&gpio0 ASPEED_GPIO(B, 0) GPIO_ACTIVE_HIGH>;
        cfam-reset-gpios = <&gpio0 ASPEED_GPIO(Q, 0) GPIO_ACTIVE_LOW>;

        cfam@0,0 {
            reg = <0 0>;
            #address-cells = <1>;
            #size-cells = <1>;
            chip-id = <0>;
        };
    };
+0 −36
Original line number Diff line number Diff line
Device-tree bindings for AST2600 FSI master
-------------------------------------------

The AST2600 contains two identical FSI masters. They share a clock and have a
separate interrupt line and output pins.

Required properties:
 - compatible: "aspeed,ast2600-fsi-master"
 - reg: base address and length
 - clocks: phandle and clock number
 - interrupts: platform dependent interrupt description
 - pinctrl-0: phandle to pinctrl node
 - pinctrl-names: pinctrl state

Optional properties:
 - cfam-reset-gpios: GPIO for CFAM reset

 - fsi-routing-gpios: GPIO for setting the FSI mux (internal or cabled)
 - fsi-mux-gpios: GPIO for detecting the desired FSI mux state


Examples:

    fsi-master {
        compatible = "aspeed,ast2600-fsi-master", "fsi-master";
        reg = <0x1e79b000 0x94>;
	interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_fsi1_default>;
	clocks = <&syscon ASPEED_CLK_GATE_FSICLK>;

	fsi-routing-gpios = <&gpio0 ASPEED_GPIO(Q, 7) GPIO_ACTIVE_HIGH>;
	fsi-mux-gpios = <&gpio0 ASPEED_GPIO(B, 0) GPIO_ACTIVE_HIGH>;

	cfam-reset-gpios = <&gpio0 ASPEED_GPIO(Q, 0) GPIO_ACTIVE_LOW>;
    };