SPB_MULTI_SPI_TRANSFER_HEADER structure (spb.h)

The SPB_MULTI_SPI_TRANSFER_HEADER structure describes a SPI transfer to be executed in a Multi-SPI (e.g. Dual SPI or Quad SPI) mode. This structure should be accessed by a controller driver to retrieve the parameters of a multi-SPI transfer.

Syntax

typedef struct SPB_MULTI_SPI_TRANSFER_HEADER {
  ULONG                       Size;
  SPB_MULTI_SPI_TRANSFER_MODE Mode;
  ULONG                       WritePhaseSingleSpiByteCount;
  ULONG                       WaitCycleByteCount;
} SPB_MULTI_SPI_TRANSFER_HEADER, *PSPB_MULTI_SPI_TRANSFER_HEADER;

Members

Size

The size, in bytes, of the parent SPB_MULTI_SPI_TRANSFER structure, not including any additional TransferPhases entries following the parent structure.

Mode

An SPB_MULTI_SPI_TRANSFER_MODE enumeration value, specifying the line mode of the multi-SPI transfer to be used by a bus driver to communicate with a peripheral device.

WritePhaseSingleSpiByteCount

The count of bytes at the beginning of the write phase to be transferred in single-SPI mode, before line mode switch to the mode specified in the Mode member of this struct.

WaitCycleByteCount

The number of wait cycles represented as the number of bytes (representing multi-SPI transfer cycles - e.g. 1 byte => 8 bits => 2 clock cycles in quad-SPI mode), between the write phase and read phase of the transfer. These wait cycle bytes should be present, and of an undefined value at the end of the WritePhaseBuffer.

Remarks

The SPB_MULTI_SPI_READ_TRANSFER_INIT, SPB_MULTI_SPI_WRITE_TRANSFER_INIT, or SPB_MULTI_SPI_TRANSFER_INIT functions should be used by a peripheral driver to initialize the header of a SPB_MULTI_SPI_TRANSFER and should not be accessed directly. A controller driver accesses this structure to retrieve the parameters of a Multi-SPI transfer.

Requirements

Requirement Value
Header spb.h

See also