soc/amd: factor out writing extended PM registers in FADT
Signed-off-by: Felix Held <felix-coreboot@felixheld.de> Change-Id: I59985f283f1694beeacb0999340111146fa3f39b Reviewed-on: https://review.coreboot.org/c/coreboot/+/68494 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Matt DeVillier <matt.devillier@amd.corp-partner.google.com> Reviewed-by: Jason Glenesk <jason.glenesk@gmail.com> Reviewed-by: Fred Reitberger <reitbergerfred@gmail.com>
This commit is contained in:
parent
13831223be
commit
164c5eda27
|
@ -81,6 +81,8 @@ void acpi_fill_fadt(acpi_fadt_t *fadt)
|
||||||
fadt->pm_tmr_len = 4; /* 32 bits */
|
fadt->pm_tmr_len = 4; /* 32 bits */
|
||||||
fadt->gpe0_blk_len = 8; /* 64 bits */
|
fadt->gpe0_blk_len = 8; /* 64 bits */
|
||||||
|
|
||||||
|
fill_fadt_extended_pm_regs(fadt);
|
||||||
|
|
||||||
fadt->p_lvl2_lat = ACPI_FADT_C2_NOT_SUPPORTED;
|
fadt->p_lvl2_lat = ACPI_FADT_C2_NOT_SUPPORTED;
|
||||||
fadt->p_lvl3_lat = ACPI_FADT_C3_NOT_SUPPORTED;
|
fadt->p_lvl3_lat = ACPI_FADT_C3_NOT_SUPPORTED;
|
||||||
fadt->duty_offset = 0; /* Not supported */
|
fadt->duty_offset = 0; /* Not supported */
|
||||||
|
@ -101,34 +103,6 @@ void acpi_fill_fadt(acpi_fadt_t *fadt)
|
||||||
fadt->flags |= ACPI_FADT_LOW_PWR_IDLE_S0;
|
fadt->flags |= ACPI_FADT_LOW_PWR_IDLE_S0;
|
||||||
|
|
||||||
fadt->flags |= cfg->common_config.fadt_flags; /* additional board-specific flags */
|
fadt->flags |= cfg->common_config.fadt_flags; /* additional board-specific flags */
|
||||||
|
|
||||||
fadt->x_pm1a_evt_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
|
||||||
fadt->x_pm1a_evt_blk.bit_width = fadt->pm1_evt_len * 8;
|
|
||||||
fadt->x_pm1a_evt_blk.bit_offset = 0;
|
|
||||||
fadt->x_pm1a_evt_blk.access_size = ACPI_ACCESS_SIZE_WORD_ACCESS;
|
|
||||||
fadt->x_pm1a_evt_blk.addrl = fadt->pm1a_evt_blk;
|
|
||||||
fadt->x_pm1a_evt_blk.addrh = 0x0;
|
|
||||||
|
|
||||||
fadt->x_pm1a_cnt_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
|
||||||
fadt->x_pm1a_cnt_blk.bit_width = fadt->pm1_cnt_len * 8;
|
|
||||||
fadt->x_pm1a_cnt_blk.bit_offset = 0;
|
|
||||||
fadt->x_pm1a_cnt_blk.access_size = ACPI_ACCESS_SIZE_WORD_ACCESS;
|
|
||||||
fadt->x_pm1a_cnt_blk.addrl = fadt->pm1a_cnt_blk;
|
|
||||||
fadt->x_pm1a_cnt_blk.addrh = 0x0;
|
|
||||||
|
|
||||||
fadt->x_pm_tmr_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
|
||||||
fadt->x_pm_tmr_blk.bit_width = fadt->pm_tmr_len * 8;
|
|
||||||
fadt->x_pm_tmr_blk.bit_offset = 0;
|
|
||||||
fadt->x_pm_tmr_blk.access_size = ACPI_ACCESS_SIZE_DWORD_ACCESS;
|
|
||||||
fadt->x_pm_tmr_blk.addrl = fadt->pm_tmr_blk;
|
|
||||||
fadt->x_pm_tmr_blk.addrh = 0x0;
|
|
||||||
|
|
||||||
fadt->x_gpe0_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
|
||||||
fadt->x_gpe0_blk.bit_width = fadt->gpe0_blk_len * 8;
|
|
||||||
fadt->x_gpe0_blk.bit_offset = 0;
|
|
||||||
fadt->x_gpe0_blk.access_size = ACPI_ACCESS_SIZE_BYTE_ACCESS;
|
|
||||||
fadt->x_gpe0_blk.addrl = fadt->gpe0_blk;
|
|
||||||
fadt->x_gpe0_blk.addrh = 0x0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static uint32_t get_pstate_core_freq(msr_t pstate_def)
|
static uint32_t get_pstate_core_freq(msr_t pstate_def)
|
||||||
|
|
|
@ -93,6 +93,37 @@ void acpi_clear_pm_gpe_status(void)
|
||||||
acpi_write32(MMIO_ACPI_GPE0_STS, acpi_read32(MMIO_ACPI_GPE0_STS));
|
acpi_write32(MMIO_ACPI_GPE0_STS, acpi_read32(MMIO_ACPI_GPE0_STS));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void fill_fadt_extended_pm_regs(acpi_fadt_t *fadt)
|
||||||
|
{
|
||||||
|
fadt->x_pm1a_evt_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
||||||
|
fadt->x_pm1a_evt_blk.bit_width = fadt->pm1_evt_len * 8;
|
||||||
|
fadt->x_pm1a_evt_blk.bit_offset = 0;
|
||||||
|
fadt->x_pm1a_evt_blk.access_size = ACPI_ACCESS_SIZE_WORD_ACCESS;
|
||||||
|
fadt->x_pm1a_evt_blk.addrl = fadt->pm1a_evt_blk;
|
||||||
|
fadt->x_pm1a_evt_blk.addrh = 0x0;
|
||||||
|
|
||||||
|
fadt->x_pm1a_cnt_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
||||||
|
fadt->x_pm1a_cnt_blk.bit_width = fadt->pm1_cnt_len * 8;
|
||||||
|
fadt->x_pm1a_cnt_blk.bit_offset = 0;
|
||||||
|
fadt->x_pm1a_cnt_blk.access_size = ACPI_ACCESS_SIZE_WORD_ACCESS;
|
||||||
|
fadt->x_pm1a_cnt_blk.addrl = fadt->pm1a_cnt_blk;
|
||||||
|
fadt->x_pm1a_cnt_blk.addrh = 0x0;
|
||||||
|
|
||||||
|
fadt->x_pm_tmr_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
||||||
|
fadt->x_pm_tmr_blk.bit_width = fadt->pm_tmr_len * 8;
|
||||||
|
fadt->x_pm_tmr_blk.bit_offset = 0;
|
||||||
|
fadt->x_pm_tmr_blk.access_size = ACPI_ACCESS_SIZE_DWORD_ACCESS;
|
||||||
|
fadt->x_pm_tmr_blk.addrl = fadt->pm_tmr_blk;
|
||||||
|
fadt->x_pm_tmr_blk.addrh = 0x0;
|
||||||
|
|
||||||
|
fadt->x_gpe0_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
||||||
|
fadt->x_gpe0_blk.bit_width = fadt->gpe0_blk_len * 8;
|
||||||
|
fadt->x_gpe0_blk.bit_offset = 0;
|
||||||
|
fadt->x_gpe0_blk.access_size = ACPI_ACCESS_SIZE_BYTE_ACCESS;
|
||||||
|
fadt->x_gpe0_blk.addrl = fadt->gpe0_blk;
|
||||||
|
fadt->x_gpe0_blk.addrh = 0x0;
|
||||||
|
}
|
||||||
|
|
||||||
int acpi_get_sleep_type(void)
|
int acpi_get_sleep_type(void)
|
||||||
{
|
{
|
||||||
return acpi_sleep_from_pm1(acpi_read16(MMIO_ACPI_PM1_CNT_BLK));
|
return acpi_sleep_from_pm1(acpi_read16(MMIO_ACPI_PM1_CNT_BLK));
|
||||||
|
|
|
@ -37,6 +37,8 @@ void acpi_pm_gpe_add_events_print_events(void);
|
||||||
/* Clear PM and GPE status registers. */
|
/* Clear PM and GPE status registers. */
|
||||||
void acpi_clear_pm_gpe_status(void);
|
void acpi_clear_pm_gpe_status(void);
|
||||||
|
|
||||||
|
void fill_fadt_extended_pm_regs(acpi_fadt_t *fadt);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* If a system reset is about to be requested, modify the PM1 register so it
|
* If a system reset is about to be requested, modify the PM1 register so it
|
||||||
* will never be misinterpreted as an S3 resume.
|
* will never be misinterpreted as an S3 resume.
|
||||||
|
|
|
@ -83,6 +83,8 @@ void acpi_fill_fadt(acpi_fadt_t *fadt)
|
||||||
fadt->pm_tmr_len = 4; /* 32 bits */
|
fadt->pm_tmr_len = 4; /* 32 bits */
|
||||||
fadt->gpe0_blk_len = 8; /* 64 bits */
|
fadt->gpe0_blk_len = 8; /* 64 bits */
|
||||||
|
|
||||||
|
fill_fadt_extended_pm_regs(fadt);
|
||||||
|
|
||||||
fadt->p_lvl2_lat = ACPI_FADT_C2_NOT_SUPPORTED;
|
fadt->p_lvl2_lat = ACPI_FADT_C2_NOT_SUPPORTED;
|
||||||
fadt->p_lvl3_lat = ACPI_FADT_C3_NOT_SUPPORTED;
|
fadt->p_lvl3_lat = ACPI_FADT_C3_NOT_SUPPORTED;
|
||||||
fadt->duty_offset = 0; /* Not supported */
|
fadt->duty_offset = 0; /* Not supported */
|
||||||
|
@ -103,34 +105,6 @@ void acpi_fill_fadt(acpi_fadt_t *fadt)
|
||||||
fadt->flags |= ACPI_FADT_LOW_PWR_IDLE_S0;
|
fadt->flags |= ACPI_FADT_LOW_PWR_IDLE_S0;
|
||||||
|
|
||||||
fadt->flags |= cfg->common_config.fadt_flags; /* additional board-specific flags */
|
fadt->flags |= cfg->common_config.fadt_flags; /* additional board-specific flags */
|
||||||
|
|
||||||
fadt->x_pm1a_evt_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
|
||||||
fadt->x_pm1a_evt_blk.bit_width = fadt->pm1_evt_len * 8;
|
|
||||||
fadt->x_pm1a_evt_blk.bit_offset = 0;
|
|
||||||
fadt->x_pm1a_evt_blk.access_size = ACPI_ACCESS_SIZE_WORD_ACCESS;
|
|
||||||
fadt->x_pm1a_evt_blk.addrl = fadt->pm1a_evt_blk;
|
|
||||||
fadt->x_pm1a_evt_blk.addrh = 0x0;
|
|
||||||
|
|
||||||
fadt->x_pm1a_cnt_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
|
||||||
fadt->x_pm1a_cnt_blk.bit_width = fadt->pm1_cnt_len * 8;
|
|
||||||
fadt->x_pm1a_cnt_blk.bit_offset = 0;
|
|
||||||
fadt->x_pm1a_cnt_blk.access_size = ACPI_ACCESS_SIZE_WORD_ACCESS;
|
|
||||||
fadt->x_pm1a_cnt_blk.addrl = fadt->pm1a_cnt_blk;
|
|
||||||
fadt->x_pm1a_cnt_blk.addrh = 0x0;
|
|
||||||
|
|
||||||
fadt->x_pm_tmr_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
|
||||||
fadt->x_pm_tmr_blk.bit_width = fadt->pm_tmr_len * 8;
|
|
||||||
fadt->x_pm_tmr_blk.bit_offset = 0;
|
|
||||||
fadt->x_pm_tmr_blk.access_size = ACPI_ACCESS_SIZE_DWORD_ACCESS;
|
|
||||||
fadt->x_pm_tmr_blk.addrl = fadt->pm_tmr_blk;
|
|
||||||
fadt->x_pm_tmr_blk.addrh = 0x0;
|
|
||||||
|
|
||||||
fadt->x_gpe0_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
|
||||||
fadt->x_gpe0_blk.bit_width = fadt->gpe0_blk_len * 8;
|
|
||||||
fadt->x_gpe0_blk.bit_offset = 0;
|
|
||||||
fadt->x_gpe0_blk.access_size = ACPI_ACCESS_SIZE_BYTE_ACCESS;
|
|
||||||
fadt->x_gpe0_blk.addrl = fadt->gpe0_blk;
|
|
||||||
fadt->x_gpe0_blk.addrh = 0x0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static uint32_t get_pstate_core_freq(msr_t pstate_def)
|
static uint32_t get_pstate_core_freq(msr_t pstate_def)
|
||||||
|
|
|
@ -84,6 +84,8 @@ void acpi_fill_fadt(acpi_fadt_t *fadt)
|
||||||
fadt->pm_tmr_len = 4; /* 32 bits */
|
fadt->pm_tmr_len = 4; /* 32 bits */
|
||||||
fadt->gpe0_blk_len = 8; /* 64 bits */
|
fadt->gpe0_blk_len = 8; /* 64 bits */
|
||||||
|
|
||||||
|
fill_fadt_extended_pm_regs(fadt);
|
||||||
|
|
||||||
fadt->p_lvl2_lat = ACPI_FADT_C2_NOT_SUPPORTED;
|
fadt->p_lvl2_lat = ACPI_FADT_C2_NOT_SUPPORTED;
|
||||||
fadt->p_lvl3_lat = ACPI_FADT_C3_NOT_SUPPORTED;
|
fadt->p_lvl3_lat = ACPI_FADT_C3_NOT_SUPPORTED;
|
||||||
fadt->duty_offset = 0; /* Not supported */
|
fadt->duty_offset = 0; /* Not supported */
|
||||||
|
@ -104,34 +106,6 @@ void acpi_fill_fadt(acpi_fadt_t *fadt)
|
||||||
fadt->flags |= ACPI_FADT_LOW_PWR_IDLE_S0;
|
fadt->flags |= ACPI_FADT_LOW_PWR_IDLE_S0;
|
||||||
|
|
||||||
fadt->flags |= cfg->common_config.fadt_flags; /* additional board-specific flags */
|
fadt->flags |= cfg->common_config.fadt_flags; /* additional board-specific flags */
|
||||||
|
|
||||||
fadt->x_pm1a_evt_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
|
||||||
fadt->x_pm1a_evt_blk.bit_width = fadt->pm1_evt_len * 8;
|
|
||||||
fadt->x_pm1a_evt_blk.bit_offset = 0;
|
|
||||||
fadt->x_pm1a_evt_blk.access_size = ACPI_ACCESS_SIZE_WORD_ACCESS;
|
|
||||||
fadt->x_pm1a_evt_blk.addrl = fadt->pm1a_evt_blk;
|
|
||||||
fadt->x_pm1a_evt_blk.addrh = 0x0;
|
|
||||||
|
|
||||||
fadt->x_pm1a_cnt_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
|
||||||
fadt->x_pm1a_cnt_blk.bit_width = fadt->pm1_cnt_len * 8;
|
|
||||||
fadt->x_pm1a_cnt_blk.bit_offset = 0;
|
|
||||||
fadt->x_pm1a_cnt_blk.access_size = ACPI_ACCESS_SIZE_WORD_ACCESS;
|
|
||||||
fadt->x_pm1a_cnt_blk.addrl = fadt->pm1a_cnt_blk;
|
|
||||||
fadt->x_pm1a_cnt_blk.addrh = 0x0;
|
|
||||||
|
|
||||||
fadt->x_pm_tmr_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
|
||||||
fadt->x_pm_tmr_blk.bit_width = fadt->pm_tmr_len * 8;
|
|
||||||
fadt->x_pm_tmr_blk.bit_offset = 0;
|
|
||||||
fadt->x_pm_tmr_blk.access_size = ACPI_ACCESS_SIZE_DWORD_ACCESS;
|
|
||||||
fadt->x_pm_tmr_blk.addrl = fadt->pm_tmr_blk;
|
|
||||||
fadt->x_pm_tmr_blk.addrh = 0x0;
|
|
||||||
|
|
||||||
fadt->x_gpe0_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
|
||||||
fadt->x_gpe0_blk.bit_width = fadt->gpe0_blk_len * 8;
|
|
||||||
fadt->x_gpe0_blk.bit_offset = 0;
|
|
||||||
fadt->x_gpe0_blk.access_size = ACPI_ACCESS_SIZE_BYTE_ACCESS;
|
|
||||||
fadt->x_gpe0_blk.addrl = fadt->gpe0_blk;
|
|
||||||
fadt->x_gpe0_blk.addrh = 0x0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static uint32_t get_pstate_core_freq(msr_t pstate_def)
|
static uint32_t get_pstate_core_freq(msr_t pstate_def)
|
||||||
|
|
|
@ -87,6 +87,8 @@ void acpi_fill_fadt(acpi_fadt_t *fadt)
|
||||||
fadt->pm_tmr_len = 4; /* 32 bits */
|
fadt->pm_tmr_len = 4; /* 32 bits */
|
||||||
fadt->gpe0_blk_len = 8; /* 64 bits */
|
fadt->gpe0_blk_len = 8; /* 64 bits */
|
||||||
|
|
||||||
|
fill_fadt_extended_pm_regs(fadt);
|
||||||
|
|
||||||
fadt->p_lvl2_lat = ACPI_FADT_C2_NOT_SUPPORTED;
|
fadt->p_lvl2_lat = ACPI_FADT_C2_NOT_SUPPORTED;
|
||||||
fadt->p_lvl3_lat = ACPI_FADT_C3_NOT_SUPPORTED;
|
fadt->p_lvl3_lat = ACPI_FADT_C3_NOT_SUPPORTED;
|
||||||
fadt->duty_offset = 1; /* CLK_VAL bits 3:1 */
|
fadt->duty_offset = 1; /* CLK_VAL bits 3:1 */
|
||||||
|
@ -109,34 +111,6 @@ void acpi_fill_fadt(acpi_fadt_t *fadt)
|
||||||
|
|
||||||
fadt->x_firmware_ctl_l = 0; /* set to 0 if firmware_ctrl is used */
|
fadt->x_firmware_ctl_l = 0; /* set to 0 if firmware_ctrl is used */
|
||||||
fadt->x_firmware_ctl_h = 0;
|
fadt->x_firmware_ctl_h = 0;
|
||||||
|
|
||||||
fadt->x_pm1a_evt_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
|
||||||
fadt->x_pm1a_evt_blk.bit_width = fadt->pm1_evt_len * 8;
|
|
||||||
fadt->x_pm1a_evt_blk.bit_offset = 0;
|
|
||||||
fadt->x_pm1a_evt_blk.access_size = ACPI_ACCESS_SIZE_WORD_ACCESS;
|
|
||||||
fadt->x_pm1a_evt_blk.addrl = fadt->pm1a_evt_blk;
|
|
||||||
fadt->x_pm1a_evt_blk.addrh = 0x0;
|
|
||||||
|
|
||||||
fadt->x_pm1a_cnt_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
|
||||||
fadt->x_pm1a_cnt_blk.bit_width = fadt->pm1_cnt_len * 8;
|
|
||||||
fadt->x_pm1a_cnt_blk.bit_offset = 0;
|
|
||||||
fadt->x_pm1a_cnt_blk.access_size = ACPI_ACCESS_SIZE_WORD_ACCESS;
|
|
||||||
fadt->x_pm1a_cnt_blk.addrl = fadt->pm1a_cnt_blk;
|
|
||||||
fadt->x_pm1a_cnt_blk.addrh = 0x0;
|
|
||||||
|
|
||||||
fadt->x_pm_tmr_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
|
||||||
fadt->x_pm_tmr_blk.bit_width = fadt->pm_tmr_len * 8;
|
|
||||||
fadt->x_pm_tmr_blk.bit_offset = 0;
|
|
||||||
fadt->x_pm_tmr_blk.access_size = ACPI_ACCESS_SIZE_DWORD_ACCESS;
|
|
||||||
fadt->x_pm_tmr_blk.addrl = fadt->pm_tmr_blk;
|
|
||||||
fadt->x_pm_tmr_blk.addrh = 0x0;
|
|
||||||
|
|
||||||
fadt->x_gpe0_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
|
||||||
fadt->x_gpe0_blk.bit_width = fadt->gpe0_blk_len * 8; /* EventStatus + Event Enable */
|
|
||||||
fadt->x_gpe0_blk.bit_offset = 0;
|
|
||||||
fadt->x_gpe0_blk.access_size = ACPI_ACCESS_SIZE_BYTE_ACCESS;
|
|
||||||
fadt->x_gpe0_blk.addrl = fadt->gpe0_blk;
|
|
||||||
fadt->x_gpe0_blk.addrh = 0x0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static uint32_t get_pstate_core_freq(msr_t pstate_def)
|
static uint32_t get_pstate_core_freq(msr_t pstate_def)
|
||||||
|
|
|
@ -79,6 +79,8 @@ void acpi_fill_fadt(acpi_fadt_t *fadt)
|
||||||
fadt->pm_tmr_len = 4; /* 32 bits */
|
fadt->pm_tmr_len = 4; /* 32 bits */
|
||||||
fadt->gpe0_blk_len = 8; /* 64 bits */
|
fadt->gpe0_blk_len = 8; /* 64 bits */
|
||||||
|
|
||||||
|
fill_fadt_extended_pm_regs(fadt);
|
||||||
|
|
||||||
fadt->p_lvl2_lat = ACPI_FADT_C2_NOT_SUPPORTED;
|
fadt->p_lvl2_lat = ACPI_FADT_C2_NOT_SUPPORTED;
|
||||||
fadt->p_lvl3_lat = ACPI_FADT_C3_NOT_SUPPORTED;
|
fadt->p_lvl3_lat = ACPI_FADT_C3_NOT_SUPPORTED;
|
||||||
fadt->duty_offset = 1; /* CLK_VAL bits 3:1 */
|
fadt->duty_offset = 1; /* CLK_VAL bits 3:1 */
|
||||||
|
@ -101,34 +103,6 @@ void acpi_fill_fadt(acpi_fadt_t *fadt)
|
||||||
|
|
||||||
fadt->x_firmware_ctl_l = 0; /* set to 0 if firmware_ctrl is used */
|
fadt->x_firmware_ctl_l = 0; /* set to 0 if firmware_ctrl is used */
|
||||||
fadt->x_firmware_ctl_h = 0;
|
fadt->x_firmware_ctl_h = 0;
|
||||||
|
|
||||||
fadt->x_pm1a_evt_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
|
||||||
fadt->x_pm1a_evt_blk.bit_width = fadt->pm1_evt_len * 8;
|
|
||||||
fadt->x_pm1a_evt_blk.bit_offset = 0;
|
|
||||||
fadt->x_pm1a_evt_blk.access_size = ACPI_ACCESS_SIZE_WORD_ACCESS;
|
|
||||||
fadt->x_pm1a_evt_blk.addrl = fadt->pm1a_evt_blk;
|
|
||||||
fadt->x_pm1a_evt_blk.addrh = 0x0;
|
|
||||||
|
|
||||||
fadt->x_pm1a_cnt_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
|
||||||
fadt->x_pm1a_cnt_blk.bit_width = fadt->pm1_cnt_len * 8;
|
|
||||||
fadt->x_pm1a_cnt_blk.bit_offset = 0;
|
|
||||||
fadt->x_pm1a_cnt_blk.access_size = ACPI_ACCESS_SIZE_WORD_ACCESS;
|
|
||||||
fadt->x_pm1a_cnt_blk.addrl = fadt->pm1a_cnt_blk;
|
|
||||||
fadt->x_pm1a_cnt_blk.addrh = 0x0;
|
|
||||||
|
|
||||||
fadt->x_pm_tmr_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
|
||||||
fadt->x_pm_tmr_blk.bit_width = fadt->pm_tmr_len * 8;
|
|
||||||
fadt->x_pm_tmr_blk.bit_offset = 0;
|
|
||||||
fadt->x_pm_tmr_blk.access_size = ACPI_ACCESS_SIZE_DWORD_ACCESS;
|
|
||||||
fadt->x_pm_tmr_blk.addrl = fadt->pm_tmr_blk;
|
|
||||||
fadt->x_pm_tmr_blk.addrh = 0x0;
|
|
||||||
|
|
||||||
fadt->x_gpe0_blk.space_id = ACPI_ADDRESS_SPACE_IO;
|
|
||||||
fadt->x_gpe0_blk.bit_width = fadt->gpe0_blk_len * 8; /* EventStatus + Event Enable */
|
|
||||||
fadt->x_gpe0_blk.bit_offset = 0;
|
|
||||||
fadt->x_gpe0_blk.access_size = ACPI_ACCESS_SIZE_BYTE_ACCESS;
|
|
||||||
fadt->x_gpe0_blk.addrl = fadt->gpe0_blk;
|
|
||||||
fadt->x_gpe0_blk.addrh = 0x0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void generate_cpu_entries(const struct device *device)
|
void generate_cpu_entries(const struct device *device)
|
||||||
|
|
Loading…
Reference in New Issue