blob: cedf484ba7a5a01178218230df60e08b2cc1a7c2 [file] [log] [blame]
# Copyright 2018-2023, NXP
# SPDX-License-Identifier: Apache-2.0
description: NXP FlexSPI controller
compatible: "nxp,imx-flexspi"
include: [spi-controller.yaml, pinctrl-device.yaml]
properties:
reg:
required: true
interrupts:
required: true
ahb-bufferable:
type: boolean
description: |
Enable AHB bufferable write access by setting register field
AHBCR[BUFFERABLEEN].
ahb-cacheable:
type: boolean
description: |
Enable AHB cacheable read access by setting register field
AHBCR[CACHEABLEEN].
ahb-prefetch:
type: boolean
description: |
Enable AHB read prefetch by setting register field AHBCR[PREFETCHEN].
ahb-read-addr-opt:
type: boolean
description: |
Remove burst start address alignment limitation by setting register
field AHBCR[READADDROPT].
combination-mode:
type: boolean
description: |
Combine port A and port B data pins to support octal mode access by
setting register field MCR0[COMBINATIONEN].
sck-differential-clock:
type: boolean
description: |
Enable/disable SCKB pad use as SCKA differential clock output,
when enabled, Port B flash access is not available.
rx-clock-source:
type: int
default: 0
enum:
- 0 # Loopback internally
- 1 # Loopback from DQS pad
- 2 # Loopback from SCK pad
- 3 # External input from DQS pad
description: |
Source clock for flash read. See the RXCLKSRC field in register MCR0.
The default corresponds to the reset value of the register field.
rx-clock-source-b:
type: int
default: 0
enum:
- 0 # Loopback internally
- 1 # Loopback from DQS pad
- 2 # Loopback from SCK pad
- 3 # External input from DQS pad
description: |
Source clock for flash read on port B. Only supported by some instances
of this IP. See the RXCLKSRC_B field in register MCR2.
The default corresponds to the reset value of the register field.
rx-buffer-config:
type: array
description: |
Array of tuples to configure AHB RX buffers. Format is the following:
<prefetch priority master_id buf_size>. Pass multiple tuples to configure
multiple RX buffers (up to maximum supported by SOC).
The tuple fields correspond to the following register bitfields:
prefetch: AHBRXBUFxCRx[PREFETCH]
priority: AHBRXBUFxCRx[PRIORITY]
master_id: AHBRXBUFxCRx[MSTRID]
buf_size: AHBRXBUFxCRx[BUFSZ]
ahb-boundary:
type: string
default: "no-boundary"
enum:
- "no-boundary"
- "1024"
- "512"
- "256"
description: |
Sets the AHB read/write boundary. Only supported by some versions of
the FLEXSPI IP. When set, all memory accesses that cross an address
boundary of the specified size will be divided into smaller sub accesses.
child-binding:
description: NXP FlexSPI port
include: nxp,imx-flexspi-device.yaml