Skip to content

Commit

Permalink
spi: dt-bindings: Introduce qcom,spi-qpic-snand
Browse files Browse the repository at this point in the history
Document the QPIC-SPI-NAND flash controller present in the IPQ SoCs.
It can work both in serial and parallel mode and supports typical
SPI-NAND page cache operations.

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Md Sadre Alam <quic_mdalam@quicinc.com>
Link: https://patch.msgid.link/20250224111414.2809669-2-quic_mdalam@quicinc.com
Signed-off-by: Mark Brown <broonie@kernel.org>
  • Loading branch information
Md Sadre Alam authored and Mark Brown committed Mar 3, 2025
1 parent 825687c commit fd6bc2b
Showing 1 changed file with 83 additions and 0 deletions.
83 changes: 83 additions & 0 deletions Documentation/devicetree/bindings/spi/qcom,spi-qpic-snand.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/spi/qcom,spi-qpic-snand.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Qualcomm QPIC NAND controller

maintainers:
- Md sadre Alam <quic_mdalam@quicinc.com>

description:
The QCOM QPIC-SPI-NAND flash controller is an extended version of
the QCOM QPIC NAND flash controller. It can work both in serial
and parallel mode. It supports typical SPI-NAND page cache
operations in single, dual or quad IO mode with pipelined ECC
encoding/decoding using the QPIC ECC HW engine.

allOf:
- $ref: /schemas/spi/spi-controller.yaml#

properties:
compatible:
enum:
- qcom,ipq9574-snand

reg:
maxItems: 1

clocks:
maxItems: 3

clock-names:
items:
- const: core
- const: aon
- const: iom

dmas:
items:
- description: tx DMA channel
- description: rx DMA channel
- description: cmd DMA channel

dma-names:
items:
- const: tx
- const: rx
- const: cmd

required:
- compatible
- reg
- clocks
- clock-names

unevaluatedProperties: false

examples:
- |
#include <dt-bindings/clock/qcom,ipq9574-gcc.h>
spi@79b0000 {
compatible = "qcom,ipq9574-snand";
reg = <0x1ac00000 0x800>;
clocks = <&gcc GCC_QPIC_CLK>,
<&gcc GCC_QPIC_AHB_CLK>,
<&gcc GCC_QPIC_IO_MACRO_CLK>;
clock-names = "core", "aon", "iom";
#address-cells = <1>;
#size-cells = <0>;
flash@0 {
compatible = "spi-nand";
reg = <0>;
#address-cells = <1>;
#size-cells = <1>;
nand-ecc-engine = <&qpic_nand>;
nand-ecc-strength = <4>;
nand-ecc-step-size = <512>;
};
};

0 comments on commit fd6bc2b

Please sign in to comment.