Skip to content

Commit

Permalink
ACPICA: Remove PCI bits from ACPICA when CONFIG_PCI is unset
Browse files Browse the repository at this point in the history
Allow ACPI to be built without PCI support in place.

Signed-off-by: Sinan Kaya <[email protected]>
Signed-off-by: Rafael J. Wysocki <[email protected]>
  • Loading branch information
Sinan Kaya authored and rafaeljw committed Dec 20, 2018
1 parent 8668977 commit bd23fac
Show file tree
Hide file tree
Showing 6 changed files with 24 additions and 5 deletions.
2 changes: 1 addition & 1 deletion drivers/acpi/acpica/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -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 += \
Expand Down
9 changes: 9 additions & 0 deletions drivers/acpi/acpica/achware.h
Original file line number Diff line number Diff line change
Expand Up @@ -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__ */
8 changes: 4 additions & 4 deletions drivers/acpi/acpica/evhandler.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down
4 changes: 4 additions & 0 deletions drivers/acpi/acpica/exregion.c
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -387,6 +388,7 @@ acpi_ex_pci_config_space_handler(u32 function,

return_ACPI_STATUS(status);
}
#endif

/*******************************************************************************
*
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -451,6 +454,7 @@ acpi_ex_pci_bar_space_handler(u32 function,

return_ACPI_STATUS(status);
}
#endif

/*******************************************************************************
*
Expand Down
2 changes: 2 additions & 0 deletions drivers/acpi/osl.c
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down Expand Up @@ -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)
{
Expand Down
4 changes: 4 additions & 0 deletions include/acpi/platform/aclinux.h
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,10 @@

/* Kernel specific ACPICA configuration */

#ifdef CONFIG_PCI
#define ACPI_PCI_CONFIGURED
#endif

#ifdef CONFIG_ACPI_REDUCED_HARDWARE_ONLY
#define ACPI_REDUCED_HARDWARE 1
#endif
Expand Down

0 comments on commit bd23fac

Please sign in to comment.