Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/spi/atmel,quadspi.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006 
0007 title: Atmel Quad Serial Peripheral Interface (QSPI)
0008 
0009 maintainers:
0010   - Tudor Ambarus <tudor.ambarus@microchip.com>
0011 
0012 allOf:
0013   - $ref: spi-controller.yaml#
0014 
0015 properties:
0016   compatible:
0017     enum:
0018       - atmel,sama5d2-qspi
0019       - microchip,sam9x60-qspi
0020       - microchip,sama7g5-qspi
0021       - microchip,sama7g5-ospi
0022 
0023   reg:
0024     items:
0025       - description: base registers
0026       - description: mapped memory
0027 
0028   reg-names:
0029     items:
0030       - const: qspi_base
0031       - const: qspi_mmap
0032 
0033   clocks:
0034     minItems: 1
0035     items:
0036       - description: peripheral clock
0037       - description: system clock or generic clock, if available
0038 
0039   clock-names:
0040     minItems: 1
0041     items:
0042       - const: pclk
0043       - enum: [ qspick, gclk ]
0044 
0045   interrupts:
0046     maxItems: 1
0047 
0048   dmas:
0049     items:
0050       - description: tx DMA channel
0051       - description: rx DMA channel
0052 
0053   dma-names:
0054     items:
0055       - const: tx
0056       - const: rx
0057 
0058   '#address-cells':
0059     const: 1
0060 
0061   '#size-cells':
0062     const: 0
0063 
0064 required:
0065   - compatible
0066   - reg
0067   - reg-names
0068   - interrupts
0069   - clocks
0070   - clock-names
0071   - '#address-cells'
0072   - '#size-cells'
0073 
0074 unevaluatedProperties: false
0075 
0076 examples:
0077   - |
0078     #include <dt-bindings/interrupt-controller/irq.h>
0079     #include <dt-bindings/clock/at91.h>
0080     spi@f0020000 {
0081         compatible = "atmel,sama5d2-qspi";
0082         reg = <0xf0020000 0x100>, <0xd0000000 0x8000000>;
0083         reg-names = "qspi_base", "qspi_mmap";
0084         interrupts = <52 IRQ_TYPE_LEVEL_HIGH 7>;
0085         clocks = <&pmc PMC_TYPE_PERIPHERAL 52>;
0086         clock-names = "pclk";
0087         #address-cells = <1>;
0088         #size-cells = <0>;
0089         pinctrl-names = "default";
0090         pinctrl-0 = <&pinctrl_spi0_default>;
0091 
0092         flash@0 {
0093             compatible = "jedec,spi-nor";
0094             spi-max-frequency = <50000000>;
0095             reg = <0>;
0096             spi-rx-bus-width = <4>;
0097             spi-tx-bus-width = <4>;
0098         };
0099     };