TianoCore EDK2 master
SpiConfiguration.h
Go to the documentation of this file.
1
12#ifndef __SPI_CONFIGURATION_PROTOCOL_H__
13#define __SPI_CONFIGURATION_PROTOCOL_H__
14
18#define EFI_SPI_CONFIGURATION_GUID \
19 { 0x85a6d3e6, 0xb65b, 0x4afc, \
20 { 0xb3, 0x8f, 0xc6, 0xd5, 0x4a, 0xf6, 0xdd, 0xc8 }}
21
25#define Hz(Frequency) (Frequency)
26#define KHz(Frequency) (1000 * Hz (Frequency))
27#define MHz(Frequency) (1000 * KHz (Frequency))
28
30
55typedef
57(EFIAPI *EFI_SPI_CHIP_SELECT)(
58 IN CONST EFI_SPI_PERIPHERAL *SpiPeripheral,
59 IN BOOLEAN PinValue
60 );
61
88(EFIAPI *EFI_SPI_CLOCK)(
89 IN CONST EFI_SPI_PERIPHERAL *SpiPeripheral,
90 IN UINT32 *ClockHz
91 );
92
98typedef struct _EFI_SPI_PART {
102 CONST CHAR16 *Vendor;
103
108
114
120
128
136typedef struct _EFI_SPI_BUS {
141
147
153
160
170
184
189
199
204
211
218
223 BOOLEAN ClockPhase;
224
233
240
246
253
264};
265
277 UINT32 BusCount;
278
284
285extern EFI_GUID gEfiSpiConfigurationProtocolGuid;
286
287#endif // __SPI_CONFIGURATION_PROTOCOL_H__
#define CONST
Definition: Base.h:259
#define IN
Definition: Base.h:279
struct _EFI_SPI_BUS EFI_SPI_BUS
EFI_STATUS(EFIAPI * EFI_SPI_CLOCK)(IN CONST EFI_SPI_PERIPHERAL *SpiPeripheral, IN UINT32 *ClockHz)
EFI_STATUS(EFIAPI * EFI_SPI_CHIP_SELECT)(IN CONST EFI_SPI_PERIPHERAL *SpiPeripheral, IN BOOLEAN PinValue)
struct _EFI_SPI_CONFIGURATION_PROTOCOL EFI_SPI_CONFIGURATION_PROTOCOL
struct _EFI_SPI_PART EFI_SPI_PART
RETURN_STATUS EFI_STATUS
Definition: UefiBaseType.h:28
CONST EFI_SPI_PERIPHERAL * Peripherallist
CONST EFI_DEVICE_PATH_PROTOCOL * ControllerPath
EFI_SPI_CLOCK Clock
CONST CHAR16 * FriendlyName
CONST EFI_SPI_BUS *CONST *CONST Buslist
BOOLEAN ChipSelectPolarity
CONST CHAR16 * Vendor
CONST CHAR16 * PartNumber
CONST GUID * SpiPeripheralDriverGuid
CONST EFI_SPI_BUS * SpiBus
EFI_SPI_CHIP_SELECT ChipSelect
CONST VOID * ConfigurationData
CONST EFI_SPI_PERIPHERAL * NextSpiPeripheral
CONST CHAR16 * FriendlyName
CONST EFI_SPI_PART * SpiPart
Definition: Base.h:213