50 ((
base + size - 1) & 0xfff00000) | ((
base >> 16) & 0xfff0));
59 int timeout, ret = -1;
73 for (timeout = 20000; timeout; timeout--) {
76 if (
id != 0 &&
id != 0xffffffff &&
id != 0xffff0001)
101 CONFIG_EARLY_PCI_BRIDGE_FUNCTION);
128 for (; dev <= last; dev +=
PCI_DEV(0, 0, 1)) {
int pci_early_device_probe(u8 bus, u8 dev, u32 mmio_base)
#define PCI_SUBORDINATE_BUS
#define PCI_SECONDARY_BUS
#define PCI_BRIDGE_CONTROL
#define PCI_COMMAND_MEMORY
#define PCI_BRIDGE_CTL_BUS_RESET
pci_devfn_t pci_locate_device(unsigned int pci_id, pci_devfn_t dev)
static void pci_s_bridge_set_mmio(pci_devfn_t p2p_bridge, u32 base, u32 size)
void pci_early_bridge_init(void)
static void pci_s_early_mmio_window(pci_devfn_t p2p_bridge, u32 mmio_base, u32 mmio_size)
void pci_s_deassert_secondary_reset(pci_devfn_t p2p_bridge)
void pci_s_assert_secondary_reset(pci_devfn_t p2p_bridge)
void pci_s_bridge_set_secondary(pci_devfn_t p2p_bridge, u8 secondary)
pci_devfn_t pci_locate_device_on_bus(unsigned int pci_id, unsigned int bus)
static __always_inline uint32_t pci_s_read_config32(pci_devfn_t dev, uint16_t reg)
static __always_inline uint16_t pci_s_read_config16(pci_devfn_t dev, uint16_t reg)
static __always_inline void pci_s_write_config8(pci_devfn_t dev, uint16_t reg, uint8_t value)
static __always_inline void pci_s_write_config16(pci_devfn_t dev, uint16_t reg, uint16_t value)
static __always_inline void pci_s_write_config32(pci_devfn_t dev, uint16_t reg, uint32_t value)
#define PCI_DEV(SEGBUS, DEV, FN)