MdePkg[all]  1.08
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
_EFI_SPI_NOR_FLASH_PROTOCOL Struct Reference

Data Fields

CONST EFI_SPI_PERIPHERALSpiPeripheral
 
UINT32 FlashSize
 
UINT8 Deviceid [3]
 
UINT32 EraseBlockBytes
 
EFI_SPI_NOR_FLASH_PROTOCOL_GET_FLASH_ID GetFlashid
 
EFI_SPI_NOR_FLASH_PROTOCOL_READ_DATA ReadData
 
EFI_SPI_NOR_FLASH_PROTOCOL_READ_DATA LfReadData
 
EFI_SPI_NOR_FLASH_PROTOCOL_READ_STATUS ReadStatus
 
EFI_SPI_NOR_FLASH_PROTOCOL_WRITE_STATUS WriteStatus
 
EFI_SPI_NOR_FLASH_PROTOCOL_WRITE_DATA WriteData
 
EFI_SPI_NOR_FLASH_PROTOCOL_ERASE Erase
 

Detailed Description

The EFI_SPI_NOR_FLASH_PROTOCOL exists in the SPI peripheral layer. This protocol manipulates the SPI NOR flash parts using a common set of commands. The board layer provides the interconnection and configuration details for the SPI NOR flash part. The SPI NOR flash driver uses this configuration data to expose a generic interface which provides the following APls:

  • Read manufacture and device ID
  • Read data
  • Read data using low frequency
  • Read status
  • Write data
  • Erase 4 KiB blocks
  • Erase 32 or 64 KiB blocks
  • Write status The EFI_SPI_NOR_FLASH_PROTOCOL also exposes some APls to set the security features on the legacy SPI flash controller.

Field Documentation

UINT8 _EFI_SPI_NOR_FLASH_PROTOCOL::Deviceid[3]

Manufacture and Device ID

EFI_SPI_NOR_FLASH_PROTOCOL_ERASE _EFI_SPI_NOR_FLASH_PROTOCOL::Erase

Efficiently erases one or more 4KiB regions in the SPI flash.

UINT32 _EFI_SPI_NOR_FLASH_PROTOCOL::EraseBlockBytes

Erase block size in bytes

UINT32 _EFI_SPI_NOR_FLASH_PROTOCOL::FlashSize

Flash size in bytes

EFI_SPI_NOR_FLASH_PROTOCOL_GET_FLASH_ID _EFI_SPI_NOR_FLASH_PROTOCOL::GetFlashid

Read the 3 byte manufacture and device ID from the SPI flash.

EFI_SPI_NOR_FLASH_PROTOCOL_READ_DATA _EFI_SPI_NOR_FLASH_PROTOCOL::LfReadData

Low frequency read data from the SPI flash.

EFI_SPI_NOR_FLASH_PROTOCOL_READ_DATA _EFI_SPI_NOR_FLASH_PROTOCOL::ReadData

Read data from the SPI flash.

EFI_SPI_NOR_FLASH_PROTOCOL_READ_STATUS _EFI_SPI_NOR_FLASH_PROTOCOL::ReadStatus

Read the flash status register.

CONST EFI_SPI_PERIPHERAL* _EFI_SPI_NOR_FLASH_PROTOCOL::SpiPeripheral

Pointer to an EFI_SPI_PERIPHERAL data structure

EFI_SPI_NOR_FLASH_PROTOCOL_WRITE_DATA _EFI_SPI_NOR_FLASH_PROTOCOL::WriteData

Write data to the SPI flash.

EFI_SPI_NOR_FLASH_PROTOCOL_WRITE_STATUS _EFI_SPI_NOR_FLASH_PROTOCOL::WriteStatus

Write the flash status register.