![]() |
coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
|
#include <string.h>
#include <console/console.h>
#include <device/device.h>
#include <device/mmio.h>
#include <acpi/acpi.h>
#include <acpi/acpigen.h>
#include <amdblocks/amd_pci_util.h>
#include <amdblocks/gpio.h>
#include <amdblocks/smi.h>
#include <baseboard/variants.h>
#include <boardid.h>
#include <gpio.h>
#include <smbios.h>
#include <soc/cpu.h>
#include <soc/gpio.h>
#include <soc/pci_devs.h>
#include <soc/platform_descriptors.h>
#include <soc/southbridge.h>
#include <soc/smi.h>
#include <soc/soc_util.h>
#include <amdblocks/acpimmio.h>
#include <variant/ec.h>
#include <variant/thermal.h>
#include <commonlib/helpers.h>
Go to the source code of this file.
Data Structures | |
struct | fch_irq_routing |
Macros | |
#define | METHOD_BACKLIGHT_ENABLE "\\_SB.BKEN" |
#define | METHOD_BACKLIGHT_DISABLE "\\_SB.BKDS" |
#define | METHOD_MAINBOARD_INI "\\_SB.MINI" |
#define | METHOD_MAINBOARD_WAK "\\_SB.MWAK" |
#define | METHOD_MAINBOARD_PTS "\\_SB.MPTS" |
Functions | |
_Static_assert (sizeof(fch_pic_routing)==sizeof(fch_apic_routing), "PIC and APIC FCH interrupt tables must be the same size") | |
static void | init_tables (void) |
static void | pirq_setup (void) |
static void | mainboard_configure_gpios (void) |
static void | mainboard_devtree_update (void) |
static void | mainboard_init (void *chip_info) |
void | mainboard_get_dxio_ddi_descriptors (const fsp_dxio_descriptor **dxio_descs, size_t *dxio_num, const fsp_ddi_descriptor **ddi_descs, size_t *ddi_num) |
static void | mainboard_write_blken (void) |
static void | mainboard_write_blkdis (void) |
static void | mainboard_write_mini (void) |
static void | mainboard_write_mwak (void) |
static void | mainboard_write_mpts (void) |
static void | mainboard_fill_ssdt (const struct device *dev) |
static void | mainboard_enable (struct device *dev) |
static void | mainboard_final (void *chip_info) |
void __weak | variant_devtree_update (void) |
__weak const struct soc_amd_gpio * | variant_override_gpio_table (size_t *size) |
Variables | |
static uint8_t | fch_pic_routing [0x80] |
static uint8_t | fch_apic_routing [0x80] |
static const struct fch_irq_routing | fch_pirq [] |
struct chip_operations | mainboard_ops |
#define METHOD_BACKLIGHT_DISABLE "\\_SB.BKDS" |
Definition at line 29 of file mainboard.c.
#define METHOD_BACKLIGHT_ENABLE "\\_SB.BKEN" |
Definition at line 28 of file mainboard.c.
#define METHOD_MAINBOARD_INI "\\_SB.MINI" |
Definition at line 30 of file mainboard.c.
#define METHOD_MAINBOARD_PTS "\\_SB.MPTS" |
Definition at line 32 of file mainboard.c.
#define METHOD_MAINBOARD_WAK "\\_SB.MWAK" |
Definition at line 31 of file mainboard.c.
_Static_assert | ( | sizeof(fch_pic_routing) | = =sizeof(fch_apic_routing) , |
"PIC and APIC FCH interrupt tables must be the same size" | |||
) |
Definition at line 88 of file mainboard.c.
References fch_irq_routing::apic_irq_num, ARRAY_SIZE, fch_apic_routing, fch_pic_routing, fch_pirq, fch_irq_routing::intr_index, memset(), fch_irq_routing::pic_irq_num, and PIRQ_NC.
Referenced by mainboard_enable().
Definition at line 110 of file mainboard.c.
References gpio_configure_pads_with_override(), variant_base_gpio_table(), and variant_override_gpio_table().
Referenced by mainboard_chip_init(), and mainboard_init().
Definition at line 122 of file mainboard.c.
References variant_audio_update(), variant_bluetooth_update(), variant_devtree_update(), and variant_touchscreen_update().
Definition at line 199 of file mainboard.c.
References init_tables(), mainboard_fill_ssdt(), device::ops, and pirq_setup().
Definition at line 187 of file mainboard.c.
References mainboard_write_blkdis(), mainboard_write_blken(), mainboard_write_mini(), mainboard_write_mpts(), and mainboard_write_mwak().
Referenced by mainboard_enable().
Definition at line 209 of file mainboard.c.
References acpi_get_sleep_type(), and finalize_gpios().
void mainboard_get_dxio_ddi_descriptors | ( | const fsp_dxio_descriptor ** | dxio_descs, |
size_t * | dxio_num, | ||
const fsp_ddi_descriptor ** | ddi_descs, | ||
size_t * | ddi_num | ||
) |
Definition at line 144 of file mainboard.c.
References variant_get_dxio_ddi_descriptors().
Definition at line 130 of file mainboard.c.
References BIOS_INFO, board_id(), mainboard_configure_gpios(), mainboard_devtree_update(), mainboard_ec_init(), and printk.
Definition at line 159 of file mainboard.c.
References acpigen_pop_len(), acpigen_soc_set_tx_gpio(), acpigen_write_method(), GPIO_85, and METHOD_BACKLIGHT_DISABLE.
Referenced by mainboard_fill_ssdt().
Definition at line 152 of file mainboard.c.
References acpigen_pop_len(), acpigen_soc_clear_tx_gpio(), acpigen_write_method(), GPIO_85, and METHOD_BACKLIGHT_ENABLE.
Referenced by mainboard_fill_ssdt().
Definition at line 166 of file mainboard.c.
References acpigen_emit_namestring(), acpigen_pop_len(), acpigen_write_method(), METHOD_BACKLIGHT_ENABLE, and METHOD_MAINBOARD_INI.
Referenced by mainboard_fill_ssdt().
Definition at line 180 of file mainboard.c.
References acpigen_emit_namestring(), acpigen_pop_len(), acpigen_write_method(), METHOD_BACKLIGHT_DISABLE, and METHOD_MAINBOARD_PTS.
Referenced by mainboard_fill_ssdt().
Definition at line 173 of file mainboard.c.
References acpigen_emit_namestring(), acpigen_pop_len(), acpigen_write_method(), METHOD_BACKLIGHT_ENABLE, and METHOD_MAINBOARD_WAK.
Referenced by mainboard_fill_ssdt().
Definition at line 104 of file mainboard.c.
References fch_apic_routing, fch_pic_routing, intr_data_ptr, and picr_data_ptr.
Referenced by mainboard_enable().
Definition at line 220 of file mainboard.c.
__weak const struct soc_amd_gpio* variant_override_gpio_table | ( | size_t * | size | ) |
Definition at line 224 of file mainboard.c.
References NULL.
Referenced by mainboard_chip_init(), mainboard_configure_gpios(), and mainboard_init().
|
static |
Definition at line 43 of file mainboard.c.
Referenced by init_tables(), and pirq_setup().
|
static |
Definition at line 42 of file mainboard.c.
Referenced by init_tables(), and pirq_setup().
|
static |
Referenced by init_tables().
struct chip_operations mainboard_ops |
Definition at line 209 of file mainboard.c.