iPXE
efi_pci.h
Go to the documentation of this file.
1 #ifndef _IPXE_EFI_PCI_H
2 #define _IPXE_EFI_PCI_H
3 
4 /** @file
5  *
6  * EFI driver interface
7  */
8 
9 FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
10 
11 #include <ipxe/pci.h>
12 #include <ipxe/efi/efi.h>
14 
15 /* PciRootBridgeIo.h uses LShiftU64(), which isn't defined anywhere else */
16 static inline EFIAPI uint64_t LShiftU64 ( UINT64 value, UINTN shift ) {
17  return ( value << shift );
18 }
19 
20 /** An EFI PCI device */
22  /** PCI device */
23  struct pci_device pci;
24  /** PCI I/O protocol */
26 };
27 
28 extern int efipci_open ( EFI_HANDLE device, UINT32 attributes,
29  struct efi_pci_device *efipci );
30 extern void efipci_close ( EFI_HANDLE device );
31 extern int efipci_info ( EFI_HANDLE device, struct efi_pci_device *efipci );
32 
33 #endif /* _IPXE_EFI_PCI_H */
void efipci_close(EFI_HANDLE device)
Close EFI PCI device.
Definition: efi_pci.c:745
struct pci_device pci
PCI device.
Definition: efi_pci.h:23
unsigned int UINT32
Definition: ProcessorBind.h:56
unsigned long long uint64_t
Definition: stdint.h:13
FILE_LICENCE(GPL2_OR_LATER_OR_UBDL)
A hardware device.
Definition: device.h:73
pseudo_bit_t value[0x00020]
Definition: arbel.h:13
#define EFIAPI
PCI bus.
A PCI device.
Definition: pci.h:206
int efipci_open(EFI_HANDLE device, UINT32 attributes, struct efi_pci_device *efipci)
Open EFI PCI device.
Definition: efi_pci.c:668
UINT64 UINTN
Unsigned value of native width.
Definition: ProcessorBind.h:71
unsigned long long UINT64
Definition: ProcessorBind.h:54
EFI API.
EFI_PCI_IO_PROTOCOL * io
PCI I/O protocol.
Definition: efi_pci.h:25
An EFI PCI device.
Definition: efi_pci.h:21
int efipci_info(EFI_HANDLE device, struct efi_pci_device *efipci)
Get EFI PCI device information.
Definition: efi_pci.c:759
static EFIAPI uint64_t LShiftU64(UINT64 value, UINTN shift)
Definition: efi_pci.h:16
EFI PCI I/O Protocol provides the basic Memory, I/O, PCI configuration, and DMA interfaces that a dri...
The EFI_PCI_IO_PROTOCOL provides the basic Memory, I/O, PCI configuration, and DMA interfaces used to...
Definition: PciIo.h:525
Definition: efi.h:50