coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
pci_io_cfg.h File Reference
#include <stdint.h>
#include <arch/io.h>
#include <device/pci_type.h>
Include dependency graph for pci_io_cfg.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

static __always_inline uint32_t pci_io_encode_addr (pci_devfn_t dev, uint16_t reg)
 
static __always_inline uint8_t pci_io_read_config8 (pci_devfn_t dev, uint16_t reg)
 
static __always_inline uint16_t pci_io_read_config16 (pci_devfn_t dev, uint16_t reg)
 
static __always_inline uint32_t pci_io_read_config32 (pci_devfn_t dev, uint16_t reg)
 
static __always_inline void pci_io_write_config8 (pci_devfn_t dev, uint16_t reg, uint8_t value)
 
static __always_inline void pci_io_write_config16 (pci_devfn_t dev, uint16_t reg, uint16_t value)
 
static __always_inline void pci_io_write_config32 (pci_devfn_t dev, uint16_t reg, uint32_t value)
 
static __always_inline uint8_t pci_s_read_config8 (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 uint32_t pci_s_read_config32 (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)
 

Function Documentation

◆ pci_io_encode_addr()

static __always_inline uint32_t pci_io_encode_addr ( pci_devfn_t  dev,
uint16_t  reg 
)
static

Definition at line 11 of file pci_io_cfg.h.

References addr, and CONFIG.

Referenced by pci_io_read_config16(), pci_io_read_config32(), pci_io_read_config8(), pci_io_write_config16(), pci_io_write_config32(), and pci_io_write_config8().

Here is the caller graph for this function:

◆ pci_io_read_config16()

static __always_inline uint16_t pci_io_read_config16 ( pci_devfn_t  dev,
uint16_t  reg 
)
static

Definition at line 33 of file pci_io_cfg.h.

References addr, inw(), outl(), and pci_io_encode_addr().

Referenced by pci_s_read_config16().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ pci_io_read_config32()

static __always_inline uint32_t pci_io_read_config32 ( pci_devfn_t  dev,
uint16_t  reg 
)
static

Definition at line 41 of file pci_io_cfg.h.

References addr, inl(), outl(), and pci_io_encode_addr().

Referenced by get_stack_busno(), pci_s_read_config32(), sanity_check_pci_mmconf(), uart_platform_base(), and unlock_pam_regions().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ pci_io_read_config8()

static __always_inline uint8_t pci_io_read_config8 ( pci_devfn_t  dev,
uint16_t  reg 
)
static

Definition at line 25 of file pci_io_cfg.h.

References addr, inb(), outl(), and pci_io_encode_addr().

Referenced by pci_s_read_config8().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ pci_io_write_config16()

static __always_inline void pci_io_write_config16 ( pci_devfn_t  dev,
uint16_t  reg,
uint16_t  value 
)
static

Definition at line 57 of file pci_io_cfg.h.

References addr, outl(), outw(), pci_io_encode_addr(), and value.

Referenced by pci_s_write_config16().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ pci_io_write_config32()

static __always_inline void pci_io_write_config32 ( pci_devfn_t  dev,
uint16_t  reg,
uint32_t  value 
)
static

Definition at line 65 of file pci_io_cfg.h.

References addr, outl(), pci_io_encode_addr(), and value.

Referenced by bootblock_early_northbridge_init(), bootblock_northbridge_init(), bootblock_systemagent_early_init(), pci_s_write_config32(), setup_mmconfig(), and unlock_pam_regions().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ pci_io_write_config8()

static __always_inline void pci_io_write_config8 ( pci_devfn_t  dev,
uint16_t  reg,
uint8_t  value 
)
static

Definition at line 49 of file pci_io_cfg.h.

References addr, outb(), outl(), pci_io_encode_addr(), and value.

Referenced by pci_s_write_config8().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ pci_s_read_config16()

◆ pci_s_read_config32()

◆ pci_s_read_config8()

static __always_inline uint8_t pci_s_read_config8 ( pci_devfn_t  dev,
uint16_t  reg 
)
static

Definition at line 80 of file pci_io_cfg.h.

References pci_io_read_config8().

Referenced by bootblock_soc_early_init(), create_smbios_type9(), hudson_enable_rom(), lpss_set_power_state(), pci_read_config8(), and pci_s_find_next_capability().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ pci_s_write_config16()

static __always_inline void pci_s_write_config16 ( pci_devfn_t  dev,
uint16_t  reg,
uint16_t  value 
)
static

Definition at line 104 of file pci_io_cfg.h.

References pci_io_write_config16(), and value.

Referenced by ehci_debug_hw_enable(), enable_rom(), hudson_enable_rom(), pci_early_device_probe(), pci_s_assert_secondary_reset(), pci_s_bridge_set_mmio(), pci_s_deassert_secondary_reset(), pci_write_config16(), and uart_bootblock_init().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ pci_s_write_config32()

◆ pci_s_write_config8()

static __always_inline void pci_s_write_config8 ( pci_devfn_t  dev,
uint16_t  reg,
uint8_t  value 
)
static

Definition at line 98 of file pci_io_cfg.h.

References pci_io_write_config8(), and value.

Referenced by bootblock_soc_early_init(), ehci_debug_hw_enable(), hudson_enable_rom(), irq_program_non_pch(), lpss_set_power_state(), ne2k_init(), pci_s_bridge_set_secondary(), and pci_write_config8().

Here is the call graph for this function:
Here is the caller graph for this function: