a3b02a9c65
Add a new minimalistic subsystem that handles multiplexer controllers. When multiplexers are used in various places in the kernel, and the same multiplexer controller can be used for several independent things, there should be one place to implement support for said multiplexer controller. A single multiplexer controller can also be used to control several parallel multiplexers, that are in turn used by different subsystems in the kernel, leading to a need to coordinate multiplexer accesses. The multiplexer subsystem handles this coordination. Thanks go out to Lars-Peter Clausen, Jonathan Cameron, Rob Herring, Wolfram Sang, Paul Gortmaker, Dan Carpenter, Colin Ian King, Greg Kroah-Hartman and last but certainly not least to Philipp Zabel for helpful comments, reviews, patches and general encouragement! Reviewed-by: Jonathan Cameron <jic23@kernel.org> Signed-off-by: Peter Rosin <peda@axentia.se> Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de> Tested-by: Philipp Zabel <p.zabel@pengutronix.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
185 lines
5.1 KiB
Makefile
185 lines
5.1 KiB
Makefile
#
|
|
# Makefile for the Linux kernel device drivers.
|
|
#
|
|
# 15 Sep 2000, Christoph Hellwig <hch@infradead.org>
|
|
# Rewritten to use lists instead of if-statements.
|
|
#
|
|
|
|
obj-y += irqchip/
|
|
obj-y += bus/
|
|
|
|
obj-$(CONFIG_GENERIC_PHY) += phy/
|
|
|
|
# GPIO must come after pinctrl as gpios may need to mux pins etc
|
|
obj-$(CONFIG_PINCTRL) += pinctrl/
|
|
obj-$(CONFIG_GPIOLIB) += gpio/
|
|
obj-y += pwm/
|
|
|
|
obj-$(CONFIG_PCI) += pci/
|
|
obj-$(CONFIG_PCI_ENDPOINT) += pci/endpoint/
|
|
# PCI dwc controller drivers
|
|
obj-y += pci/dwc/
|
|
|
|
obj-$(CONFIG_PARISC) += parisc/
|
|
obj-$(CONFIG_RAPIDIO) += rapidio/
|
|
obj-y += video/
|
|
obj-y += idle/
|
|
|
|
# IPMI must come before ACPI in order to provide IPMI opregion support
|
|
obj-y += char/ipmi/
|
|
|
|
obj-$(CONFIG_ACPI) += acpi/
|
|
obj-$(CONFIG_SFI) += sfi/
|
|
# PnP must come after ACPI since it will eventually need to check if acpi
|
|
# was used and do nothing if so
|
|
obj-$(CONFIG_PNP) += pnp/
|
|
obj-y += amba/
|
|
|
|
obj-y += clk/
|
|
# Many drivers will want to use DMA so this has to be made available
|
|
# really early.
|
|
obj-$(CONFIG_DMADEVICES) += dma/
|
|
|
|
# SOC specific infrastructure drivers.
|
|
obj-y += soc/
|
|
|
|
obj-$(CONFIG_VIRTIO) += virtio/
|
|
obj-$(CONFIG_XEN) += xen/
|
|
|
|
# regulators early, since some subsystems rely on them to initialize
|
|
obj-$(CONFIG_REGULATOR) += regulator/
|
|
|
|
# reset controllers early, since gpu drivers might rely on them to initialize
|
|
obj-$(CONFIG_RESET_CONTROLLER) += reset/
|
|
|
|
# tty/ comes before char/ so that the VT console is the boot-time
|
|
# default.
|
|
obj-y += tty/
|
|
obj-y += char/
|
|
|
|
# iommu/ comes before gpu as gpu are using iommu controllers
|
|
obj-$(CONFIG_IOMMU_SUPPORT) += iommu/
|
|
|
|
# gpu/ comes after char for AGP vs DRM startup and after iommu
|
|
obj-y += gpu/
|
|
|
|
obj-$(CONFIG_CONNECTOR) += connector/
|
|
|
|
# i810fb and intelfb depend on char/agp/
|
|
obj-$(CONFIG_FB_I810) += video/fbdev/i810/
|
|
obj-$(CONFIG_FB_INTEL) += video/fbdev/intelfb/
|
|
|
|
obj-$(CONFIG_PARPORT) += parport/
|
|
obj-$(CONFIG_NVM) += lightnvm/
|
|
obj-y += base/ block/ misc/ mfd/ nfc/
|
|
obj-$(CONFIG_LIBNVDIMM) += nvdimm/
|
|
obj-$(CONFIG_DAX) += dax/
|
|
obj-$(CONFIG_DMA_SHARED_BUFFER) += dma-buf/
|
|
obj-$(CONFIG_NUBUS) += nubus/
|
|
obj-y += macintosh/
|
|
obj-$(CONFIG_IDE) += ide/
|
|
obj-$(CONFIG_SCSI) += scsi/
|
|
obj-y += nvme/
|
|
obj-$(CONFIG_ATA) += ata/
|
|
obj-$(CONFIG_TARGET_CORE) += target/
|
|
obj-$(CONFIG_MTD) += mtd/
|
|
obj-$(CONFIG_SPI) += spi/
|
|
obj-$(CONFIG_SPMI) += spmi/
|
|
obj-$(CONFIG_HSI) += hsi/
|
|
obj-y += net/
|
|
obj-$(CONFIG_ATM) += atm/
|
|
obj-$(CONFIG_FUSION) += message/
|
|
obj-y += firewire/
|
|
obj-$(CONFIG_UIO) += uio/
|
|
obj-$(CONFIG_VFIO) += vfio/
|
|
obj-y += cdrom/
|
|
obj-y += auxdisplay/
|
|
obj-$(CONFIG_PCCARD) += pcmcia/
|
|
obj-$(CONFIG_DIO) += dio/
|
|
obj-$(CONFIG_SBUS) += sbus/
|
|
obj-$(CONFIG_ZORRO) += zorro/
|
|
obj-$(CONFIG_ATA_OVER_ETH) += block/aoe/
|
|
obj-$(CONFIG_PARIDE) += block/paride/
|
|
obj-$(CONFIG_TC) += tc/
|
|
obj-$(CONFIG_UWB) += uwb/
|
|
obj-$(CONFIG_USB_PHY) += usb/
|
|
obj-$(CONFIG_USB) += usb/
|
|
obj-$(CONFIG_PCI) += usb/
|
|
obj-$(CONFIG_USB_GADGET) += usb/
|
|
obj-$(CONFIG_OF) += usb/
|
|
obj-$(CONFIG_SERIO) += input/serio/
|
|
obj-$(CONFIG_GAMEPORT) += input/gameport/
|
|
obj-$(CONFIG_INPUT) += input/
|
|
obj-$(CONFIG_RTC_LIB) += rtc/
|
|
obj-y += i2c/ media/
|
|
obj-$(CONFIG_PPS) += pps/
|
|
obj-y += ptp/
|
|
obj-$(CONFIG_W1) += w1/
|
|
obj-y += power/
|
|
obj-$(CONFIG_HWMON) += hwmon/
|
|
obj-$(CONFIG_THERMAL) += thermal/
|
|
obj-$(CONFIG_WATCHDOG) += watchdog/
|
|
obj-$(CONFIG_MD) += md/
|
|
obj-$(CONFIG_BT) += bluetooth/
|
|
obj-$(CONFIG_ACCESSIBILITY) += accessibility/
|
|
obj-$(CONFIG_ISDN) += isdn/
|
|
obj-$(CONFIG_EDAC) += edac/
|
|
obj-$(CONFIG_EISA) += eisa/
|
|
obj-y += lguest/
|
|
obj-$(CONFIG_CPU_FREQ) += cpufreq/
|
|
obj-$(CONFIG_CPU_IDLE) += cpuidle/
|
|
obj-y += mmc/
|
|
obj-$(CONFIG_MEMSTICK) += memstick/
|
|
obj-$(CONFIG_NEW_LEDS) += leds/
|
|
obj-$(CONFIG_INFINIBAND) += infiniband/
|
|
obj-$(CONFIG_SGI_SN) += sn/
|
|
obj-y += firmware/
|
|
obj-$(CONFIG_CRYPTO) += crypto/
|
|
obj-$(CONFIG_SUPERH) += sh/
|
|
ifndef CONFIG_ARCH_USES_GETTIMEOFFSET
|
|
obj-y += clocksource/
|
|
endif
|
|
obj-$(CONFIG_DCA) += dca/
|
|
obj-$(CONFIG_HID) += hid/
|
|
obj-$(CONFIG_PPC_PS3) += ps3/
|
|
obj-$(CONFIG_OF) += of/
|
|
obj-$(CONFIG_SSB) += ssb/
|
|
obj-$(CONFIG_BCMA) += bcma/
|
|
obj-$(CONFIG_VHOST_RING) += vhost/
|
|
obj-$(CONFIG_VHOST) += vhost/
|
|
obj-$(CONFIG_VLYNQ) += vlynq/
|
|
obj-$(CONFIG_STAGING) += staging/
|
|
obj-y += platform/
|
|
|
|
obj-$(CONFIG_MAILBOX) += mailbox/
|
|
obj-$(CONFIG_HWSPINLOCK) += hwspinlock/
|
|
obj-$(CONFIG_REMOTEPROC) += remoteproc/
|
|
obj-$(CONFIG_RPMSG) += rpmsg/
|
|
|
|
# Virtualization drivers
|
|
obj-$(CONFIG_VIRT_DRIVERS) += virt/
|
|
obj-$(CONFIG_HYPERV) += hv/
|
|
|
|
obj-$(CONFIG_PM_DEVFREQ) += devfreq/
|
|
obj-$(CONFIG_EXTCON) += extcon/
|
|
obj-$(CONFIG_MEMORY) += memory/
|
|
obj-$(CONFIG_IIO) += iio/
|
|
obj-$(CONFIG_VME_BUS) += vme/
|
|
obj-$(CONFIG_IPACK_BUS) += ipack/
|
|
obj-$(CONFIG_NTB) += ntb/
|
|
obj-$(CONFIG_FMC) += fmc/
|
|
obj-$(CONFIG_POWERCAP) += powercap/
|
|
obj-$(CONFIG_MCB) += mcb/
|
|
obj-$(CONFIG_PERF_EVENTS) += perf/
|
|
obj-$(CONFIG_RAS) += ras/
|
|
obj-$(CONFIG_THUNDERBOLT) += thunderbolt/
|
|
obj-$(CONFIG_CORESIGHT) += hwtracing/coresight/
|
|
obj-y += hwtracing/intel_th/
|
|
obj-$(CONFIG_STM) += hwtracing/stm/
|
|
obj-$(CONFIG_ANDROID) += android/
|
|
obj-$(CONFIG_NVMEM) += nvmem/
|
|
obj-$(CONFIG_FPGA) += fpga/
|
|
obj-$(CONFIG_FSI) += fsi/
|
|
obj-$(CONFIG_TEE) += tee/
|
|
obj-$(CONFIG_MULTIPLEXER) += mux/
|