Re: [PATCH] ACPICA: PCI: Undefined ACPI_ADR_SPACE_PCI_CONFIG when CONFIG_PCI is unset

From: Ruidong Tian
Date: Mon Feb 06 2023 - 01:52:51 EST


This patch depends on kernel-specific ACPICA configuration, can I submit it to ACPICA

projects?

On 2023/2/2 17:31, Rafael J. Wysocki wrote:
On Thu, Feb 2, 2023 at 4:48 AM Ruidong Tian
<tianruidong@xxxxxxxxxxxxxxxxx> wrote:
ACPI core subsystem initialization will fail when Kernel disabled PCI but
ACPI tables still have PCI config address spaces.

Enable ACPI_ADR_SPACE_PCI_CONFIG in acpi_gbl_default_address_spaces
only when ACPI_PCI_CONFIGURED is defined.

Signed-off-by: Ruidong Tian <tianruidong@xxxxxxxxxxxxxxxxx>
As an ACPICA change, this should first be submitted (as a pull
request) to the upstream ACPICA project on GitHub.

Having done that, please resubmit the patch with a Link tag pointing
to the corresponding upstream pull request.

Thanks!

---
drivers/acpi/acpica/evhandler.c | 2 ++
include/acpi/acconfig.h | 4 ++++
2 files changed, 6 insertions(+)

diff --git a/drivers/acpi/acpica/evhandler.c b/drivers/acpi/acpica/evhandler.c
index be9a05498adc..86057e39df8c 100644
--- a/drivers/acpi/acpica/evhandler.c
+++ b/drivers/acpi/acpica/evhandler.c
@@ -26,7 +26,9 @@ acpi_ev_install_handler(acpi_handle obj_handle,
u8 acpi_gbl_default_address_spaces[ACPI_NUM_DEFAULT_SPACES] = {
ACPI_ADR_SPACE_SYSTEM_MEMORY,
ACPI_ADR_SPACE_SYSTEM_IO,
+#ifdef ACPI_PCI_CONFIGURED
ACPI_ADR_SPACE_PCI_CONFIG,
+#endif
ACPI_ADR_SPACE_DATA_TABLE
};

diff --git a/include/acpi/acconfig.h b/include/acpi/acconfig.h
index 151e40385673..28456120529f 100644
--- a/include/acpi/acconfig.h
+++ b/include/acpi/acconfig.h
@@ -162,7 +162,11 @@
/* Maximum space_ids for Operation Regions */

#define ACPI_MAX_ADDRESS_SPACE 255
+#ifdef ACPI_PCI_CONFIGURED
#define ACPI_NUM_DEFAULT_SPACES 4
+#else
+#define ACPI_NUM_DEFAULT_SPACES 3
+#endif

/* Array sizes. Used for range checking also */

--
2.33.1