On Fri, Mar 03, 2023 at 07:06:33PM +0530, Sunil V L wrote: > Enable ACPI core for RISC-V after adding architecture-specific > interfaces and header files required to build the ACPI core. > > 1) Couple of header files are required unconditionally by the ACPI > core. Add empty acenv.h and cpu.h header files. > > 2) If CONFIG_PCI is enabled, a few PCI related interfaces need to > be provided by the architecture. Define dummy interfaces for now > so that build succeeds. Actual implementation will be added when > PCI support is added for ACPI along with external interrupt > controller support. > > 3) A few globals and memory mapping related functions specific > to the architecture need to be provided. > > Signed-off-by: Sunil V L <sunilvl@xxxxxxxxxxxxxxxx> > Acked-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx> > Reviewed-by: Andrew Jones <ajones@xxxxxxxxxxxxxxxx> > --- > arch/riscv/Kconfig | 5 +++ > arch/riscv/include/asm/acenv.h | 11 +++++ > arch/riscv/include/asm/acpi.h | 61 ++++++++++++++++++++++++++ > arch/riscv/include/asm/cpu.h | 8 ++++ > arch/riscv/kernel/Makefile | 2 + > arch/riscv/kernel/acpi.c | 80 ++++++++++++++++++++++++++++++++++ > 6 files changed, 167 insertions(+) > create mode 100644 arch/riscv/include/asm/acenv.h > create mode 100644 arch/riscv/include/asm/acpi.h > create mode 100644 arch/riscv/include/asm/cpu.h > create mode 100644 arch/riscv/kernel/acpi.c > > diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig > index 71754eb32ee6..f3108c7e19d8 100644 > --- a/arch/riscv/Kconfig > +++ b/arch/riscv/Kconfig > @@ -12,6 +12,8 @@ config 32BIT > > config RISCV > def_bool y > + select ACPI_GENERIC_GSI if ACPI > + select ACPI_REDUCED_HARDWARE_ONLY if ACPI > select ARCH_ENABLE_HUGEPAGE_MIGRATION if HUGETLB_PAGE && MIGRATION > select ARCH_ENABLE_SPLIT_PMD_PTLOCK if PGTABLE_LEVELS > 2 > select ARCH_ENABLE_THP_MIGRATION if TRANSPARENT_HUGEPAGE > @@ -617,6 +619,7 @@ config EFI > depends on OF && !XIP_KERNEL > depends on MMU > default y > + select ARCH_SUPPORTS_ACPI if 64BIT > select EFI_GENERIC_STUB > select EFI_PARAMS_FROM_FDT > select EFI_RUNTIME_WRAPPERS > @@ -720,3 +723,5 @@ source "drivers/cpufreq/Kconfig" > endmenu # "CPU Power Management" > > source "arch/riscv/kvm/Kconfig" > + > +source "drivers/acpi/Kconfig" The above Kconfig hunks don't apply on the IPI improvement base. The second hunk also looks weird with the select under the default. Thanks, drew