![]() |
coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
|
#include <cbmem.h>
#include <console/console.h>
#include <device/mmio.h>
#include <device/pci_ops.h>
#include <stdint.h>
#include <delay.h>
#include <device/device.h>
#include <device/pci.h>
#include <device/pci_ids.h>
#include <timer.h>
#include <soc/iomap.h>
#include <soc/pci_devs.h>
#include <soc/ramstage.h>
#include <soc/systemagent.h>
#include <soc/acpi.h>
Go to the source code of this file.
Data Structures | |
struct | fixed_mmio_descriptor |
struct | map_entry |
Macros | |
#define | _1ms 1 |
#define | WAITING_STEP 100 |
#define | MAP_ENTRY(reg_, is_64_, is_limit_, desc_) |
#define | MAP_ENTRY_BASE_64(reg_, desc_) MAP_ENTRY(reg_, 1, 0, desc_) |
#define | MAP_ENTRY_LIMIT_64(reg_, desc_) MAP_ENTRY(reg_, 1, 1, desc_) |
#define | MAP_ENTRY_BASE_32(reg_, desc_) MAP_ENTRY(reg_, 0, 0, desc_) |
Enumerations | |
enum | { TOUUD_REG , TOLUD_REG , TSEG_REG , NUM_MAP_ENTRIES } |
Functions | |
static int | get_pcie_bar (struct device *dev, unsigned int index, u32 *base, u32 *len) |
static int | get_bar (struct device *dev, unsigned int index, u32 *base, u32 *len) |
static void | mc_add_fixed_mmio_resources (struct device *dev) |
static void | read_map_entry (struct device *dev, struct map_entry *entry, uint64_t *result) |
static void | mc_read_map_entries (struct device *dev, uint64_t *values) |
static void | mc_report_map_entries (struct device *dev, uint64_t *values) |
static void | mc_add_dram_resources (struct device *dev) |
static void | systemagent_read_resources (struct device *dev) |
static void | systemagent_init (struct device *dev) |
Variables | |
struct fixed_mmio_descriptor | mc_fixed_resources [] |
static struct map_entry | memory_map [NUM_MAP_ENTRIES] |
static struct device_operations | systemagent_ops |
static const unsigned short | systemagent_ids [] |
static const struct pci_driver systemagent_driver | __pci_driver |
#define _1ms 1 |
Definition at line 20 of file systemagent.c.
#define MAP_ENTRY | ( | reg_, | |
is_64_, | |||
is_limit_, | |||
desc_ | |||
) |
Definition at line 151 of file systemagent.c.
#define MAP_ENTRY_BASE_32 | ( | reg_, | |
desc_ | |||
) | MAP_ENTRY(reg_, 0, 0, desc_) |
Definition at line 159 of file systemagent.c.
#define MAP_ENTRY_BASE_64 | ( | reg_, | |
desc_ | |||
) | MAP_ENTRY(reg_, 1, 0, desc_) |
Definition at line 157 of file systemagent.c.
#define MAP_ENTRY_LIMIT_64 | ( | reg_, | |
desc_ | |||
) | MAP_ENTRY(reg_, 1, 1, desc_) |
Definition at line 158 of file systemagent.c.
#define WAITING_STEP 100 |
Definition at line 21 of file systemagent.c.
anonymous enum |
Enumerator | |
---|---|
TOUUD_REG | |
TOLUD_REG | |
TSEG_REG | |
NUM_MAP_ENTRIES |
Definition at line 161 of file systemagent.c.
Definition at line 57 of file systemagent.c.
References base, and pci_read_config32().
Definition at line 23 of file systemagent.c.
References base, and pci_read_config32().
Definition at line 191 of file systemagent.c.
References resource::base, BIOS_DEBUG, cbmem_top(), resource::flags, resource::index, IORESOURCE_ASSIGNED, IORESOURCE_CACHEABLE, IORESOURCE_FIXED, IORESOURCE_MEM, IORESOURCE_RESERVE, IORESOURCE_STORED, mc_read_map_entries(), mc_report_map_entries(), mmio_resource, new_resource(), NUM_MAP_ENTRIES, printk, ram_resource, reserved_ram_resource, resource::size, TOLUD_REG, TOUUD_REG, and TSEG_REG.
Referenced by systemagent_read_resources().
Definition at line 90 of file systemagent.c.
References ARRAY_SIZE, resource::base, base, BIOS_DEBUG, resource::flags, resource::index, fixed_mmio_descriptor::index, IORESOURCE_ASSIGNED, IORESOURCE_FIXED, IORESOURCE_MEM, IORESOURCE_RESERVE, IORESOURCE_STORED, mc_fixed_resources, new_resource(), printk, resource::size, and fixed_mmio_descriptor::size.
Referenced by systemagent_read_resources().
Definition at line 175 of file systemagent.c.
References memory_map, NUM_MAP_ENTRIES, and read_map_entry().
Referenced by mc_add_dram_resources().
Definition at line 182 of file systemagent.c.
References BIOS_DEBUG, map_entry::description, memory_map, NUM_MAP_ENTRIES, and printk.
Referenced by mc_add_dram_resources().
|
static |
Definition at line 125 of file systemagent.c.
Referenced by mc_read_map_entries().
Definition at line 297 of file systemagent.c.
References _1ms, BIOS_DEBUG, DEFAULT_MCHBAR, MCH_BAR_BIOS_RESET_CPL, PCODE_INIT_DONE, printk, read32(), RST_CPL_BIT, stopwatch_expired(), stopwatch_init_msecs_expire(), udelay(), WAITING_STEP, and write32().
Definition at line 285 of file systemagent.c.
References mc_add_dram_resources(), mc_add_fixed_mmio_resources(), and pci_dev_read_resources().
|
static |
Definition at line 335 of file systemagent.c.
struct fixed_mmio_descriptor mc_fixed_resources[] |
Definition at line 57 of file systemagent.c.
Referenced by mc_add_fixed_mmio_resources().
|
static |
Definition at line 125 of file systemagent.c.
Referenced by mc_read_map_entries(), and mc_report_map_entries().
|
static |
Definition at line 335 of file systemagent.c.
|
static |
Definition at line 297 of file systemagent.c.