1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2c66ec88fSEmmanuel Vadot 3c66ec88fSEmmanuel Vadot%YAML 1.2 4c66ec88fSEmmanuel Vadot--- 5c66ec88fSEmmanuel Vadot$id: "http://devicetree.org/schemas/spi/qcom,spi-qcom-qspi.yaml#" 6c66ec88fSEmmanuel Vadot$schema: "http://devicetree.org/meta-schemas/core.yaml#" 7c66ec88fSEmmanuel Vadot 8c66ec88fSEmmanuel Vadottitle: Qualcomm Quad Serial Peripheral Interface (QSPI) 9c66ec88fSEmmanuel Vadot 10c66ec88fSEmmanuel Vadotmaintainers: 11*d5b0e70fSEmmanuel Vadot - Bjorn Andersson <bjorn.andersson@linaro.org> 12c66ec88fSEmmanuel Vadot 13c66ec88fSEmmanuel Vadotdescription: The QSPI controller allows SPI protocol communication in single, 14c66ec88fSEmmanuel Vadot dual, or quad wire transmission modes for read/write access to slaves such 15c66ec88fSEmmanuel Vadot as NOR flash. 16c66ec88fSEmmanuel Vadot 17c66ec88fSEmmanuel VadotallOf: 18c9ccf3a3SEmmanuel Vadot - $ref: /schemas/spi/spi-controller.yaml# 19c66ec88fSEmmanuel Vadot 20c66ec88fSEmmanuel Vadotproperties: 21c66ec88fSEmmanuel Vadot compatible: 22c66ec88fSEmmanuel Vadot items: 238cc087a1SEmmanuel Vadot - enum: 248cc087a1SEmmanuel Vadot - qcom,sc7180-qspi 258cc087a1SEmmanuel Vadot - qcom,sc7280-qspi 268cc087a1SEmmanuel Vadot - qcom,sdm845-qspi 278cc087a1SEmmanuel Vadot 28c66ec88fSEmmanuel Vadot - const: qcom,qspi-v1 29c66ec88fSEmmanuel Vadot 30c66ec88fSEmmanuel Vadot reg: 31c66ec88fSEmmanuel Vadot maxItems: 1 32c66ec88fSEmmanuel Vadot 33c66ec88fSEmmanuel Vadot interrupts: 34c66ec88fSEmmanuel Vadot maxItems: 1 35c66ec88fSEmmanuel Vadot 36c66ec88fSEmmanuel Vadot clock-names: 37c66ec88fSEmmanuel Vadot items: 38c66ec88fSEmmanuel Vadot - const: iface 39c66ec88fSEmmanuel Vadot - const: core 40c66ec88fSEmmanuel Vadot 41c66ec88fSEmmanuel Vadot clocks: 42c66ec88fSEmmanuel Vadot items: 43c66ec88fSEmmanuel Vadot - description: AHB clock 44c66ec88fSEmmanuel Vadot - description: QSPI core clock 45c66ec88fSEmmanuel Vadot 46c66ec88fSEmmanuel Vadot interconnects: 47c66ec88fSEmmanuel Vadot minItems: 1 48c66ec88fSEmmanuel Vadot maxItems: 2 49c66ec88fSEmmanuel Vadot 50c66ec88fSEmmanuel Vadot interconnect-names: 51*d5b0e70fSEmmanuel Vadot minItems: 1 52c66ec88fSEmmanuel Vadot items: 53c66ec88fSEmmanuel Vadot - const: qspi-config 54c66ec88fSEmmanuel Vadot - const: qspi-memory 55c66ec88fSEmmanuel Vadot 56c66ec88fSEmmanuel Vadotrequired: 57c66ec88fSEmmanuel Vadot - compatible 58c66ec88fSEmmanuel Vadot - reg 59c66ec88fSEmmanuel Vadot - interrupts 60c66ec88fSEmmanuel Vadot - clock-names 61c66ec88fSEmmanuel Vadot - clocks 62c66ec88fSEmmanuel Vadot 636be33864SEmmanuel VadotunevaluatedProperties: false 646be33864SEmmanuel Vadot 65c66ec88fSEmmanuel Vadotexamples: 66c66ec88fSEmmanuel Vadot - | 67c66ec88fSEmmanuel Vadot #include <dt-bindings/clock/qcom,gcc-sdm845.h> 68c66ec88fSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 69c66ec88fSEmmanuel Vadot 70c66ec88fSEmmanuel Vadot soc: soc { 71c66ec88fSEmmanuel Vadot #address-cells = <2>; 72c66ec88fSEmmanuel Vadot #size-cells = <2>; 73c66ec88fSEmmanuel Vadot 74c66ec88fSEmmanuel Vadot qspi: spi@88df000 { 75c66ec88fSEmmanuel Vadot compatible = "qcom,sdm845-qspi", "qcom,qspi-v1"; 76c66ec88fSEmmanuel Vadot reg = <0 0x88df000 0 0x600>; 77c66ec88fSEmmanuel Vadot #address-cells = <1>; 78c66ec88fSEmmanuel Vadot #size-cells = <0>; 79c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>; 80c66ec88fSEmmanuel Vadot clock-names = "iface", "core"; 81c66ec88fSEmmanuel Vadot clocks = <&gcc GCC_QSPI_CNOC_PERIPH_AHB_CLK>, 82c66ec88fSEmmanuel Vadot <&gcc GCC_QSPI_CORE_CLK>; 83c66ec88fSEmmanuel Vadot 84c66ec88fSEmmanuel Vadot flash@0 { 85c66ec88fSEmmanuel Vadot compatible = "jedec,spi-nor"; 86c66ec88fSEmmanuel Vadot reg = <0>; 87c66ec88fSEmmanuel Vadot spi-max-frequency = <25000000>; 88c66ec88fSEmmanuel Vadot spi-tx-bus-width = <2>; 89c66ec88fSEmmanuel Vadot spi-rx-bus-width = <2>; 90c66ec88fSEmmanuel Vadot }; 91c66ec88fSEmmanuel Vadot 92c66ec88fSEmmanuel Vadot }; 93c66ec88fSEmmanuel Vadot }; 94c66ec88fSEmmanuel Vadot... 95