1# SPDX-License-Identifier: GPL-2.0
2#
3# Makefile for the Linux ACPI interpreter
4#
5
6ccflags-$(CONFIG_ACPI_DEBUG)	+= -DACPI_DEBUG_OUTPUT
7
8#
9# ACPI Boot-Time Table Parsing
10#
11obj-$(CONFIG_ACPI)		+= tables.o
12obj-$(CONFIG_X86)		+= blacklist.o
13
14#
15# ACPI Core Subsystem (Interpreter)
16#
17obj-$(CONFIG_ACPI)		+= acpi.o \
18					acpica/
19
20# All the builtin files are in the "acpi." module_param namespace.
21acpi-y				+= osi.o osl.o utils.o reboot.o
22acpi-y				+= nvs.o
23
24# Power management related files
25acpi-y				+= wakeup.o
26acpi-$(CONFIG_ACPI_SYSTEM_POWER_STATES_SUPPORT) += sleep.o
27acpi-y				+= device_sysfs.o device_pm.o
28acpi-$(CONFIG_ACPI_SLEEP)	+= proc.o
29
30
31#
32# ACPI Bus and Device Drivers
33#
34acpi-y				+= bus.o glue.o
35acpi-y				+= scan.o
36acpi-y				+= resource.o
37acpi-y				+= acpi_processor.o
38acpi-y				+= processor_core.o
39acpi-$(CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC) += processor_pdc.o
40acpi-y				+= ec.o
41acpi-$(CONFIG_ACPI_DOCK)	+= dock.o
42acpi-$(CONFIG_PCI)		+= pci_root.o pci_link.o pci_irq.o
43obj-$(CONFIG_ACPI_MCFG)		+= pci_mcfg.o
44acpi-$(CONFIG_PCI)		+= acpi_lpss.o
45acpi-y				+= acpi_apd.o
46acpi-y				+= acpi_platform.o
47acpi-y				+= acpi_pnp.o
48acpi-$(CONFIG_ARM_AMBA)	+= acpi_amba.o
49acpi-y				+= power.o
50acpi-y				+= event.o
51acpi-y				+= evged.o
52acpi-y				+= sysfs.o
53acpi-y				+= property.o
54acpi-$(CONFIG_X86)		+= acpi_cmos_rtc.o
55acpi-$(CONFIG_X86)		+= x86/apple.o
56acpi-$(CONFIG_X86)		+= x86/utils.o
57acpi-$(CONFIG_X86)		+= x86/s2idle.o
58acpi-$(CONFIG_DEBUG_FS)		+= debugfs.o
59acpi-y				+= acpi_lpat.o
60acpi-$(CONFIG_ACPI_FPDT)	+= acpi_fpdt.o
61acpi-$(CONFIG_ACPI_LPIT)	+= acpi_lpit.o
62acpi-$(CONFIG_ACPI_GENERIC_GSI) += irq.o
63acpi-$(CONFIG_ACPI_WATCHDOG)	+= acpi_watchdog.o
64
65# Address translation
66acpi-$(CONFIG_ACPI_ADXL)	+= acpi_adxl.o
67
68# These are (potentially) separate modules
69
70# IPMI may be used by other drivers, so it has to initialise before them
71obj-$(CONFIG_ACPI_IPMI)		+= acpi_ipmi.o
72
73obj-$(CONFIG_ACPI_AC) 		+= ac.o
74obj-$(CONFIG_ACPI_BUTTON)	+= button.o
75obj-$(CONFIG_ACPI_TINY_POWER_BUTTON)	+= tiny-power-button.o
76obj-$(CONFIG_ACPI_FAN)		+= fan.o
77obj-$(CONFIG_ACPI_VIDEO)	+= video.o
78obj-$(CONFIG_ACPI_TAD)		+= acpi_tad.o
79obj-$(CONFIG_ACPI_PCI_SLOT)	+= pci_slot.o
80obj-$(CONFIG_ACPI_PROCESSOR)	+= processor.o
81obj-$(CONFIG_ACPI)		+= container.o
82obj-$(CONFIG_ACPI_THERMAL)	+= thermal.o
83obj-$(CONFIG_ACPI_PLATFORM_PROFILE) 	+= platform_profile.o
84obj-$(CONFIG_ACPI_NFIT)		+= nfit/
85obj-$(CONFIG_ACPI_NUMA)		+= numa/
86obj-$(CONFIG_ACPI)		+= acpi_memhotplug.o
87obj-$(CONFIG_ACPI_HOTPLUG_IOAPIC) += ioapic.o
88obj-$(CONFIG_ACPI_BATTERY)	+= battery.o
89obj-$(CONFIG_ACPI_SBS)		+= sbshc.o
90obj-$(CONFIG_ACPI_SBS)		+= sbs.o
91obj-$(CONFIG_ACPI_HED)		+= hed.o
92obj-$(CONFIG_ACPI_EC_DEBUGFS)	+= ec_sys.o
93obj-$(CONFIG_ACPI_CUSTOM_METHOD)+= custom_method.o
94obj-$(CONFIG_ACPI_BGRT)		+= bgrt.o
95obj-$(CONFIG_ACPI_CPPC_LIB)	+= cppc_acpi.o
96obj-$(CONFIG_ACPI_SPCR_TABLE)	+= spcr.o
97obj-$(CONFIG_ACPI_DEBUGGER_USER) += acpi_dbg.o
98obj-$(CONFIG_ACPI_PPTT) 	+= pptt.o
99
100# processor has its own "processor." module_param namespace
101processor-y			:= processor_driver.o
102processor-$(CONFIG_ACPI_PROCESSOR_IDLE) += processor_idle.o
103processor-$(CONFIG_ACPI_CPU_FREQ_PSS)	+= processor_throttling.o	\
104	processor_thermal.o
105processor-$(CONFIG_CPU_FREQ)	+= processor_perflib.o
106
107obj-$(CONFIG_ACPI_PROCESSOR_AGGREGATOR) += acpi_pad.o
108
109obj-$(CONFIG_ACPI_APEI)		+= apei/
110
111obj-$(CONFIG_ACPI_EXTLOG)	+= acpi_extlog.o
112
113obj-$(CONFIG_ACPI_CONFIGFS)	+= acpi_configfs.o
114
115obj-y				+= pmic/
116
117video-objs			+= acpi_video.o video_detect.o
118obj-y				+= dptf/
119
120obj-$(CONFIG_ARM64)		+= arm64/
121