PciSupportLib.h 993 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. /** @file
  2. Copyright (c) 2018, Intel Corporation. All rights reserved.<BR>
  3. SPDX-License-Identifier: BSD-2-Clause-Patent
  4. **/
  5. #ifndef _EFI_PCI_SUPPORT_H_
  6. #define _EFI_PCI_SUPPORT_H_
  7. #include <Protocol/PciRootBridgeIo.h>
  8. #include <Guid/SetupVariable.h>
  9. typedef struct {
  10. UINT8 PcieCapPtr;
  11. UINT8 Function;
  12. UINT8 Device;
  13. UINT8 Bus;
  14. UINT16 PcieLnkCap;
  15. UINT16 PcieDevCap;
  16. //Added to Support AtomicOp Request-->Start
  17. UINT16 PcieDevCap2;
  18. //Added to Support AtomicOp Request-->End
  19. } PCIE_CAP_INFO;
  20. typedef struct {
  21. INTN Top;
  22. PCIE_CAP_INFO PcieCapInfo[FixedPcdGet32(PcdMaxNestedLevel)];
  23. } PCIE_STACK;
  24. extern PCIE_STACK mPcieStack;
  25. BOOLEAN
  26. IsPciDevicePresent (
  27. IN EFI_PCI_ROOT_BRIDGE_IO_PROTOCOL *PciRootBridgeIo,
  28. PCI_TYPE00 *Pci,
  29. UINT8 Bus,
  30. UINT8 Device,
  31. UINT8 Func
  32. );
  33. #endif