18cc087a1SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 28cc087a1SEmmanuel Vadot# Copyright 2020-21 Cadence 38cc087a1SEmmanuel Vadot%YAML 1.2 48cc087a1SEmmanuel Vadot--- 5*cb7aa33aSEmmanuel Vadot$id: http://devicetree.org/schemas/spi/cdns,xspi.yaml# 6*cb7aa33aSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 78cc087a1SEmmanuel Vadot 88cc087a1SEmmanuel Vadottitle: Cadence XSPI Controller 98cc087a1SEmmanuel Vadot 108cc087a1SEmmanuel Vadotmaintainers: 118cc087a1SEmmanuel Vadot - Parshuram Thombare <pthombar@cadence.com> 128cc087a1SEmmanuel Vadot 138cc087a1SEmmanuel Vadotdescription: | 148cc087a1SEmmanuel Vadot The XSPI controller allows SPI protocol communication in 158cc087a1SEmmanuel Vadot single, dual, quad or octal wire transmission modes for 168cc087a1SEmmanuel Vadot read/write access to slaves such as SPI-NOR flash. 178cc087a1SEmmanuel Vadot 188cc087a1SEmmanuel VadotallOf: 19*cb7aa33aSEmmanuel Vadot - $ref: spi-controller.yaml# 208cc087a1SEmmanuel Vadot 218cc087a1SEmmanuel Vadotproperties: 228cc087a1SEmmanuel Vadot compatible: 238cc087a1SEmmanuel Vadot const: cdns,xspi-nor 248cc087a1SEmmanuel Vadot 258cc087a1SEmmanuel Vadot reg: 268cc087a1SEmmanuel Vadot items: 278cc087a1SEmmanuel Vadot - description: address and length of the controller register set 288cc087a1SEmmanuel Vadot - description: address and length of the Slave DMA data port 298cc087a1SEmmanuel Vadot - description: address and length of the auxiliary registers 308cc087a1SEmmanuel Vadot 318cc087a1SEmmanuel Vadot reg-names: 328cc087a1SEmmanuel Vadot items: 338cc087a1SEmmanuel Vadot - const: io 348cc087a1SEmmanuel Vadot - const: sdma 358cc087a1SEmmanuel Vadot - const: aux 368cc087a1SEmmanuel Vadot 378cc087a1SEmmanuel Vadot interrupts: 388cc087a1SEmmanuel Vadot maxItems: 1 398cc087a1SEmmanuel Vadot 408cc087a1SEmmanuel Vadotrequired: 418cc087a1SEmmanuel Vadot - compatible 428cc087a1SEmmanuel Vadot - reg 438cc087a1SEmmanuel Vadot - interrupts 448cc087a1SEmmanuel Vadot 458cc087a1SEmmanuel VadotunevaluatedProperties: false 468cc087a1SEmmanuel Vadot 478cc087a1SEmmanuel Vadotexamples: 488cc087a1SEmmanuel Vadot - | 498cc087a1SEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 508cc087a1SEmmanuel Vadot bus { 518cc087a1SEmmanuel Vadot #address-cells = <2>; 528cc087a1SEmmanuel Vadot #size-cells = <2>; 538cc087a1SEmmanuel Vadot 548cc087a1SEmmanuel Vadot xspi: spi@a0010000 { 558cc087a1SEmmanuel Vadot #address-cells = <1>; 568cc087a1SEmmanuel Vadot #size-cells = <0>; 578cc087a1SEmmanuel Vadot compatible = "cdns,xspi-nor"; 588cc087a1SEmmanuel Vadot reg = <0x0 0xa0010000 0x0 0x1040>, 598cc087a1SEmmanuel Vadot <0x0 0xb0000000 0x0 0x1000>, 608cc087a1SEmmanuel Vadot <0x0 0xa0020000 0x0 0x100>; 618cc087a1SEmmanuel Vadot reg-names = "io", "sdma", "aux"; 628cc087a1SEmmanuel Vadot interrupts = <0 90 IRQ_TYPE_LEVEL_HIGH>; 638cc087a1SEmmanuel Vadot interrupt-parent = <&gic>; 648cc087a1SEmmanuel Vadot 658cc087a1SEmmanuel Vadot flash@0 { 668cc087a1SEmmanuel Vadot compatible = "jedec,spi-nor"; 678cc087a1SEmmanuel Vadot spi-max-frequency = <75000000>; 688cc087a1SEmmanuel Vadot reg = <0>; 698cc087a1SEmmanuel Vadot }; 708cc087a1SEmmanuel Vadot 718cc087a1SEmmanuel Vadot flash@1 { 728cc087a1SEmmanuel Vadot compatible = "jedec,spi-nor"; 738cc087a1SEmmanuel Vadot spi-max-frequency = <75000000>; 748cc087a1SEmmanuel Vadot reg = <1>; 758cc087a1SEmmanuel Vadot }; 768cc087a1SEmmanuel Vadot }; 778cc087a1SEmmanuel Vadot }; 78