13d0407baSopenharmony_ci# SPDX-License-Identifier: GPL-2.0
23d0407baSopenharmony_ci#
33d0407baSopenharmony_ci# Makefile for the Linux kernel device drivers.
43d0407baSopenharmony_ci#
53d0407baSopenharmony_ci# 15 Sep 2000, Christoph Hellwig <hch@infradead.org>
63d0407baSopenharmony_ci# Rewritten to use lists instead of if-statements.
73d0407baSopenharmony_ci#
83d0407baSopenharmony_ci
93d0407baSopenharmony_ciobj-y				+= irqchip/
103d0407baSopenharmony_ciobj-y				+= bus/
113d0407baSopenharmony_ci
123d0407baSopenharmony_ciobj-$(CONFIG_GENERIC_PHY)	+= phy/
133d0407baSopenharmony_ci
143d0407baSopenharmony_ci# GPIO must come after pinctrl as gpios may need to mux pins etc
153d0407baSopenharmony_ciobj-$(CONFIG_PINCTRL)		+= pinctrl/
163d0407baSopenharmony_ciobj-$(CONFIG_GPIOLIB)		+= gpio/
173d0407baSopenharmony_ciobj-y				+= pwm/
183d0407baSopenharmony_ci
193d0407baSopenharmony_ciobj-y				+= pci/
203d0407baSopenharmony_ci
213d0407baSopenharmony_ciobj-$(CONFIG_PARISC)		+= parisc/
223d0407baSopenharmony_ciobj-$(CONFIG_RAPIDIO)		+= rapidio/
233d0407baSopenharmony_ciobj-y				+= video/
243d0407baSopenharmony_ciobj-y				+= idle/
253d0407baSopenharmony_ci
263d0407baSopenharmony_ci# IPMI must come before ACPI in order to provide IPMI opregion support
273d0407baSopenharmony_ciobj-y				+= char/ipmi/
283d0407baSopenharmony_ci
293d0407baSopenharmony_ciobj-$(CONFIG_ACPI)		+= acpi/
303d0407baSopenharmony_ciobj-$(CONFIG_SFI)		+= sfi/
313d0407baSopenharmony_ci# PnP must come after ACPI since it will eventually need to check if acpi
323d0407baSopenharmony_ci# was used and do nothing if so
333d0407baSopenharmony_ciobj-$(CONFIG_PNP)		+= pnp/
343d0407baSopenharmony_ciobj-y				+= amba/
353d0407baSopenharmony_ci
363d0407baSopenharmony_ciobj-y				+= clk/
373d0407baSopenharmony_ci# Many drivers will want to use DMA so this has to be made available
383d0407baSopenharmony_ci# really early.
393d0407baSopenharmony_ciobj-$(CONFIG_DMADEVICES)	+= dma/
403d0407baSopenharmony_ci
413d0407baSopenharmony_ci# SOC specific infrastructure drivers.
423d0407baSopenharmony_ciobj-y				+= soc/
433d0407baSopenharmony_ci
443d0407baSopenharmony_ciobj-$(CONFIG_VIRTIO)		+= virtio/
453d0407baSopenharmony_ciobj-$(CONFIG_VDPA)		+= vdpa/
463d0407baSopenharmony_ciobj-$(CONFIG_XEN)		+= xen/
473d0407baSopenharmony_ci
483d0407baSopenharmony_ci# regulators early, since some subsystems rely on them to initialize
493d0407baSopenharmony_ciobj-$(CONFIG_REGULATOR)		+= regulator/
503d0407baSopenharmony_ci
513d0407baSopenharmony_ci# reset controllers early, since gpu drivers might rely on them to initialize
523d0407baSopenharmony_ciobj-$(CONFIG_RESET_CONTROLLER)	+= reset/
533d0407baSopenharmony_ci
543d0407baSopenharmony_ci# tty/ comes before char/ so that the VT console is the boot-time
553d0407baSopenharmony_ci# default.
563d0407baSopenharmony_ciobj-y				+= tty/
573d0407baSopenharmony_ciobj-y				+= char/
583d0407baSopenharmony_ci
593d0407baSopenharmony_ci# iommu/ comes before gpu as gpu are using iommu controllers
603d0407baSopenharmony_ciobj-y				+= iommu/
613d0407baSopenharmony_ci
623d0407baSopenharmony_ci# gpu/ comes after char for AGP vs DRM startup and after iommu
633d0407baSopenharmony_ciobj-y				+= gpu/
643d0407baSopenharmony_ci
653d0407baSopenharmony_ciobj-$(CONFIG_CONNECTOR)		+= connector/
663d0407baSopenharmony_ci
673d0407baSopenharmony_ci# i810fb and intelfb depend on char/agp/
683d0407baSopenharmony_ciobj-$(CONFIG_FB_I810)           += video/fbdev/i810/
693d0407baSopenharmony_ciobj-$(CONFIG_FB_INTEL)          += video/fbdev/intelfb/
703d0407baSopenharmony_ci
713d0407baSopenharmony_ci# Hyperhold driver
723d0407baSopenharmony_ciobj-$(CONFIG_HYPERHOLD)		+= hyperhold/
733d0407baSopenharmony_ci
743d0407baSopenharmony_ciobj-$(CONFIG_PARPORT)		+= parport/
753d0407baSopenharmony_ciobj-$(CONFIG_NVM)		+= lightnvm/
763d0407baSopenharmony_ciobj-y				+= base/ block/ misc/ mfd/ nfc/
773d0407baSopenharmony_ciobj-$(CONFIG_LIBNVDIMM)		+= nvdimm/
783d0407baSopenharmony_ciobj-$(CONFIG_DAX)		+= dax/
793d0407baSopenharmony_ciobj-$(CONFIG_DMA_SHARED_BUFFER) += dma-buf/
803d0407baSopenharmony_ciobj-$(CONFIG_NUBUS)		+= nubus/
813d0407baSopenharmony_ciobj-y				+= macintosh/
823d0407baSopenharmony_ciobj-$(CONFIG_IDE)		+= ide/
833d0407baSopenharmony_ciobj-y				+= scsi/
843d0407baSopenharmony_ciobj-y				+= nvme/
853d0407baSopenharmony_ciobj-$(CONFIG_ATA)		+= ata/
863d0407baSopenharmony_ciobj-$(CONFIG_TARGET_CORE)	+= target/
873d0407baSopenharmony_ciobj-$(CONFIG_MTD)		+= mtd/
883d0407baSopenharmony_ciobj-$(CONFIG_SPI)		+= spi/
893d0407baSopenharmony_ciobj-$(CONFIG_SPMI)		+= spmi/
903d0407baSopenharmony_ciobj-$(CONFIG_HSI)		+= hsi/
913d0407baSopenharmony_ciobj-$(CONFIG_SLIMBUS)		+= slimbus/
923d0407baSopenharmony_ciobj-y				+= net/
933d0407baSopenharmony_ciobj-$(CONFIG_ATM)		+= atm/
943d0407baSopenharmony_ciobj-$(CONFIG_FUSION)		+= message/
953d0407baSopenharmony_ciobj-y				+= firewire/
963d0407baSopenharmony_ciobj-$(CONFIG_UIO)		+= uio/
973d0407baSopenharmony_ciobj-$(CONFIG_VFIO)		+= vfio/
983d0407baSopenharmony_ciobj-y				+= cdrom/
993d0407baSopenharmony_ciobj-y				+= auxdisplay/
1003d0407baSopenharmony_ciobj-$(CONFIG_PCCARD)		+= pcmcia/
1013d0407baSopenharmony_ciobj-$(CONFIG_DIO)		+= dio/
1023d0407baSopenharmony_ciobj-$(CONFIG_SBUS)		+= sbus/
1033d0407baSopenharmony_ciobj-$(CONFIG_ZORRO)		+= zorro/
1043d0407baSopenharmony_ciobj-$(CONFIG_ATA_OVER_ETH)	+= block/aoe/
1053d0407baSopenharmony_ciobj-$(CONFIG_PARIDE) 		+= block/paride/
1063d0407baSopenharmony_ciobj-$(CONFIG_TC)		+= tc/
1073d0407baSopenharmony_ciobj-$(CONFIG_USB_PHY)		+= usb/
1083d0407baSopenharmony_ciobj-$(CONFIG_USB)		+= usb/
1093d0407baSopenharmony_ciobj-$(CONFIG_USB_SUPPORT)	+= usb/
1103d0407baSopenharmony_ciobj-$(CONFIG_PCI)		+= usb/
1113d0407baSopenharmony_ciobj-$(CONFIG_USB_GADGET)	+= usb/
1123d0407baSopenharmony_ciobj-$(CONFIG_OF)		+= usb/
1133d0407baSopenharmony_ciobj-$(CONFIG_SERIO)		+= input/serio/
1143d0407baSopenharmony_ciobj-$(CONFIG_GAMEPORT)		+= input/gameport/
1153d0407baSopenharmony_ciobj-$(CONFIG_INPUT)		+= input/
1163d0407baSopenharmony_ciobj-$(CONFIG_RTC_LIB)		+= rtc/
1173d0407baSopenharmony_ciobj-y				+= i2c/ i3c/ media/
1183d0407baSopenharmony_ciobj-$(CONFIG_PPS)		+= pps/
1193d0407baSopenharmony_ciobj-y				+= ptp/
1203d0407baSopenharmony_ciobj-$(CONFIG_W1)		+= w1/
1213d0407baSopenharmony_ciobj-y				+= power/
1223d0407baSopenharmony_ciobj-$(CONFIG_HWMON)		+= hwmon/
1233d0407baSopenharmony_ciobj-$(CONFIG_THERMAL)		+= thermal/
1243d0407baSopenharmony_ciobj-$(CONFIG_WATCHDOG)		+= watchdog/
1253d0407baSopenharmony_ciobj-$(CONFIG_MD)		+= md/
1263d0407baSopenharmony_ciobj-$(CONFIG_BT)		+= bluetooth/
1273d0407baSopenharmony_ciobj-$(CONFIG_ACCESSIBILITY)	+= accessibility/
1283d0407baSopenharmony_ciobj-$(CONFIG_ISDN)		+= isdn/
1293d0407baSopenharmony_ciobj-$(CONFIG_EDAC)		+= edac/
1303d0407baSopenharmony_ciobj-$(CONFIG_EISA)		+= eisa/
1313d0407baSopenharmony_ciobj-$(CONFIG_PM_OPP)		+= opp/
1323d0407baSopenharmony_ciobj-$(CONFIG_CPU_FREQ)		+= cpufreq/
1333d0407baSopenharmony_ciobj-$(CONFIG_CPU_IDLE)		+= cpuidle/
1343d0407baSopenharmony_ciobj-y				+= mmc/
1353d0407baSopenharmony_ciobj-$(CONFIG_MEMSTICK)		+= memstick/
1363d0407baSopenharmony_ciobj-$(CONFIG_NEW_LEDS)		+= leds/
1373d0407baSopenharmony_ciobj-$(CONFIG_INFINIBAND)	+= infiniband/
1383d0407baSopenharmony_ciobj-y				+= firmware/
1393d0407baSopenharmony_ciobj-$(CONFIG_CRYPTO)		+= crypto/
1403d0407baSopenharmony_ciobj-$(CONFIG_SUPERH)		+= sh/
1413d0407baSopenharmony_ciifndef CONFIG_ARCH_USES_GETTIMEOFFSET
1423d0407baSopenharmony_ciobj-y				+= clocksource/
1433d0407baSopenharmony_ciendif
1443d0407baSopenharmony_ciobj-$(CONFIG_DCA)		+= dca/
1453d0407baSopenharmony_ciobj-$(CONFIG_HID)		+= hid/
1463d0407baSopenharmony_ciobj-$(CONFIG_PPC_PS3)		+= ps3/
1473d0407baSopenharmony_ciobj-$(CONFIG_OF)		+= of/
1483d0407baSopenharmony_ciobj-$(CONFIG_SSB)		+= ssb/
1493d0407baSopenharmony_ciobj-$(CONFIG_BCMA)		+= bcma/
1503d0407baSopenharmony_ciobj-$(CONFIG_VHOST_RING)	+= vhost/
1513d0407baSopenharmony_ciobj-$(CONFIG_VHOST_IOTLB)	+= vhost/
1523d0407baSopenharmony_ciobj-$(CONFIG_VHOST)		+= vhost/
1533d0407baSopenharmony_ciobj-$(CONFIG_VLYNQ)		+= vlynq/
1543d0407baSopenharmony_ciobj-$(CONFIG_GREYBUS)		+= greybus/
1553d0407baSopenharmony_ciobj-$(CONFIG_STAGING)		+= staging/
1563d0407baSopenharmony_ciobj-y				+= platform/
1573d0407baSopenharmony_ci
1583d0407baSopenharmony_ciobj-$(CONFIG_MAILBOX)		+= mailbox/
1593d0407baSopenharmony_ciobj-$(CONFIG_HWSPINLOCK)	+= hwspinlock/
1603d0407baSopenharmony_ciobj-$(CONFIG_REMOTEPROC)	+= remoteproc/
1613d0407baSopenharmony_ciobj-$(CONFIG_RPMSG)		+= rpmsg/
1623d0407baSopenharmony_ciobj-$(CONFIG_SOUNDWIRE)		+= soundwire/
1633d0407baSopenharmony_ci
1643d0407baSopenharmony_ci# Virtualization drivers
1653d0407baSopenharmony_ciobj-$(CONFIG_VIRT_DRIVERS)	+= virt/
1663d0407baSopenharmony_ciobj-$(CONFIG_HYPERV)		+= hv/
1673d0407baSopenharmony_ci
1683d0407baSopenharmony_ciobj-$(CONFIG_PM_DEVFREQ)	+= devfreq/
1693d0407baSopenharmony_ciobj-$(CONFIG_EXTCON)		+= extcon/
1703d0407baSopenharmony_ciobj-$(CONFIG_MEMORY)		+= memory/
1713d0407baSopenharmony_ciobj-$(CONFIG_IIO)		+= iio/
1723d0407baSopenharmony_ciobj-$(CONFIG_VME_BUS)		+= vme/
1733d0407baSopenharmony_ciobj-$(CONFIG_IPACK_BUS)		+= ipack/
1743d0407baSopenharmony_ciobj-$(CONFIG_NTB)		+= ntb/
1753d0407baSopenharmony_ciobj-$(CONFIG_POWERCAP)		+= powercap/
1763d0407baSopenharmony_ciobj-$(CONFIG_MCB)		+= mcb/
1773d0407baSopenharmony_ciobj-$(CONFIG_PERF_EVENTS)	+= perf/
1783d0407baSopenharmony_ciobj-$(CONFIG_RAS)		+= ras/
1793d0407baSopenharmony_ciobj-$(CONFIG_USB4)		+= thunderbolt/
1803d0407baSopenharmony_ciobj-$(CONFIG_CORESIGHT)		+= hwtracing/coresight/
1813d0407baSopenharmony_ciobj-y				+= hwtracing/intel_th/
1823d0407baSopenharmony_ciobj-$(CONFIG_STM)		+= hwtracing/stm/
1833d0407baSopenharmony_ciobj-$(CONFIG_ANDROID)		+= android/
1843d0407baSopenharmony_ciobj-$(CONFIG_VENDOR_HOOKS)	+= hooks/
1853d0407baSopenharmony_ciobj-$(CONFIG_NVMEM)		+= nvmem/
1863d0407baSopenharmony_ciobj-$(CONFIG_FPGA)		+= fpga/
1873d0407baSopenharmony_ciobj-$(CONFIG_FSI)		+= fsi/
1883d0407baSopenharmony_ciobj-$(CONFIG_TEE)		+= tee/
1893d0407baSopenharmony_ciobj-$(CONFIG_MULTIPLEXER)	+= mux/
1903d0407baSopenharmony_ciobj-$(CONFIG_UNISYS_VISORBUS)	+= visorbus/
1913d0407baSopenharmony_ciobj-$(CONFIG_SIOX)		+= siox/
1923d0407baSopenharmony_ciobj-$(CONFIG_GNSS)		+= gnss/
1933d0407baSopenharmony_ciobj-$(CONFIG_INTERCONNECT)	+= interconnect/
1943d0407baSopenharmony_ciobj-$(CONFIG_COUNTER)		+= counter/
1953d0407baSopenharmony_ciobj-$(CONFIG_DRIVERS_HDF)	+= hdf/
1963d0407baSopenharmony_ciobj-$(CONFIG_MOST)		+= most/
1973d0407baSopenharmony_ciobj-$(CONFIG_ACCESS_TOKENID)	+= accesstokenid/
1983d0407baSopenharmony_ci#obj-$(CONFIG_RK_FLASH)		+= rkflash/
1993d0407baSopenharmony_ci#obj-$(CONFIG_RK_NAND)		+= rk_nand/
200