coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
fadt.c
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #include <acpi/acpi.h>
4 #include <cpu/x86/smm.h>
5 #include <soc/iomap.h>
6 #include <soc/pm.h>
7 #include "chip.h"
8 
10 {
13 
14  fadt->pm2_cnt_blk = pmbase + PM2_CNT;
15  fadt->pm_tmr_blk = pmbase + PM1_TMR;
16 
17  fadt->pm2_cnt_len = 1;
18  fadt->pm_tmr_len = 4;
19 
21  if (!CONFIG(NO_FADT_8042))
23 
24  if (config->s0ix_enable)
26 
28  fadt->x_pm2_cnt_blk.bit_width = fadt->pm2_cnt_len * 8;
29  fadt->x_pm2_cnt_blk.bit_offset = 0;
32  fadt->x_pm2_cnt_blk.addrh = 0x0;
33 
35  fadt->x_pm_tmr_blk.bit_width = fadt->pm_tmr_len * 8;
36  fadt->x_pm_tmr_blk.bit_offset = 0;
38  fadt->x_pm_tmr_blk.addrl = pmbase + PM1_TMR;
39  fadt->x_pm_tmr_blk.addrh = 0x0;
40 }
#define PM1_TMR
Definition: pm.h:31
#define PM2_CNT
Definition: pm.h:77
@ CONFIG
Definition: dsi_common.h:201
#define ACPI_ACCESS_SIZE_DWORD_ACCESS
Definition: acpi.h:129
#define ACPI_FADT_8042
Definition: acpi.h:819
#define ACPI_FADT_LEGACY_FREE
Definition: acpi.h:824
#define ACPI_FADT_LOW_PWR_IDLE_S0
Definition: acpi.h:814
#define ACPI_ACCESS_SIZE_BYTE_ACCESS
Definition: acpi.h:127
#define ACPI_ADDRESS_SPACE_IO
Definition: acpi.h:105
#define config_of_soc()
Definition: device.h:394
#define ACPI_BASE_ADDRESS
Definition: iomap.h:99
enum board_config config
Definition: memory.c:448
void soc_fill_fadt(acpi_fadt_t *fadt)
Definition: fadt.c:9
static u16 pmbase
Definition: smi.c:27
unsigned short uint16_t
Definition: stdint.h:11
u32 pm_tmr_blk
Definition: acpi.h:724
acpi_addr_t x_pm2_cnt_blk
Definition: acpi.h:759
u8 pm_tmr_len
Definition: acpi.h:730
u8 pm2_cnt_len
Definition: acpi.h:729
u32 flags
Definition: acpi.h:746
u16 iapc_boot_arch
Definition: acpi.h:744
acpi_addr_t x_pm_tmr_blk
Definition: acpi.h:760
u32 pm2_cnt_blk
Definition: acpi.h:723
u8 bit_offset
Definition: acpi.h:98
u8 bit_width
Definition: acpi.h:97
u8 access_size
Definition: acpi.h:99