# Copyright (c) 2019 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0

description: |
  QSPI NOR flash supporting the JEDEC CFI interface.

compatible: "nordic,qspi-nor"

include: [base.yaml, "jedec,spi-nor-common.yaml"]

on-bus: qspi

properties:
  reg:
    required: true

  jedec-id:
    required: true

  size:
    type: int
    required: false
    description: |
      The size in bits. Set this or size-in-bytes, but not both.

  size-in-bytes:
    type: int
    required: false
    description: |
      The size in bytes. Set this or size, but not both.

  # Match original driver NORDIC_QSPI_NOR_QE_BIT Kconfig default.
  quad-enable-requirements:
    default: "S1B6"

  readoc:
    type: string
    required: false
    enum:
      - "fastread"        # Single data line SPI, FAST_READ (0x0B)
      - "read2o"          # Dual data line SPI, READ2O (0x3B)
      - "read2io"         # Dual data line SPI, READ2IO (0xBB)
      - "read4o"          # Quad data line SPI, READ4O (0x6B)
      - "read4io"         # Quad data line SPI, READ4IO (0xEB)
    description: |
      Specify the number of data lines and opcode used for reading.
      If not provided fastread will be selected.

  writeoc:
    type: string
    required: false
    enum:
      - "pp"            # Single data line SPI, PP (0x02)
      - "pp2o"          # Dual data line SPI, PP2O (0xA2)
      - "pp4o"          # Quad data line SPI, PP4O (0x32)
      - "pp4io"         # Quad data line SPI, PP4IO (0x38)
    description: |
      Specify the number of data lines and opcode used for writing.
      If not provided pp will be selected.

  address-size-32:
    type: boolean
    required: false
    description: |
      Set to indicate that 32-bit addressing is to be used.
      If not specified 24-bit addressing will be used.

  ppsize-512:
    type: boolean
    required: false
    description: |
      Set to indicate that the write opcode operates on 512-byte pages.
      If not specified the write opcode operates on 256-byte pages.

  sck-delay:
    type: int
    required: false
    default: 0
    description: |
      Number of clock cycles CSn must be asserted before it can go low
      again, specified in nanoseconds.

  rx-delay:
    type: int
    required: false
    description: |
      Number of clock cycles from the rising edge of the SPI clock
      until the input serial data is sampled.

  cpha:
    type: boolean
    required: false
    description: |
      Set to indicate phase starts with asserted half-phase (CPHA=1).
      For this driver using this property requires also using cpol.

  cpol:
    type: boolean
    required: false
    description: |
      Set to indicate clock leading edge is falling (CPOL=1).
      For this driver using this property requires also using cpha.

  sck-frequency:
    type: int
    required: true
    description: |
      Maximum clock speed supported by the device, in Hz.
