blob: b359948fc02b87eae1f140453d617442bcdf02ae [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#
2# Makefile for the Linux kernel device drivers.
3#
4# 15 Sep 2000, Christoph Hellwig <hch@infradead.org>
5# Rewritten to use lists instead of if-statements.
6#
7
Simon Arlott89214f02012-09-12 19:57:26 -06008obj-y += irqchip/
Kishon Vijay Abraham I26a84b32012-08-22 14:10:02 +05309obj-y += bus/
Simon Arlott89214f02012-09-12 19:57:26 -060010
Linus Walleij2744e8a2011-05-02 20:50:54 +020011# GPIO must come after pinctrl as gpios may need to mux pins etc
12obj-y += pinctrl/
Michael Buesch7444a722008-07-25 01:46:11 -070013obj-y += gpio/
Sascha Hauer0c2498f2011-01-28 09:40:40 +010014obj-y += pwm/
Linus Torvalds6015d2c2005-12-03 20:50:51 -080015obj-$(CONFIG_PCI) += pci/
Linus Torvalds1da177e2005-04-16 15:20:36 -070016obj-$(CONFIG_PARISC) += parisc/
Matt Porter394b7012005-11-07 01:00:15 -080017obj-$(CONFIG_RAPIDIO) += rapidio/
Linus Torvalds1da177e2005-04-16 15:20:36 -070018obj-y += video/
Len Brown26717172010-03-08 14:07:30 -050019obj-y += idle/
Matthew Garrett061475b2012-10-16 15:53:38 -050020
21# IPMI must come before ACPI in order to provide IPMI opregion support
22obj-$(CONFIG_IPMI_HANDLER) += char/ipmi/
23
Len Brown888ba6c2005-08-24 12:07:20 -040024obj-$(CONFIG_ACPI) += acpi/
Feng Tang6ae69962009-08-14 15:13:46 -040025obj-$(CONFIG_SFI) += sfi/
Linus Torvalds1da177e2005-04-16 15:20:36 -070026# PnP must come after ACPI since it will eventually need to check if acpi
27# was used and do nothing if so
28obj-$(CONFIG_PNP) += pnp/
Hiroshi DOYU87d0bab2012-05-07 12:24:48 +020029obj-y += amba/
Linus Walleija0eb2212011-05-18 14:18:57 +020030# Many drivers will want to use DMA so this has to be made available
31# really early.
32obj-$(CONFIG_DMA_ENGINE) += dma/
Linus Torvalds1da177e2005-04-16 15:20:36 -070033
Stijn Tintele2dbe062010-05-07 14:28:34 +093034obj-$(CONFIG_VIRTIO) += virtio/
Jeremy Fitzhardingead9a8612007-07-17 18:37:06 -070035obj-$(CONFIG_XEN) += xen/
36
David Brownell9f4dab492008-12-01 21:50:13 -080037# regulators early, since some subsystems rely on them to initialize
38obj-$(CONFIG_REGULATOR) += regulator/
39
Greg Kroah-Hartmanab4382d2011-01-13 12:10:18 -080040# tty/ comes before char/ so that the VT console is the boot-time
Linus Torvalds1da177e2005-04-16 15:20:36 -070041# default.
Greg Kroah-Hartman96fd7ce2010-11-04 11:10:29 -070042obj-y += tty/
Linus Torvalds1da177e2005-04-16 15:20:36 -070043obj-y += char/
44
Dave Airliee6b51632008-07-21 08:42:36 +100045# gpu/ comes after char for AGP vs DRM startup
46obj-y += gpu/
47
Evgeniy Polyakov7672d0b2005-09-11 19:15:07 -070048obj-$(CONFIG_CONNECTOR) += connector/
49
Linus Torvalds1da177e2005-04-16 15:20:36 -070050# i810fb and intelfb depend on char/agp/
51obj-$(CONFIG_FB_I810) += video/i810/
52obj-$(CONFIG_FB_INTEL) += video/intelfb/
53
Linus Torvalds1da177e2005-04-16 15:20:36 -070054obj-$(CONFIG_PARPORT) += parport/
Matti J. Aaltonen03293262011-01-12 17:00:47 -080055obj-y += base/ block/ misc/ mfd/ nfc/
Linus Torvalds1da177e2005-04-16 15:20:36 -070056obj-$(CONFIG_NUBUS) += nubus/
Soeren Sonnenburg45941d02007-02-08 14:20:38 -080057obj-y += macintosh/
Linus Torvalds1da177e2005-04-16 15:20:36 -070058obj-$(CONFIG_IDE) += ide/
Linus Torvalds1da177e2005-04-16 15:20:36 -070059obj-$(CONFIG_SCSI) += scsi/
Jeff Garzikc6fd2802006-08-10 07:31:37 -040060obj-$(CONFIG_ATA) += ata/
Nicholas Bellingerc66ac9d2010-12-17 11:11:26 -080061obj-$(CONFIG_TARGET_CORE) += target/
Sudhakar Rajashekhara9289d4e2009-08-18 12:34:04 -040062obj-$(CONFIG_MTD) += mtd/
63obj-$(CONFIG_SPI) += spi/
Carlos Chineaa056ab82010-04-16 19:01:02 +030064obj-y += hsi/
Arjan van de Ven0c406262009-01-26 18:58:11 -080065obj-y += net/
66obj-$(CONFIG_ATM) += atm/
Linus Torvalds1da177e2005-04-16 15:20:36 -070067obj-$(CONFIG_FUSION) += message/
Stefan Richter8702d332010-09-15 13:02:44 +020068obj-y += firewire/
Hans J. Kochbeafc542006-12-07 10:58:29 +010069obj-$(CONFIG_UIO) += uio/
Alex Williamsoncba33452012-07-31 08:16:22 -060070obj-$(CONFIG_VFIO) += vfio/
Linus Torvalds1da177e2005-04-16 15:20:36 -070071obj-y += cdrom/
Miguel Ojeda Sandonis70e84042007-02-10 01:44:32 -080072obj-y += auxdisplay/
Linus Torvalds1da177e2005-04-16 15:20:36 -070073obj-$(CONFIG_PCCARD) += pcmcia/
74obj-$(CONFIG_DIO) += dio/
75obj-$(CONFIG_SBUS) += sbus/
76obj-$(CONFIG_ZORRO) += zorro/
77obj-$(CONFIG_MAC) += macintosh/
78obj-$(CONFIG_ATA_OVER_ETH) += block/aoe/
79obj-$(CONFIG_PARIDE) += block/paride/
80obj-$(CONFIG_TC) += tc/
David Vrabelae5d82c2008-10-24 16:46:22 +010081obj-$(CONFIG_UWB) += uwb/
Felipe Balbi4661ffc2011-04-07 10:59:34 +030082obj-$(CONFIG_USB_OTG_UTILS) += usb/
Linus Torvalds1da177e2005-04-16 15:20:36 -070083obj-$(CONFIG_USB) += usb/
Linus Torvalds6015d2c2005-12-03 20:50:51 -080084obj-$(CONFIG_PCI) += usb/
Felipe Balbi4661ffc2011-04-07 10:59:34 +030085obj-$(CONFIG_USB_GADGET) += usb/
Dmitry Torokhov51c38f92006-02-19 00:22:51 -050086obj-$(CONFIG_SERIO) += input/serio/
Linus Torvalds1da177e2005-04-16 15:20:36 -070087obj-$(CONFIG_GAMEPORT) += input/gameport/
88obj-$(CONFIG_INPUT) += input/
89obj-$(CONFIG_I2O) += message/
Alessandro Zummoc58411e2006-03-27 01:16:34 -080090obj-$(CONFIG_RTC_LIB) += rtc/
Guennadi Liakhovetskia3574822009-04-21 04:22:38 -030091obj-y += i2c/ media/
Rodolfo Giomettieae9d2b2009-06-17 16:28:37 -070092obj-$(CONFIG_PPS) += pps/
Richard Cochrand94ba802011-04-22 12:03:08 +020093obj-$(CONFIG_PTP_1588_CLOCK) += ptp/
Linus Torvalds1da177e2005-04-16 15:20:36 -070094obj-$(CONFIG_W1) += w1/
Anton Vorontsov4a11b592007-05-04 00:27:45 +040095obj-$(CONFIG_POWER_SUPPLY) += power/
Jean Delvaread2f9312005-07-02 18:15:49 +020096obj-$(CONFIG_HWMON) += hwmon/
Zhang Rui203d3d42008-01-17 15:51:08 +080097obj-$(CONFIG_THERMAL) += thermal/
Wim Van Sebroeckb7e04f82007-08-17 08:38:02 +000098obj-$(CONFIG_WATCHDOG) += watchdog/
Linus Torvalds1da177e2005-04-16 15:20:36 -070099obj-$(CONFIG_MD) += md/
100obj-$(CONFIG_BT) += bluetooth/
Samuel Thibaultf7511d52008-04-30 00:54:51 -0700101obj-$(CONFIG_ACCESSIBILITY) += accessibility/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700102obj-$(CONFIG_ISDN) += isdn/
Alan Coxda9bb1d2006-01-18 17:44:13 -0800103obj-$(CONFIG_EDAC) += edac/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700104obj-$(CONFIG_EISA) += eisa/
Glauber de Oliveira Costa7ea08092008-01-18 00:16:43 -0200105obj-y += lguest/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700106obj-$(CONFIG_CPU_FREQ) += cpufreq/
Len Brown4f86d3a2007-10-03 18:58:00 -0400107obj-$(CONFIG_CPU_IDLE) += cpuidle/
Adrian Hunter52c506f2011-12-27 15:48:43 +0200108obj-y += mmc/
Alex Dubovbaf85322008-02-09 10:20:54 -0800109obj-$(CONFIG_MEMSTICK) += memstick/
Uwe Kleine-König44406732011-05-24 17:13:29 -0700110obj-y += leds/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700111obj-$(CONFIG_INFINIBAND) += infiniband/
Jes Sorensen466575f2006-01-19 04:54:00 -0500112obj-$(CONFIG_SGI_SN) += sn/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700113obj-y += firmware/
114obj-$(CONFIG_CRYPTO) += crypto/
Paul Mundte87eaad2005-11-07 00:58:19 -0800115obj-$(CONFIG_SUPERH) += sh/
Magnus Damm13d605d2010-02-05 11:15:15 +0000116obj-$(CONFIG_ARCH_SHMOBILE) += sh/
John Stultz592913e2010-07-13 17:56:20 -0700117ifndef CONFIG_ARCH_USES_GETTIMEOFFSET
118obj-y += clocksource/
119endif
Shannon Nelson75896702007-10-16 01:27:41 -0700120obj-$(CONFIG_DCA) += dca/
Jiri Kosina63f38612006-12-08 18:41:30 +0100121obj-$(CONFIG_HID) += hid/
Geert Uytterhoeveneb30c722006-11-27 19:18:56 +0100122obj-$(CONFIG_PPC_PS3) += ps3/
Stephen Rothwell97e873e2007-05-01 16:26:07 +1000123obj-$(CONFIG_OF) += of/
Michael Buesch61e115a2007-09-18 15:12:50 -0400124obj-$(CONFIG_SSB) += ssb/
Rafał Miłecki8369ae32011-05-09 18:56:46 +0200125obj-$(CONFIG_BCMA) += bcma/
Michael S. Tsirkin3a4d5c94e2010-01-14 06:17:27 +0000126obj-$(CONFIG_VHOST_NET) += vhost/
Florian Fainelli55e331c2009-06-16 15:33:53 -0700127obj-$(CONFIG_VLYNQ) += vlynq/
Greg Kroah-Hartman35045582008-09-24 14:46:44 -0700128obj-$(CONFIG_STAGING) += staging/
Len Brown41b16dc2008-12-01 00:09:47 -0500129obj-y += platform/
Jean-Christop PLAGNIOL-VILLARD6d803ba2010-11-17 10:04:33 +0100130#common clk code
131obj-y += clk/
Ohad Ben-Cohenbd9a4c72011-02-17 09:52:03 -0800132
Rob Herring30058672013-01-28 16:13:14 +0000133obj-$(CONFIG_MAILBOX) += mailbox/
Ohad Ben-Cohenbd9a4c72011-02-17 09:52:03 -0800134obj-$(CONFIG_HWSPINLOCK) += hwspinlock/
Lauro Ramos Venancio3e256b82011-07-01 19:31:33 -0300135obj-$(CONFIG_NFC) += nfc/
Joerg Roedel6b385b42011-07-07 12:18:48 +0200136obj-$(CONFIG_IOMMU_SUPPORT) += iommu/
Ohad Ben-Cohen400e64d2011-10-20 16:52:46 +0200137obj-$(CONFIG_REMOTEPROC) += remoteproc/
Ohad Ben-Cohenbcabbcc2011-10-20 21:10:55 +0200138obj-$(CONFIG_RPMSG) += rpmsg/
Timur Tabi6db71992011-06-09 15:52:06 -0500139
140# Virtualization drivers
141obj-$(CONFIG_VIRT_DRIVERS) += virt/
Greg Kroah-Hartman46a97192011-10-04 12:29:52 -0700142obj-$(CONFIG_HYPERV) += hv/
MyungJoo Hama3c98b82011-10-02 00:19:15 +0200143
144obj-$(CONFIG_PM_DEVFREQ) += devfreq/
MyungJoo Hamde55d872012-04-20 14:16:22 +0900145obj-$(CONFIG_EXTCON) += extcon/
Aneesh V7ec94452012-04-27 17:54:05 +0530146obj-$(CONFIG_MEMORY) += memory/
Jonathan Camerona980e042012-04-25 15:54:59 +0100147obj-$(CONFIG_IIO) += iio/
Greg Kroah-Hartmandb3b9e92012-04-26 12:34:58 -0700148obj-$(CONFIG_VME_BUS) += vme/
Greg Kroah-Hartman05e50272012-11-16 08:14:18 -0800149obj-$(CONFIG_IPACK_BUS) += ipack/
Jon Masonfce8a7b2012-11-16 19:27:12 -0700150obj-$(CONFIG_NTB) += ntb/