blob: 1f05f0e6440a1d09c7640940f3f1b2b37798b417
1 | # |
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 | |
8 | obj-y += irqchip/ |
9 | obj-y += bus/ |
10 | |
11 | obj-$(CONFIG_GENERIC_PHY) += phy/ |
12 | |
13 | # GPIO must come after pinctrl as gpios may need to mux pins etc |
14 | obj-$(CONFIG_PINCTRL) += pinctrl/ |
15 | obj-$(CONFIG_GPIOLIB) += gpio/ |
16 | obj-y += pwm/ |
17 | obj-$(CONFIG_PCI) += pci/ |
18 | obj-$(CONFIG_PARISC) += parisc/ |
19 | obj-$(CONFIG_RAPIDIO) += rapidio/ |
20 | obj-y += video/ |
21 | obj-y += idle/ |
22 | |
23 | # IPMI must come before ACPI in order to provide IPMI opregion support |
24 | obj-y += char/ipmi/ |
25 | |
26 | obj-$(CONFIG_ACPI) += acpi/ |
27 | obj-$(CONFIG_SFI) += sfi/ |
28 | # PnP must come after ACPI since it will eventually need to check if acpi |
29 | # was used and do nothing if so |
30 | obj-$(CONFIG_PNP) += pnp/ |
31 | obj-y += amba/ |
32 | |
33 | obj-y += clk/ |
34 | # Many drivers will want to use DMA so this has to be made available |
35 | # really early. |
36 | obj-$(CONFIG_DMADEVICES) += dma/ |
37 | |
38 | # SOC specific infrastructure drivers. |
39 | obj-y += soc/ |
40 | |
41 | obj-$(CONFIG_VIRTIO) += virtio/ |
42 | obj-$(CONFIG_XEN) += xen/ |
43 | |
44 | # regulators early, since some subsystems rely on them to initialize |
45 | obj-$(CONFIG_REGULATOR) += regulator/ |
46 | |
47 | # reset controllers early, since gpu drivers might rely on them to initialize |
48 | obj-$(CONFIG_RESET_CONTROLLER) += reset/ |
49 | |
50 | # tty/ comes before char/ so that the VT console is the boot-time |
51 | # default. |
52 | obj-y += tty/ |
53 | obj-y += char/ |
54 | |
55 | # iommu/ comes before gpu as gpu are using iommu controllers |
56 | obj-$(CONFIG_IOMMU_SUPPORT) += iommu/ |
57 | |
58 | # gpu/ comes after char for AGP vs DRM startup and after iommu |
59 | obj-y += gpu/ |
60 | |
61 | obj-$(CONFIG_CONNECTOR) += connector/ |
62 | |
63 | # i810fb and intelfb depend on char/agp/ |
64 | obj-$(CONFIG_FB_I810) += video/fbdev/i810/ |
65 | obj-$(CONFIG_FB_INTEL) += video/fbdev/intelfb/ |
66 | |
67 | obj-$(CONFIG_PARPORT) += parport/ |
68 | obj-$(CONFIG_NVM) += lightnvm/ |
69 | obj-y += base/ block/ misc/ mfd/ nfc/ |
70 | obj-$(CONFIG_LIBNVDIMM) += nvdimm/ |
71 | obj-$(CONFIG_DEV_DAX) += dax/ |
72 | obj-$(CONFIG_DMA_SHARED_BUFFER) += dma-buf/ |
73 | obj-$(CONFIG_NUBUS) += nubus/ |
74 | obj-y += macintosh/ |
75 | obj-$(CONFIG_IDE) += ide/ |
76 | obj-$(CONFIG_SCSI) += scsi/ |
77 | obj-y += nvme/ |
78 | obj-$(CONFIG_ATA) += ata/ |
79 | obj-$(CONFIG_TARGET_CORE) += target/ |
80 | obj-$(CONFIG_MTD) += mtd/ |
81 | obj-$(CONFIG_SPI) += spi/ |
82 | obj-$(CONFIG_SPMI) += spmi/ |
83 | obj-$(CONFIG_HSI) += hsi/ |
84 | obj-y += net/ |
85 | obj-$(CONFIG_ATM) += atm/ |
86 | obj-$(CONFIG_FUSION) += message/ |
87 | obj-y += firewire/ |
88 | obj-$(CONFIG_UIO) += uio/ |
89 | obj-$(CONFIG_VFIO) += vfio/ |
90 | obj-y += cdrom/ |
91 | obj-y += auxdisplay/ |
92 | obj-$(CONFIG_PCCARD) += pcmcia/ |
93 | obj-$(CONFIG_DIO) += dio/ |
94 | obj-$(CONFIG_SBUS) += sbus/ |
95 | obj-$(CONFIG_ZORRO) += zorro/ |
96 | obj-$(CONFIG_ATA_OVER_ETH) += block/aoe/ |
97 | obj-$(CONFIG_PARIDE) += block/paride/ |
98 | obj-$(CONFIG_TC) += tc/ |
99 | obj-$(CONFIG_UWB) += uwb/ |
100 | obj-$(CONFIG_USB_PHY) += usb/ |
101 | obj-$(CONFIG_USB) += usb/ |
102 | obj-$(CONFIG_USB_SUPPORT) += usb/ |
103 | obj-$(CONFIG_PCI) += usb/ |
104 | obj-$(CONFIG_USB_GADGET) += usb/ |
105 | obj-$(CONFIG_OF) += usb/ |
106 | obj-$(CONFIG_SERIO) += input/serio/ |
107 | obj-$(CONFIG_GAMEPORT) += input/gameport/ |
108 | obj-$(CONFIG_INPUT) += input/ |
109 | obj-$(CONFIG_RTC_LIB) += rtc/ |
110 | obj-y += i2c/ media/ |
111 | obj-$(CONFIG_PPS) += pps/ |
112 | obj-$(CONFIG_PTP_1588_CLOCK) += ptp/ |
113 | obj-$(CONFIG_W1) += w1/ |
114 | obj-y += power/ |
115 | obj-$(CONFIG_HWMON) += hwmon/ |
116 | obj-$(CONFIG_THERMAL) += thermal/ |
117 | obj-$(CONFIG_WATCHDOG) += watchdog/ |
118 | obj-$(CONFIG_MD) += md/ |
119 | obj-$(CONFIG_BT) += bluetooth/ |
120 | obj-$(CONFIG_ACCESSIBILITY) += accessibility/ |
121 | obj-$(CONFIG_ISDN) += isdn/ |
122 | obj-$(CONFIG_EDAC) += edac/ |
123 | obj-$(CONFIG_EISA) += eisa/ |
124 | obj-y += lguest/ |
125 | obj-$(CONFIG_CPU_FREQ) += cpufreq/ |
126 | obj-$(CONFIG_CPU_IDLE) += cpuidle/ |
127 | obj-y += mmc/ |
128 | obj-$(CONFIG_MEMSTICK) += memstick/ |
129 | obj-$(CONFIG_NEW_LEDS) += leds/ |
130 | obj-$(CONFIG_INFINIBAND) += infiniband/ |
131 | obj-$(CONFIG_SGI_SN) += sn/ |
132 | obj-y += firmware/ |
133 | obj-$(CONFIG_CRYPTO) += crypto/ |
134 | obj-$(CONFIG_SUPERH) += sh/ |
135 | ifndef CONFIG_ARCH_USES_GETTIMEOFFSET |
136 | obj-y += clocksource/ |
137 | endif |
138 | obj-$(CONFIG_DCA) += dca/ |
139 | obj-$(CONFIG_HID) += hid/ |
140 | obj-$(CONFIG_PPC_PS3) += ps3/ |
141 | obj-$(CONFIG_OF) += of/ |
142 | obj-$(CONFIG_SSB) += ssb/ |
143 | obj-$(CONFIG_BCMA) += bcma/ |
144 | obj-$(CONFIG_VHOST_RING) += vhost/ |
145 | obj-$(CONFIG_VHOST) += vhost/ |
146 | obj-$(CONFIG_VLYNQ) += vlynq/ |
147 | obj-$(CONFIG_STAGING) += staging/ |
148 | obj-y += platform/ |
149 | |
150 | obj-$(CONFIG_MAILBOX) += mailbox/ |
151 | obj-$(CONFIG_HWSPINLOCK) += hwspinlock/ |
152 | obj-$(CONFIG_REMOTEPROC) += remoteproc/ |
153 | obj-$(CONFIG_RPMSG) += rpmsg/ |
154 | |
155 | # Virtualization drivers |
156 | obj-$(CONFIG_VIRT_DRIVERS) += virt/ |
157 | obj-$(CONFIG_HYPERV) += hv/ |
158 | |
159 | obj-$(CONFIG_PM_DEVFREQ) += devfreq/ |
160 | obj-$(CONFIG_EXTCON) += extcon/ |
161 | obj-$(CONFIG_MEMORY) += memory/ |
162 | obj-$(CONFIG_IIO) += iio/ |
163 | obj-$(CONFIG_VME_BUS) += vme/ |
164 | obj-$(CONFIG_IPACK_BUS) += ipack/ |
165 | obj-$(CONFIG_NTB) += ntb/ |
166 | obj-$(CONFIG_FMC) += fmc/ |
167 | obj-$(CONFIG_POWERCAP) += powercap/ |
168 | obj-$(CONFIG_MCB) += mcb/ |
169 | obj-$(CONFIG_PERF_EVENTS) += perf/ |
170 | obj-$(CONFIG_RAS) += ras/ |
171 | obj-$(CONFIG_THUNDERBOLT) += thunderbolt/ |
172 | obj-$(CONFIG_CORESIGHT) += hwtracing/coresight/ |
173 | obj-y += hwtracing/intel_th/ |
174 | obj-$(CONFIG_STM) += hwtracing/stm/ |
175 | obj-$(CONFIG_ANDROID) += android/ |
176 | obj-$(CONFIG_NVMEM) += nvmem/ |
177 | obj-$(CONFIG_FPGA) += fpga/ |
178 | obj-$(CONFIG_TEE) += tee/ |
179 | obj-$(CONFIG_AMLOGIC_DRIVER) += amlogic/ |
180 |