coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
systemagent_early.c File Reference
#include <assert.h>
#include <device/mmio.h>
#include <device/pci_ops.h>
#include <device/device.h>
#include <device/pci.h>
#include <intelblocks/systemagent.h>
#include <security/intel/txt/txt_platform.h>
#include <security/intel/txt/txt_register.h>
#include <soc/iomap.h>
#include <soc/pci_devs.h>
#include <soc/systemagent.h>
#include "systemagent_def.h"
Include dependency graph for systemagent_early.c:

Go to the source code of this file.

Macros

#define __SIMPLE_DEVICE__
 

Functions

void bootblock_systemagent_early_init (void)
 
void sa_set_pci_bar (const struct sa_mmio_descriptor *fixed_set_resources, size_t count)
 
void sa_set_mch_bar (const struct sa_mmio_descriptor *fixed_set_resources, size_t count)
 
void enable_pam_region (void)
 
void enable_bios_reset_cpl (void)
 
uintptr_t sa_get_tolud_base (void)
 
uintptr_t sa_get_gsm_base (void)
 
uintptr_t sa_get_tseg_base (void)
 
size_t sa_get_tseg_size (void)
 
union dpr_register txt_get_chipset_dpr (void)
 

Macro Definition Documentation

◆ __SIMPLE_DEVICE__

#define __SIMPLE_DEVICE__

Definition at line 3 of file systemagent_early.c.

Function Documentation

◆ bootblock_systemagent_early_init()

void bootblock_systemagent_early_init ( void  )

Definition at line 19 of file systemagent_early.c.

References dead_code, pci_io_write_config32(), pci_write_config32(), PCIEXBAR, PCIEXBAR_LENGTH_128MB, PCIEXBAR_LENGTH_256MB, PCIEXBAR_LENGTH_64MB, PCIEXBAR_PCIEXBAREN, SA_DEV_ROOT, and TSEG.

Referenced by bootblock_c_entry(), and bootblock_soc_early_init().

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

◆ enable_bios_reset_cpl()

void enable_bios_reset_cpl ( void  )

Definition at line 118 of file systemagent_early.c.

References BIOS_RESET_CPL, and MCHBAR8.

Referenced by punit_init(), and soc_systemagent_init().

Here is the caller graph for this function:

◆ enable_pam_region()

void enable_pam_region ( void  )

Definition at line 106 of file systemagent_early.c.

References PAM0, PAM1, PAM2, PAM3, PAM4, PAM5, PAM6, pci_write_config8(), and SA_DEV_ROOT.

Here is the call graph for this function:

◆ sa_get_gsm_base()

uintptr_t sa_get_gsm_base ( void  )

Definition at line 137 of file systemagent_early.c.

References ALIGN_DOWN, BGSM, MiB, pci_read_config32(), and SA_DEV_ROOT.

Referenced by sa_get_tseg_size(), and soc_fill_dmar().

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

◆ sa_get_tolud_base()

uintptr_t sa_get_tolud_base ( void  )

Definition at line 131 of file systemagent_early.c.

References ALIGN_DOWN, MiB, pci_read_config32(), SA_DEV_ROOT, and TOLUD.

Referenced by soc_fill_dmar().

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

◆ sa_get_tseg_base()

uintptr_t sa_get_tseg_base ( void  )

Definition at line 143 of file systemagent_early.c.

References ALIGN_DOWN, MiB, pci_read_config32(), SA_DEV_ROOT, and TSEG.

Referenced by sa_get_tseg_size(), and smm_region().

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

◆ sa_get_tseg_size()

size_t sa_get_tseg_size ( void  )

Definition at line 149 of file systemagent_early.c.

References sa_get_gsm_base(), and sa_get_tseg_base().

Referenced by smm_region().

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

◆ sa_set_mch_bar()

void sa_set_mch_bar ( const struct sa_mmio_descriptor fixed_set_resources,
size_t  count 
)

Definition at line 88 of file systemagent_early.c.

References base, sa_mmio_descriptor::base, count, sa_mmio_descriptor::index, MCH_BASE_ADDRESS, PCIEXBAR_PCIEXBAREN, and write32().

Referenced by systemagent_early_init(), and systemagent_vtd_init().

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

◆ sa_set_pci_bar()

void sa_set_pci_bar ( const struct sa_mmio_descriptor fixed_set_resources,
size_t  count 
)

Definition at line 58 of file systemagent_early.c.

References base, sa_mmio_descriptor::base, count, sa_mmio_descriptor::index, pci_read_config32(), pci_write_config32(), PCIEXBAR_PCIEXBAREN, and SA_DEV_ROOT.

Referenced by soc_early_romstage_init(), and systemagent_early_init().

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

◆ txt_get_chipset_dpr()

union dpr_register txt_get_chipset_dpr ( void  )

Definition at line 149 of file systemagent_early.c.