mb/emulation/qemu-riscv: Enable ACPI by default
Select HAVE_ACPI_TABLES & PCI for QEMU riscv virt machine mainboard. Add an empty dsdt.asl to fit current build process, but it will not actually be used since QEMU has its own method of providing DSDT blob. TEST=build and run successfully on QEMU rvvirt machine. Using command "qemu-system-riscv64 -machine virt,aia=aplic-imsic,acpi=on -bios build/coreboot.rom -nographic -pflash build/coreboot.rom". Change-Id: If8c9b5d86adb69afdcb4bf320d6353b2b2acfb31 Signed-off-by: Ziang Wang <wangziang.ok@bytedance.com> Signed-off-by: Dong Wei <weidong.wd@bytedance.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/89562 Reviewed-by: Maximilian Brune <maximilian.brune@9elements.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
parent
5daf497df4
commit
c1c83df3b5
4 changed files with 46 additions and 0 deletions
|
|
@ -38,6 +38,8 @@ config BOARD_SPECIFIC_OPTIONS
|
|||
select RISCV_USE_ARCH_TIMER
|
||||
select FLATTENED_DEVICE_TREE
|
||||
select DRIVERS_EMULATION_QEMU_FW_CFG
|
||||
select PCI
|
||||
select HAVE_ACPI_TABLES
|
||||
|
||||
config MEMLAYOUT_LD_FILE
|
||||
string
|
||||
|
|
@ -49,6 +51,12 @@ config MAINBOARD_DIR
|
|||
config MAINBOARD_PART_NUMBER
|
||||
default "QEMU RISCV"
|
||||
|
||||
config ECAM_MMCONF_BASE_ADDRESS
|
||||
default 0x30000000
|
||||
|
||||
config ECAM_MMCONF_BUS_NUMBER
|
||||
default 256
|
||||
|
||||
config MAX_CPUS
|
||||
int
|
||||
default 512 # QEMUs current limit for the virt target
|
||||
|
|
|
|||
|
|
@ -23,5 +23,6 @@ ramstage-y += cbmem.c
|
|||
ramstage-y += chip.c
|
||||
ramstage-y += smp.c
|
||||
ramstage-y += mmio.c
|
||||
ramstage-$(CONFIG_HAVE_ACPI_TABLES) += acpi.c
|
||||
|
||||
CPPFLAGS_common += -I$(src)/mainboard/$(MAINBOARDDIR)/include
|
||||
|
|
|
|||
18
src/mainboard/emulation/qemu-riscv/acpi.c
Normal file
18
src/mainboard/emulation/qemu-riscv/acpi.c
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
|
||||
#include <acpi/acpi.h>
|
||||
#include <smbios.h>
|
||||
|
||||
smbios_enclosure_type smbios_mainboard_enclosure_type(void)
|
||||
{
|
||||
return SMBIOS_ENCLOSURE_MAIN_SERVER_CHASSIS;
|
||||
}
|
||||
|
||||
void acpi_fill_fadt(acpi_fadt_t *fadt)
|
||||
{
|
||||
}
|
||||
|
||||
unsigned long acpi_fill_madt(unsigned long current)
|
||||
{
|
||||
return current;
|
||||
}
|
||||
19
src/mainboard/emulation/qemu-riscv/dsdt.asl
Normal file
19
src/mainboard/emulation/qemu-riscv/dsdt.asl
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||
|
||||
/*
|
||||
* This DSDT source is meant to be empty since riscv qemu has its own
|
||||
* method to retrieve DSDT blob via fw_cfg.
|
||||
*/
|
||||
|
||||
#include <acpi/acpi.h>
|
||||
|
||||
DefinitionBlock(
|
||||
"dsdt.aml",
|
||||
"DSDT",
|
||||
ACPI_DSDT_REV_2,
|
||||
OEM_ID,
|
||||
ACPI_TABLE_CREATOR,
|
||||
0x20110725 // OEM revision
|
||||
)
|
||||
{
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue