f02cbbe657
This change enables PCI root complex support for TILEPro. Unlike TILE-Gx, TILEPro has no support for memory-mapped I/O, so the PCI support consists of hypervisor upcalls for PIO, DMA, etc. However, the performance is fine for the devices we have tested with so far (1Gb Ethernet, SATA, etc.). The <asm/io.h> header was tweaked to be a little bit more aggressive about disabling attempts to map/unmap IO port space. The hacky <asm/pci-bridge.h> header was rolled into the <asm/pci.h> header and the result was simplified. Both of the latter two headers were preliminary versions not meant for release before now - oh well. There is one quirk for our TILEmpower platform, which accidentally negotiates up to 5GT and needs to be kicked down to 2.5GT. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
71 lines
1.7 KiB
Makefile
71 lines
1.7 KiB
Makefile
#
|
|
# Makefile for the PCI bus specific drivers.
|
|
#
|
|
|
|
obj-y += access.o bus.o probe.o remove.o pci.o \
|
|
pci-driver.o search.o pci-sysfs.o rom.o setup-res.o \
|
|
irq.o vpd.o
|
|
obj-$(CONFIG_PROC_FS) += proc.o
|
|
obj-$(CONFIG_SYSFS) += slot.o
|
|
|
|
obj-$(CONFIG_PCI_QUIRKS) += quirks.o
|
|
|
|
# Build PCI Express stuff if needed
|
|
obj-$(CONFIG_PCIEPORTBUS) += pcie/
|
|
|
|
obj-$(CONFIG_PCI_IOAPIC) += ioapic.o
|
|
|
|
obj-$(CONFIG_HOTPLUG) += hotplug.o
|
|
|
|
# Build the PCI Hotplug drivers if we were asked to
|
|
obj-$(CONFIG_HOTPLUG_PCI) += hotplug/
|
|
ifdef CONFIG_HOTPLUG_PCI
|
|
obj-y += hotplug-pci.o
|
|
endif
|
|
|
|
# Build the PCI MSI interrupt support
|
|
obj-$(CONFIG_PCI_MSI) += msi.o
|
|
|
|
# Build the Hypertransport interrupt support
|
|
obj-$(CONFIG_HT_IRQ) += htirq.o
|
|
|
|
# Build Intel IOMMU support
|
|
obj-$(CONFIG_DMAR) += dmar.o iova.o intel-iommu.o
|
|
|
|
obj-$(CONFIG_INTR_REMAP) += dmar.o intr_remapping.o
|
|
|
|
obj-$(CONFIG_PCI_IOV) += iov.o
|
|
|
|
#
|
|
# Some architectures use the generic PCI setup functions
|
|
#
|
|
obj-$(CONFIG_X86) += setup-bus.o
|
|
obj-$(CONFIG_ALPHA) += setup-bus.o setup-irq.o
|
|
obj-$(CONFIG_ARM) += setup-bus.o setup-irq.o
|
|
obj-$(CONFIG_PARISC) += setup-bus.o
|
|
obj-$(CONFIG_SUPERH) += setup-bus.o setup-irq.o
|
|
obj-$(CONFIG_PPC) += setup-bus.o
|
|
obj-$(CONFIG_MIPS) += setup-bus.o setup-irq.o
|
|
obj-$(CONFIG_X86_VISWS) += setup-irq.o
|
|
obj-$(CONFIG_MN10300) += setup-bus.o
|
|
obj-$(CONFIG_MICROBLAZE) += setup-bus.o
|
|
obj-$(CONFIG_TILE) += setup-bus.o setup-irq.o
|
|
|
|
#
|
|
# ACPI Related PCI FW Functions
|
|
#
|
|
obj-$(CONFIG_ACPI) += pci-acpi.o
|
|
|
|
# SMBIOS provided firmware instance and labels
|
|
obj-$(CONFIG_DMI) += pci-label.o
|
|
|
|
# Cardbus & CompactPCI use setup-bus
|
|
obj-$(CONFIG_HOTPLUG) += setup-bus.o
|
|
|
|
obj-$(CONFIG_PCI_SYSCALL) += syscall.o
|
|
|
|
obj-$(CONFIG_PCI_STUB) += pci-stub.o
|
|
|
|
obj-$(CONFIG_XEN_PCIDEV_FRONTEND) += xen-pcifront.o
|
|
|
|
ccflags-$(CONFIG_PCI_DEBUG) := -DDEBUG
|