ACPICA: Remove PCI bits from ACPICA when CONFIG_PCI is unset
authorSinan Kaya <okaya@kernel.org>
Wed, 19 Dec 2018 22:46:55 +0000 (22:46 +0000)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Thu, 20 Dec 2018 09:19:49 +0000 (10:19 +0100)
Allow ACPI to be built without PCI support in place.

Signed-off-by: Sinan Kaya <okaya@kernel.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/acpi/acpica/Makefile
drivers/acpi/acpica/achware.h
drivers/acpi/acpica/evhandler.c
drivers/acpi/acpica/exregion.c
drivers/acpi/osl.c
include/acpi/platform/aclinux.h

index b14621da5413ce71518d567e6705287dac918127..59700433a96e51599adf6306068b03bcb3dceec7 100644 (file)
@@ -77,13 +77,13 @@ acpi-y +=           \
        hwacpi.o        \
        hwesleep.o      \
        hwgpe.o         \
-       hwpci.o         \
        hwregs.o        \
        hwsleep.o       \
        hwvalid.o       \
        hwxface.o       \
        hwxfsleep.o
 
+acpi-$(CONFIG_PCI) += hwpci.o
 acpi-$(ACPI_FUTURE_USAGE) += hwtimer.o
 
 acpi-y +=              \
index 43ce67a9da1fc19d08f4366c244ab3105369fd3f..ef99e2fc37f89011a14f38c25c8ad157d8caf849 100644 (file)
@@ -106,11 +106,20 @@ acpi_hw_enable_runtime_gpe_block(struct acpi_gpe_xrupt_info *gpe_xrupt_info,
                                 struct acpi_gpe_block_info *gpe_block,
                                 void *context);
 
+#ifdef ACPI_PCI_CONFIGURED
 /*
  * hwpci - PCI configuration support
  */
 acpi_status
 acpi_hw_derive_pci_id(struct acpi_pci_id *pci_id,
                      acpi_handle root_pci_device, acpi_handle pci_region);
+#else
+static inline acpi_status
+acpi_hw_derive_pci_id(struct acpi_pci_id *pci_id, acpi_handle root_pci_device,
+                     acpi_handle pci_region)
+{
+       return AE_SUPPORT;
+}
+#endif
 
 #endif                         /* __ACHWARE_H__ */
index d319ee33d0401e9f28259be046957b5c40fc2d6a..4ed1e67db6be8d3a4c36c9d91597905ce292d209 100644 (file)
@@ -364,25 +364,25 @@ acpi_ev_install_space_handler(struct acpi_namespace_node *node,
                        handler = acpi_ex_system_io_space_handler;
                        setup = acpi_ev_io_space_region_setup;
                        break;
-
+#ifdef ACPI_PCI_CONFIGURED
                case ACPI_ADR_SPACE_PCI_CONFIG:
 
                        handler = acpi_ex_pci_config_space_handler;
                        setup = acpi_ev_pci_config_region_setup;
                        break;
-
+#endif
                case ACPI_ADR_SPACE_CMOS:
 
                        handler = acpi_ex_cmos_space_handler;
                        setup = acpi_ev_cmos_region_setup;
                        break;
-
+#ifdef ACPI_PCI_CONFIGURED
                case ACPI_ADR_SPACE_PCI_BAR_TARGET:
 
                        handler = acpi_ex_pci_bar_space_handler;
                        setup = acpi_ev_pci_bar_region_setup;
                        break;
-
+#endif
                case ACPI_ADR_SPACE_DATA_TABLE:
 
                        handler = acpi_ex_data_table_space_handler;
index 97bbfd07fcf759c86e033f3d2d83b6cb8b334a3b..2c58f5e00b1a18ad6c6a354fe77d559159d41264 100644 (file)
@@ -311,6 +311,7 @@ acpi_ex_system_io_space_handler(u32 function,
        return_ACPI_STATUS(status);
 }
 
+#ifdef ACPI_PCI_CONFIGURED
 /*******************************************************************************
  *
  * FUNCTION:    acpi_ex_pci_config_space_handler
@@ -387,6 +388,7 @@ acpi_ex_pci_config_space_handler(u32 function,
 
        return_ACPI_STATUS(status);
 }
+#endif
 
 /*******************************************************************************
  *
@@ -420,6 +422,7 @@ acpi_ex_cmos_space_handler(u32 function,
        return_ACPI_STATUS(status);
 }
 
+#ifdef ACPI_PCI_CONFIGURED
 /*******************************************************************************
  *
  * FUNCTION:    acpi_ex_pci_bar_space_handler
@@ -451,6 +454,7 @@ acpi_ex_pci_bar_space_handler(u32 function,
 
        return_ACPI_STATUS(status);
 }
+#endif
 
 /*******************************************************************************
  *
index b48874b8e1ea05e75cf34976b4b669ffb0b3f204..f29e427d0d1d5cc8065f0ba0a6ce025814bd6350 100644 (file)
@@ -769,6 +769,7 @@ acpi_os_write_memory(acpi_physical_address phys_addr, u64 value, u32 width)
        return AE_OK;
 }
 
+#ifdef CONFIG_PCI
 acpi_status
 acpi_os_read_pci_configuration(struct acpi_pci_id * pci_id, u32 reg,
                               u64 *value, u32 width)
@@ -827,6 +828,7 @@ acpi_os_write_pci_configuration(struct acpi_pci_id * pci_id, u32 reg,
 
        return (result ? AE_ERROR : AE_OK);
 }
+#endif
 
 static void acpi_os_execute_deferred(struct work_struct *work)
 {
index 7451b3bca83a842bf9d632f1f4cd0898882daafe..e3d21d014fcc62ce1afbc0d76cc7400c6445daab 100644 (file)
 
 /* Kernel specific ACPICA configuration */
 
+#ifdef CONFIG_PCI
+#define ACPI_PCI_CONFIGURED
+#endif
+
 #ifdef CONFIG_ACPI_REDUCED_HARDWARE_ONLY
 #define ACPI_REDUCED_HARDWARE 1
 #endif