162306a36Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
262306a36Sopenharmony_ci%YAML 1.2
362306a36Sopenharmony_ci---
462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/spi/nvidia,tegra20-sflash.yaml#
562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
662306a36Sopenharmony_ci
762306a36Sopenharmony_cititle: NVIDIA Tegra20 SFLASH controller
862306a36Sopenharmony_ci
962306a36Sopenharmony_cimaintainers:
1062306a36Sopenharmony_ci  - Thierry Reding <thierry.reding@gmail.com>
1162306a36Sopenharmony_ci  - Jon Hunter <jonathanh@nvidia.com>
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_ciproperties:
1462306a36Sopenharmony_ci  compatible:
1562306a36Sopenharmony_ci    const: nvidia,tegra20-sflash
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_ci  reg:
1862306a36Sopenharmony_ci    maxItems: 1
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_ci  interrupts:
2162306a36Sopenharmony_ci    maxItems: 1
2262306a36Sopenharmony_ci
2362306a36Sopenharmony_ci  clocks:
2462306a36Sopenharmony_ci    items:
2562306a36Sopenharmony_ci      - description: module clock
2662306a36Sopenharmony_ci
2762306a36Sopenharmony_ci  resets:
2862306a36Sopenharmony_ci    items:
2962306a36Sopenharmony_ci      - description: module reset
3062306a36Sopenharmony_ci
3162306a36Sopenharmony_ci  reset-names:
3262306a36Sopenharmony_ci    items:
3362306a36Sopenharmony_ci      - const: spi
3462306a36Sopenharmony_ci
3562306a36Sopenharmony_ci  dmas:
3662306a36Sopenharmony_ci    items:
3762306a36Sopenharmony_ci      - description: DMA channel used for reception
3862306a36Sopenharmony_ci      - description: DMA channel used for transmission
3962306a36Sopenharmony_ci
4062306a36Sopenharmony_ci  dma-names:
4162306a36Sopenharmony_ci    items:
4262306a36Sopenharmony_ci      - const: rx
4362306a36Sopenharmony_ci      - const: tx
4462306a36Sopenharmony_ci
4562306a36Sopenharmony_ci  spi-max-frequency:
4662306a36Sopenharmony_ci    description: Maximum SPI clocking speed of the controller in Hz.
4762306a36Sopenharmony_ci    $ref: /schemas/types.yaml#/definitions/uint32
4862306a36Sopenharmony_ci
4962306a36Sopenharmony_ciallOf:
5062306a36Sopenharmony_ci  - $ref: spi-controller.yaml
5162306a36Sopenharmony_ci
5262306a36Sopenharmony_ciunevaluatedProperties: false
5362306a36Sopenharmony_ci
5462306a36Sopenharmony_cirequired:
5562306a36Sopenharmony_ci  - compatible
5662306a36Sopenharmony_ci  - reg
5762306a36Sopenharmony_ci  - interrupts
5862306a36Sopenharmony_ci  - clocks
5962306a36Sopenharmony_ci  - resets
6062306a36Sopenharmony_ci  - reset-names
6162306a36Sopenharmony_ci  - dmas
6262306a36Sopenharmony_ci  - dma-names
6362306a36Sopenharmony_ci
6462306a36Sopenharmony_ciexamples:
6562306a36Sopenharmony_ci  - |
6662306a36Sopenharmony_ci    #include <dt-bindings/clock/tegra20-car.h>
6762306a36Sopenharmony_ci    #include <dt-bindings/interrupt-controller/arm-gic.h>
6862306a36Sopenharmony_ci
6962306a36Sopenharmony_ci    spi@7000c380 {
7062306a36Sopenharmony_ci        compatible = "nvidia,tegra20-sflash";
7162306a36Sopenharmony_ci        reg = <0x7000c380 0x80>;
7262306a36Sopenharmony_ci        interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
7362306a36Sopenharmony_ci        spi-max-frequency = <25000000>;
7462306a36Sopenharmony_ci        #address-cells = <1>;
7562306a36Sopenharmony_ci        #size-cells = <0>;
7662306a36Sopenharmony_ci        clocks = <&tegra_car TEGRA20_CLK_SPI>;
7762306a36Sopenharmony_ci        resets = <&tegra_car 43>;
7862306a36Sopenharmony_ci        reset-names = "spi";
7962306a36Sopenharmony_ci        dmas = <&apbdma 11>, <&apbdma 11>;
8062306a36Sopenharmony_ci        dma-names = "rx", "tx";
8162306a36Sopenharmony_ci    };
82