xref: /freebsd/sys/contrib/device-tree/Bindings/spi/ti,qspi.yaml (revision 7d0873ebb83b19ba1e8a89e679470d885efe12e3)
1*7d0873ebSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*7d0873ebSEmmanuel Vadot%YAML 1.2
3*7d0873ebSEmmanuel Vadot---
4*7d0873ebSEmmanuel Vadot$id: http://devicetree.org/schemas/spi/ti,qspi.yaml#
5*7d0873ebSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*7d0873ebSEmmanuel Vadot
7*7d0873ebSEmmanuel Vadottitle: TI QSPI controller
8*7d0873ebSEmmanuel Vadot
9*7d0873ebSEmmanuel Vadotmaintainers:
10*7d0873ebSEmmanuel Vadot  - Kousik Sanagavarapu <five231003@gmail.com>
11*7d0873ebSEmmanuel Vadot
12*7d0873ebSEmmanuel VadotallOf:
13*7d0873ebSEmmanuel Vadot  - $ref: spi-controller.yaml#
14*7d0873ebSEmmanuel Vadot
15*7d0873ebSEmmanuel Vadotproperties:
16*7d0873ebSEmmanuel Vadot  compatible:
17*7d0873ebSEmmanuel Vadot    enum:
18*7d0873ebSEmmanuel Vadot      - ti,am4372-qspi
19*7d0873ebSEmmanuel Vadot      - ti,dra7xxx-qspi
20*7d0873ebSEmmanuel Vadot
21*7d0873ebSEmmanuel Vadot  reg:
22*7d0873ebSEmmanuel Vadot    items:
23*7d0873ebSEmmanuel Vadot      - description: base registers
24*7d0873ebSEmmanuel Vadot      - description: mapped memory
25*7d0873ebSEmmanuel Vadot
26*7d0873ebSEmmanuel Vadot  reg-names:
27*7d0873ebSEmmanuel Vadot    items:
28*7d0873ebSEmmanuel Vadot      - const: qspi_base
29*7d0873ebSEmmanuel Vadot      - const: qspi_mmap
30*7d0873ebSEmmanuel Vadot
31*7d0873ebSEmmanuel Vadot  clocks:
32*7d0873ebSEmmanuel Vadot    maxItems: 1
33*7d0873ebSEmmanuel Vadot
34*7d0873ebSEmmanuel Vadot  clock-names:
35*7d0873ebSEmmanuel Vadot    items:
36*7d0873ebSEmmanuel Vadot      - const: fck
37*7d0873ebSEmmanuel Vadot
38*7d0873ebSEmmanuel Vadot  interrupts:
39*7d0873ebSEmmanuel Vadot    maxItems: 1
40*7d0873ebSEmmanuel Vadot
41*7d0873ebSEmmanuel Vadot  num-cs:
42*7d0873ebSEmmanuel Vadot    minimum: 1
43*7d0873ebSEmmanuel Vadot    maximum: 4
44*7d0873ebSEmmanuel Vadot    default: 1
45*7d0873ebSEmmanuel Vadot
46*7d0873ebSEmmanuel Vadot  ti,hwmods:
47*7d0873ebSEmmanuel Vadot    description:
48*7d0873ebSEmmanuel Vadot      Name of the hwmod associated to the QSPI.  This is for legacy
49*7d0873ebSEmmanuel Vadot      platforms only.
50*7d0873ebSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/string
51*7d0873ebSEmmanuel Vadot    deprecated: true
52*7d0873ebSEmmanuel Vadot
53*7d0873ebSEmmanuel Vadot  syscon-chipselects:
54*7d0873ebSEmmanuel Vadot    description:
55*7d0873ebSEmmanuel Vadot      Handle to system control region containing QSPI chipselect register
56*7d0873ebSEmmanuel Vadot      and offset of that register.
57*7d0873ebSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/phandle-array
58*7d0873ebSEmmanuel Vadot    items:
59*7d0873ebSEmmanuel Vadot      - items:
60*7d0873ebSEmmanuel Vadot          - description: phandle to system control register
61*7d0873ebSEmmanuel Vadot          - description: register offset
62*7d0873ebSEmmanuel Vadot
63*7d0873ebSEmmanuel Vadot  spi-max-frequency:
64*7d0873ebSEmmanuel Vadot    description: Maximum SPI clocking speed of the controller in Hz.
65*7d0873ebSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
66*7d0873ebSEmmanuel Vadot
67*7d0873ebSEmmanuel Vadotrequired:
68*7d0873ebSEmmanuel Vadot  - compatible
69*7d0873ebSEmmanuel Vadot  - reg
70*7d0873ebSEmmanuel Vadot  - reg-names
71*7d0873ebSEmmanuel Vadot  - clocks
72*7d0873ebSEmmanuel Vadot  - clock-names
73*7d0873ebSEmmanuel Vadot  - interrupts
74*7d0873ebSEmmanuel Vadot
75*7d0873ebSEmmanuel VadotunevaluatedProperties: false
76*7d0873ebSEmmanuel Vadot
77*7d0873ebSEmmanuel Vadotexamples:
78*7d0873ebSEmmanuel Vadot  - |
79*7d0873ebSEmmanuel Vadot    #include <dt-bindings/clock/dra7.h>
80*7d0873ebSEmmanuel Vadot    #include <dt-bindings/interrupt-controller/arm-gic.h>
81*7d0873ebSEmmanuel Vadot
82*7d0873ebSEmmanuel Vadot    spi@4b300000 {
83*7d0873ebSEmmanuel Vadot        compatible = "ti,dra7xxx-qspi";
84*7d0873ebSEmmanuel Vadot        reg = <0x4b300000 0x100>,
85*7d0873ebSEmmanuel Vadot              <0x5c000000 0x4000000>;
86*7d0873ebSEmmanuel Vadot        reg-names = "qspi_base", "qspi_mmap";
87*7d0873ebSEmmanuel Vadot        syscon-chipselects = <&scm_conf 0x558>;
88*7d0873ebSEmmanuel Vadot        #address-cells = <1>;
89*7d0873ebSEmmanuel Vadot        #size-cells = <0>;
90*7d0873ebSEmmanuel Vadot        clocks = <&l4per2_clkctrl DRA7_L4PER2_QSPI_CLKCTRL 25>;
91*7d0873ebSEmmanuel Vadot        clock-names = "fck";
92*7d0873ebSEmmanuel Vadot        num-cs = <4>;
93*7d0873ebSEmmanuel Vadot        spi-max-frequency = <48000000>;
94*7d0873ebSEmmanuel Vadot        interrupts = <GIC_SPI 343 IRQ_TYPE_LEVEL_HIGH>;
95*7d0873ebSEmmanuel Vadot    };
96*7d0873ebSEmmanuel Vadot...
97