coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
io.h File Reference
#include <stdint.h>
Include dependency graph for io.h:

Go to the source code of this file.

Macros

#define MMIO_GROUP0_CHIP0_LPC_BASE_ADDR   0x8006030000000000
 
#define LPCHC_IO_SPACE   0xD0010000
 
#define FLASH_IO_SPACE   0xFC000000
 
#define LPC_BASE_ADDR   (MMIO_GROUP0_CHIP0_LPC_BASE_ADDR + LPCHC_IO_SPACE)
 
#define FLASH_BASE_ADDR   (MMIO_GROUP0_CHIP0_LPC_BASE_ADDR + FLASH_IO_SPACE)
 
#define MMIO_GROUP0_CHIP0_SCOM_BASE_ADDR   0x800603FC00000000
 

Functions

static void eieio (void)
 
static void outb (uint8_t value, uint16_t port)
 
static void outw (uint16_t value, uint16_t port)
 
static void outl (uint32_t value, uint16_t port)
 
static uint8_t inb (uint16_t port)
 
static uint16_t inw (uint16_t port)
 
static uint32_t inl (uint16_t port)
 
static void report_istep (uint8_t step, uint8_t substep)
 

Macro Definition Documentation

◆ FLASH_BASE_ADDR

#define FLASH_BASE_ADDR   (MMIO_GROUP0_CHIP0_LPC_BASE_ADDR + FLASH_IO_SPACE)

Definition at line 13 of file io.h.

◆ FLASH_IO_SPACE

#define FLASH_IO_SPACE   0xFC000000

Definition at line 11 of file io.h.

◆ LPC_BASE_ADDR

#define LPC_BASE_ADDR   (MMIO_GROUP0_CHIP0_LPC_BASE_ADDR + LPCHC_IO_SPACE)

Definition at line 12 of file io.h.

◆ LPCHC_IO_SPACE

#define LPCHC_IO_SPACE   0xD0010000

Definition at line 10 of file io.h.

◆ MMIO_GROUP0_CHIP0_LPC_BASE_ADDR

#define MMIO_GROUP0_CHIP0_LPC_BASE_ADDR   0x8006030000000000

Definition at line 9 of file io.h.

◆ MMIO_GROUP0_CHIP0_SCOM_BASE_ADDR

#define MMIO_GROUP0_CHIP0_SCOM_BASE_ADDR   0x800603FC00000000

Definition at line 14 of file io.h.

Function Documentation

◆ eieio()

static void eieio ( void  )
inlinestatic

Definition at line 17 of file io.h.

Referenced by inb(), inl(), inw(), outb(), outl(), outw(), read_scom_direct(), reset_scom_engine(), and write_scom_direct().

Here is the caller graph for this function:

◆ inb()

static uint8_t inb ( uint16_t  port)
inlinestatic

Definition at line 40 of file io.h.

References buffer, eieio(), and LPC_BASE_ADDR.

Here is the call graph for this function:

◆ inl()

static uint32_t inl ( uint16_t  port)
inlinestatic

Definition at line 56 of file io.h.

References buffer, eieio(), and LPC_BASE_ADDR.

Here is the call graph for this function:

◆ inw()

static uint16_t inw ( uint16_t  port)
inlinestatic

Definition at line 48 of file io.h.

References buffer, eieio(), and LPC_BASE_ADDR.

Here is the call graph for this function:

◆ outb()

static void outb ( uint8_t  value,
uint16_t  port 
)
inlinestatic

Definition at line 22 of file io.h.

References eieio(), LPC_BASE_ADDR, and value.

Referenced by report_istep().

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

◆ outl()

static void outl ( uint32_t  value,
uint16_t  port 
)
inlinestatic

Definition at line 34 of file io.h.

References eieio(), LPC_BASE_ADDR, and value.

Here is the call graph for this function:

◆ outw()

static void outw ( uint16_t  value,
uint16_t  port 
)
inlinestatic

Definition at line 28 of file io.h.

References eieio(), LPC_BASE_ADDR, and value.

Here is the call graph for this function:

◆ report_istep()

static void report_istep ( uint8_t  step,
uint8_t  substep 
)
inlinestatic

Definition at line 64 of file io.h.

References outb().

Here is the call graph for this function: