/* If Address > 0x0FFFFFFF, then ASSERT(). If StartBit is greater than 7, then ASSERT(). If EndBit is greater than 7, then ASSERT(). If EndBit is less than StartBit, then ASSERT(). */
UINT8 EFIAPI PciExpressBitFieldRead8(IN UINTN Address, IN UINTN StartBit, IN UINTN EndBit)
/* If Address > 0x0FFFFFFF, then ASSERT(). If StartBit is greater than 7, then ASSERT(). If EndBit is greater than 7, then ASSERT(). If EndBit is less than StartBit, then ASSERT(). */
UINT8 EFIAPI PciExpressBitFieldRead8(IN UINTN Address, IN UINTN StartBit, IN UINTN EndBit)
{
  ASSERT_INVALID_PCI_ADDRESS (Address);
  if (Address >= PcdPciExpressBaseSize ()) {
    return (UINT8)-1;
  }
  return MmioBitFieldRead8 (
           (UINTN)GetPciExpressBaseAddress () + Address,
           StartBit,
           EndBit
           );
}