TianoCore EDK2 master
No Matches
_EFI_SPI_PERIPHERAL Struct Reference

#include <MdePkg/Include/Protocol/SpiConfiguration.h>

Data Fields

CONST CHAR16 * FriendlyName
CONST GUIDSpiPeripheralDriverGuid
UINT32 MaxClockHz
BOOLEAN ClockPolarity
BOOLEAN ClockPhase
UINT32 Attributes
CONST VOID * ConfigurationData
VOID * ChipSelectParameter

Detailed Description

The EFI_SPI_PERIPHERAL data structure describes how a specific block of logic which is connected to the SPI bus. This data structure also selects which upper level driver is used to manipulate this SPI device. The SpiPeripheraLDriverGuid is available from the vendor of the SPI peripheral driver.

Definition at line 178 of file SpiConfiguration.h.

Field Documentation

◆ Attributes


SPI peripheral attributes, select zero or more of:

  • SPI_PART_SUPPORTS_2_B1T_DATA_BUS_W1DTH - The SPI peripheral is wired to support a 2-bit data bus
  • SPI_PART_SUPPORTS_4_B1T_DATA_BUS_W1DTH - The SPI peripheral is wired to support a 4-bit data bus

Definition at line 232 of file SpiConfiguration.h.

◆ ChipSelect


Address of the routine which controls the chip select pin for this SPI peripheral. Call the SPI host controller's chip select routine when this value is set to NULL.

Definition at line 252 of file SpiConfiguration.h.

◆ ChipSelectParameter

VOID* _EFI_SPI_PERIPHERAL::ChipSelectParameter

Address of a data structure containing the additional values which describe the necessary control for the chip select. When ChipSelect is NULL, the declaration for this data structure is provided by the vendor of the host's SPI controller driver. The vendor's documentation specifies the necessary values to use for the chip select pin selection and control. When Chipselect is not NULL, the declaration for this data structure is provided by the board layer.

Definition at line 263 of file SpiConfiguration.h.

◆ ClockPhase


Specify the clock delay after chip select. Specify zero (0) to delay an entire clock cycle or one (1) to delay only half a clock cycle.

Definition at line 223 of file SpiConfiguration.h.

◆ ClockPolarity


Specify the idle value of the clock as found in the datasheet. Use zero (0) if the clock'S idle value is low or one (1) if the the clock's idle value is high.

Definition at line 217 of file SpiConfiguration.h.

◆ ConfigurationData


Address of a vendor specific data structure containing additional board configuration details related to the SPI chip. The SPI peripheral layer uses this data structure when configuring the chip.

Definition at line 239 of file SpiConfiguration.h.

◆ FriendlyName


A unicode string describing the function of the SPI part.

Definition at line 188 of file SpiConfiguration.h.

◆ MaxClockHz


The maximum clock frequency is specified in the EFI_SPI_P ART. When this this value is non-zero and less than the value in the EFI_SPI_PART then this value is used for the maximum clock frequency for the SPI part.

Definition at line 210 of file SpiConfiguration.h.

◆ NextSpiPeripheral


Address of the next EFI_SPI_PERIPHERAL data structure. Specify NULL if the current data structure is the last one on the SPI bus.

Definition at line 183 of file SpiConfiguration.h.

◆ SpiBus


The address of an EFI_SPI_BUS data structure which describes the SPI bus to which this chip is connected.

Definition at line 245 of file SpiConfiguration.h.

◆ SpiPart


The address of an EFI_SPI_PART data structure which describes this chip.

Definition at line 203 of file SpiConfiguration.h.

◆ SpiPeripheralDriverGuid


Address of a GUID provided by the vendor of the SPI peripheral driver. Instead of using a " EFI_SPI_IO_PROTOCOL" GUID, the SPI bus driver uses this GUID to identify an EFI_SPI_IO_PROTOCOL data structure and to provide the connection points for the SPI peripheral drivers. This reduces the comparison logic in the SPI peripheral driver's Supported routine.

Definition at line 198 of file SpiConfiguration.h.

The documentation for this struct was generated from the following file: