mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	PCI/ACPI: Allow ACPI to be built without CONFIG_PCI set
We are compiling PCI code today for systems with ACPI and no PCI device present. Remove the useless code and reduce the tight dependency. Signed-off-by: Sinan Kaya <okaya@kernel.org> Acked-by: Bjorn Helgaas <bhelgaas@google.com> # PCI parts Acked-by: Ingo Molnar <mingo@kernel.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
		
							parent
							
								
									bd23fac3ea
								
							
						
					
					
						commit
						5d32a66541
					
				
					 8 changed files with 32 additions and 3 deletions
				
			
		| 
						 | 
					@ -121,7 +121,14 @@ extern void __init dmi_check_pciprobe(void);
 | 
				
			||||||
extern void __init dmi_check_skip_isa_align(void);
 | 
					extern void __init dmi_check_skip_isa_align(void);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* some common used subsys_initcalls */
 | 
					/* some common used subsys_initcalls */
 | 
				
			||||||
 | 
					#ifdef CONFIG_PCI
 | 
				
			||||||
extern int __init pci_acpi_init(void);
 | 
					extern int __init pci_acpi_init(void);
 | 
				
			||||||
 | 
					#else
 | 
				
			||||||
 | 
					static inline int  __init pci_acpi_init(void)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						return -EINVAL;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
extern void __init pcibios_irq_init(void);
 | 
					extern void __init pcibios_irq_init(void);
 | 
				
			||||||
extern int __init pcibios_init(void);
 | 
					extern int __init pcibios_init(void);
 | 
				
			||||||
extern int pci_legacy_init(void);
 | 
					extern int pci_legacy_init(void);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -9,7 +9,6 @@ config ARCH_SUPPORTS_ACPI
 | 
				
			||||||
menuconfig ACPI
 | 
					menuconfig ACPI
 | 
				
			||||||
	bool "ACPI (Advanced Configuration and Power Interface) Support"
 | 
						bool "ACPI (Advanced Configuration and Power Interface) Support"
 | 
				
			||||||
	depends on ARCH_SUPPORTS_ACPI
 | 
						depends on ARCH_SUPPORTS_ACPI
 | 
				
			||||||
	depends on PCI
 | 
					 | 
				
			||||||
	select PNP
 | 
						select PNP
 | 
				
			||||||
	default y if X86
 | 
						default y if X86
 | 
				
			||||||
	help
 | 
						help
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -39,7 +39,7 @@ acpi-y				+= processor_core.o
 | 
				
			||||||
acpi-$(CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC) += processor_pdc.o
 | 
					acpi-$(CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC) += processor_pdc.o
 | 
				
			||||||
acpi-y				+= ec.o
 | 
					acpi-y				+= ec.o
 | 
				
			||||||
acpi-$(CONFIG_ACPI_DOCK)	+= dock.o
 | 
					acpi-$(CONFIG_ACPI_DOCK)	+= dock.o
 | 
				
			||||||
acpi-y				+= pci_root.o pci_link.o pci_irq.o
 | 
					acpi-$(CONFIG_PCI)		+= pci_root.o pci_link.o pci_irq.o
 | 
				
			||||||
obj-$(CONFIG_ACPI_MCFG)		+= pci_mcfg.o
 | 
					obj-$(CONFIG_ACPI_MCFG)		+= pci_mcfg.o
 | 
				
			||||||
acpi-y				+= acpi_lpss.o acpi_apd.o
 | 
					acpi-y				+= acpi_lpss.o acpi_apd.o
 | 
				
			||||||
acpi-y				+= acpi_platform.o
 | 
					acpi-y				+= acpi_platform.o
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -25,8 +25,13 @@ int acpi_osi_init(void);
 | 
				
			||||||
acpi_status acpi_os_initialize1(void);
 | 
					acpi_status acpi_os_initialize1(void);
 | 
				
			||||||
void init_acpi_device_notify(void);
 | 
					void init_acpi_device_notify(void);
 | 
				
			||||||
int acpi_scan_init(void);
 | 
					int acpi_scan_init(void);
 | 
				
			||||||
 | 
					#ifdef CONFIG_PCI
 | 
				
			||||||
void acpi_pci_root_init(void);
 | 
					void acpi_pci_root_init(void);
 | 
				
			||||||
void acpi_pci_link_init(void);
 | 
					void acpi_pci_link_init(void);
 | 
				
			||||||
 | 
					#else
 | 
				
			||||||
 | 
					static inline void acpi_pci_root_init(void) {}
 | 
				
			||||||
 | 
					static inline void acpi_pci_link_init(void) {}
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
void acpi_processor_init(void);
 | 
					void acpi_processor_init(void);
 | 
				
			||||||
void acpi_platform_init(void);
 | 
					void acpi_platform_init(void);
 | 
				
			||||||
void acpi_pnp_init(void);
 | 
					void acpi_pnp_init(void);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -11,6 +11,7 @@ ifdef CONFIG_PCI
 | 
				
			||||||
obj-$(CONFIG_PROC_FS)		+= proc.o
 | 
					obj-$(CONFIG_PROC_FS)		+= proc.o
 | 
				
			||||||
obj-$(CONFIG_SYSFS)		+= slot.o
 | 
					obj-$(CONFIG_SYSFS)		+= slot.o
 | 
				
			||||||
obj-$(CONFIG_OF)		+= of.o
 | 
					obj-$(CONFIG_OF)		+= of.o
 | 
				
			||||||
 | 
					obj-$(CONFIG_ACPI)		+= pci-acpi.o
 | 
				
			||||||
endif
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
obj-$(CONFIG_PCI_QUIRKS)	+= quirks.o
 | 
					obj-$(CONFIG_PCI_QUIRKS)	+= quirks.o
 | 
				
			||||||
| 
						 | 
					@ -20,7 +21,6 @@ obj-$(CONFIG_PCI_MSI)		+= msi.o
 | 
				
			||||||
obj-$(CONFIG_PCI_ATS)		+= ats.o
 | 
					obj-$(CONFIG_PCI_ATS)		+= ats.o
 | 
				
			||||||
obj-$(CONFIG_PCI_IOV)		+= iov.o
 | 
					obj-$(CONFIG_PCI_IOV)		+= iov.o
 | 
				
			||||||
obj-$(CONFIG_PCI_BRIDGE_EMUL)	+= pci-bridge-emul.o
 | 
					obj-$(CONFIG_PCI_BRIDGE_EMUL)	+= pci-bridge-emul.o
 | 
				
			||||||
obj-$(CONFIG_ACPI)		+= pci-acpi.o
 | 
					 | 
				
			||||||
obj-$(CONFIG_PCI_LABEL)		+= pci-label.o
 | 
					obj-$(CONFIG_PCI_LABEL)		+= pci-label.o
 | 
				
			||||||
obj-$(CONFIG_X86_INTEL_MID)	+= pci-mid.o
 | 
					obj-$(CONFIG_X86_INTEL_MID)	+= pci-mid.o
 | 
				
			||||||
obj-$(CONFIG_PCI_SYSCALL)	+= syscall.o
 | 
					obj-$(CONFIG_PCI_SYSCALL)	+= syscall.o
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -88,7 +88,14 @@ int acpi_pci_link_free_irq(acpi_handle handle);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
struct pci_bus;
 | 
					struct pci_bus;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#ifdef CONFIG_PCI
 | 
				
			||||||
struct pci_dev *acpi_get_pci_dev(acpi_handle);
 | 
					struct pci_dev *acpi_get_pci_dev(acpi_handle);
 | 
				
			||||||
 | 
					#else
 | 
				
			||||||
 | 
					static inline struct pci_dev *acpi_get_pci_dev(acpi_handle handle)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						return NULL;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Arch-defined function to add a bus to the system */
 | 
					/* Arch-defined function to add a bus to the system */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -340,7 +340,14 @@ struct pci_dev;
 | 
				
			||||||
int acpi_pci_irq_enable (struct pci_dev *dev);
 | 
					int acpi_pci_irq_enable (struct pci_dev *dev);
 | 
				
			||||||
void acpi_penalize_isa_irq(int irq, int active);
 | 
					void acpi_penalize_isa_irq(int irq, int active);
 | 
				
			||||||
bool acpi_isa_irq_available(int irq);
 | 
					bool acpi_isa_irq_available(int irq);
 | 
				
			||||||
 | 
					#ifdef CONFIG_PCI
 | 
				
			||||||
void acpi_penalize_sci_irq(int irq, int trigger, int polarity);
 | 
					void acpi_penalize_sci_irq(int irq, int trigger, int polarity);
 | 
				
			||||||
 | 
					#else
 | 
				
			||||||
 | 
					static inline void acpi_penalize_sci_irq(int irq, int trigger,
 | 
				
			||||||
 | 
										int polarity)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
void acpi_pci_irq_disable (struct pci_dev *dev);
 | 
					void acpi_pci_irq_disable (struct pci_dev *dev);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
extern int ec_read(u8 addr, u8 *val);
 | 
					extern int ec_read(u8 addr, u8 *val);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1960,7 +1960,11 @@ int pcibios_set_pcie_reset_state(struct pci_dev *dev,
 | 
				
			||||||
				 enum pcie_reset_state state);
 | 
									 enum pcie_reset_state state);
 | 
				
			||||||
int pcibios_add_device(struct pci_dev *dev);
 | 
					int pcibios_add_device(struct pci_dev *dev);
 | 
				
			||||||
void pcibios_release_device(struct pci_dev *dev);
 | 
					void pcibios_release_device(struct pci_dev *dev);
 | 
				
			||||||
 | 
					#ifdef CONFIG_PCI
 | 
				
			||||||
void pcibios_penalize_isa_irq(int irq, int active);
 | 
					void pcibios_penalize_isa_irq(int irq, int active);
 | 
				
			||||||
 | 
					#else
 | 
				
			||||||
 | 
					static inline void pcibios_penalize_isa_irq(int irq, int active) {}
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
int pcibios_alloc_irq(struct pci_dev *dev);
 | 
					int pcibios_alloc_irq(struct pci_dev *dev);
 | 
				
			||||||
void pcibios_free_irq(struct pci_dev *dev);
 | 
					void pcibios_free_irq(struct pci_dev *dev);
 | 
				
			||||||
resource_size_t pcibios_default_alignment(void);
 | 
					resource_size_t pcibios_default_alignment(void);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue