linux/drivers/scsi/Makefile
<<
>>
Prefs
   1# SPDX-License-Identifier: GPL-2.0
   2#
   3# Makefile for linux/drivers/scsi
   4#
   5# 30 May 2000, Christoph Hellwig <hch@infradead.org>
   6# Rewritten to use lists instead of if-statements.
   7#
   8# 20 Sep 2000, Torben Mathiasen <tmm@image.dk>
   9# Changed link order to reflect new scsi initialization.
  10#
  11# *!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!
  12# The link order must be, SCSI Core, SCSI HBA drivers, and
  13# lastly SCSI peripheral drivers (disk/tape/cdrom/etc.) to
  14# satisfy certain initialization assumptions in the SCSI layer.
  15# *!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!
  16
  17
  18CFLAGS_aha152x.o =   -DAHA152X_STAT -DAUTOCONF
  19CFLAGS_gdth.o    = # -DDEBUG_GDTH=2 -D__SERIAL__ -D__COM2__ -DGDTH_STATISTICS
  20
  21obj-$(CONFIG_PCMCIA)            += pcmcia/
  22
  23obj-$(CONFIG_SCSI)              += scsi_mod.o
  24obj-$(CONFIG_BLK_SCSI_REQUEST)  += scsi_common.o
  25
  26obj-$(CONFIG_RAID_ATTRS)        += raid_class.o
  27
  28# --- NOTE ORDERING HERE ---
  29# For kernel non-modular link, transport attributes need to
  30# be initialised before drivers
  31# --------------------------
  32obj-$(CONFIG_SCSI_SPI_ATTRS)    += scsi_transport_spi.o
  33obj-$(CONFIG_SCSI_FC_ATTRS)     += scsi_transport_fc.o
  34obj-$(CONFIG_SCSI_ISCSI_ATTRS)  += scsi_transport_iscsi.o
  35obj-$(CONFIG_SCSI_SAS_ATTRS)    += scsi_transport_sas.o
  36obj-$(CONFIG_SCSI_SAS_LIBSAS)   += libsas/
  37obj-$(CONFIG_SCSI_SRP_ATTRS)    += scsi_transport_srp.o
  38obj-$(CONFIG_SCSI_DH)           += device_handler/
  39
  40obj-$(CONFIG_LIBFC)             += libfc/
  41obj-$(CONFIG_LIBFCOE)           += fcoe/
  42obj-$(CONFIG_FCOE)              += fcoe/
  43obj-$(CONFIG_FCOE_FNIC)         += fnic/
  44obj-$(CONFIG_SCSI_SNIC)         += snic/
  45obj-$(CONFIG_SCSI_BNX2X_FCOE)   += libfc/ fcoe/ bnx2fc/
  46obj-$(CONFIG_QEDF)              += qedf/
  47obj-$(CONFIG_ISCSI_TCP)         += libiscsi.o   libiscsi_tcp.o iscsi_tcp.o
  48obj-$(CONFIG_INFINIBAND_ISER)   += libiscsi.o
  49obj-$(CONFIG_ISCSI_BOOT_SYSFS)  += iscsi_boot_sysfs.o
  50obj-$(CONFIG_SCSI_A4000T)       += 53c700.o     a4000t.o
  51obj-$(CONFIG_SCSI_ZORRO7XX)     += 53c700.o     zorro7xx.o
  52obj-$(CONFIG_SCSI_ZORRO_ESP)    += esp_scsi.o   zorro_esp.o
  53obj-$(CONFIG_A3000_SCSI)        += a3000.o      wd33c93.o
  54obj-$(CONFIG_A2091_SCSI)        += a2091.o      wd33c93.o
  55obj-$(CONFIG_GVP11_SCSI)        += gvp11.o      wd33c93.o
  56obj-$(CONFIG_MVME147_SCSI)      += mvme147.o    wd33c93.o
  57obj-$(CONFIG_SGIWD93_SCSI)      += sgiwd93.o    wd33c93.o
  58obj-$(CONFIG_ATARI_SCSI)        += atari_scsi.o
  59obj-$(CONFIG_MAC_SCSI)          += mac_scsi.o
  60obj-$(CONFIG_SCSI_MAC_ESP)      += esp_scsi.o   mac_esp.o
  61obj-$(CONFIG_SUN3_SCSI)         += sun3_scsi.o  sun3_scsi_vme.o
  62obj-$(CONFIG_MVME16x_SCSI)      += 53c700.o     mvme16x_scsi.o
  63obj-$(CONFIG_BVME6000_SCSI)     += 53c700.o     bvme6000_scsi.o
  64obj-$(CONFIG_SCSI_SIM710)       += 53c700.o     sim710.o
  65obj-$(CONFIG_SCSI_ADVANSYS)     += advansys.o
  66obj-$(CONFIG_SCSI_BUSLOGIC)     += BusLogic.o
  67obj-$(CONFIG_SCSI_DPT_I2O)      += dpt_i2o.o
  68obj-$(CONFIG_SCSI_ARCMSR)       += arcmsr/
  69obj-$(CONFIG_SCSI_AHA152X)      += aha152x.o
  70obj-$(CONFIG_SCSI_AHA1542)      += aha1542.o
  71obj-$(CONFIG_SCSI_AHA1740)      += aha1740.o
  72obj-$(CONFIG_SCSI_AIC7XXX)      += aic7xxx/
  73obj-$(CONFIG_SCSI_AIC79XX)      += aic7xxx/
  74obj-$(CONFIG_SCSI_AACRAID)      += aacraid/
  75obj-$(CONFIG_SCSI_AIC94XX)      += aic94xx/
  76obj-$(CONFIG_SCSI_PM8001)       += pm8001/
  77obj-$(CONFIG_SCSI_ISCI)         += isci/
  78obj-$(CONFIG_SCSI_IPS)          += ips.o
  79obj-$(CONFIG_SCSI_GENERIC_NCR5380) += g_NCR5380.o
  80obj-$(CONFIG_SCSI_NCR_D700)     += 53c700.o NCR_D700.o
  81obj-$(CONFIG_SCSI_NCR_Q720)     += NCR_Q720_mod.o
  82obj-$(CONFIG_SCSI_QLOGIC_FAS)   += qlogicfas408.o       qlogicfas.o
  83obj-$(CONFIG_PCMCIA_QLOGIC)     += qlogicfas408.o
  84obj-$(CONFIG_SCSI_QLOGIC_1280)  += qla1280.o 
  85obj-$(CONFIG_SCSI_QLA_FC)       += qla2xxx/
  86obj-$(CONFIG_SCSI_QLA_ISCSI)    += libiscsi.o qla4xxx/
  87obj-$(CONFIG_SCSI_LPFC)         += lpfc/
  88obj-$(CONFIG_SCSI_BFA_FC)       += bfa/
  89obj-$(CONFIG_SCSI_CHELSIO_FCOE) += csiostor/
  90obj-$(CONFIG_SCSI_DMX3191D)     += dmx3191d.o
  91obj-$(CONFIG_SCSI_HPSA)         += hpsa.o
  92obj-$(CONFIG_SCSI_SMARTPQI)     += smartpqi/
  93obj-$(CONFIG_SCSI_SYM53C8XX_2)  += sym53c8xx_2/
  94obj-$(CONFIG_SCSI_ZALON)        += zalon7xx.o
  95obj-$(CONFIG_SCSI_DC395x)       += dc395x.o
  96obj-$(CONFIG_SCSI_AM53C974)     += esp_scsi.o   am53c974.o
  97obj-$(CONFIG_CXLFLASH)          += cxlflash/
  98obj-$(CONFIG_MEGARAID_LEGACY)   += megaraid.o
  99obj-$(CONFIG_MEGARAID_NEWGEN)   += megaraid/
 100obj-$(CONFIG_MEGARAID_SAS)      += megaraid/
 101obj-$(CONFIG_SCSI_MPT3SAS)      += mpt3sas/
 102obj-$(CONFIG_SCSI_UFSHCD)       += ufs/
 103obj-$(CONFIG_SCSI_ACARD)        += atp870u.o
 104obj-$(CONFIG_SCSI_SUNESP)       += esp_scsi.o   sun_esp.o
 105obj-$(CONFIG_SCSI_GDTH)         += gdth.o
 106obj-$(CONFIG_SCSI_INITIO)       += initio.o
 107obj-$(CONFIG_SCSI_INIA100)      += a100u2w.o
 108obj-$(CONFIG_SCSI_QLOGICPTI)    += qlogicpti.o
 109obj-$(CONFIG_SCSI_MESH)         += mesh.o
 110obj-$(CONFIG_SCSI_MAC53C94)     += mac53c94.o
 111obj-$(CONFIG_BLK_DEV_3W_XXXX_RAID) += 3w-xxxx.o
 112obj-$(CONFIG_SCSI_3W_9XXX)      += 3w-9xxx.o
 113obj-$(CONFIG_SCSI_3W_SAS)       += 3w-sas.o
 114obj-$(CONFIG_SCSI_PPA)          += ppa.o
 115obj-$(CONFIG_SCSI_IMM)          += imm.o
 116obj-$(CONFIG_JAZZ_ESP)          += esp_scsi.o   jazz_esp.o
 117obj-$(CONFIG_SUN3X_ESP)         += esp_scsi.o   sun3x_esp.o
 118obj-$(CONFIG_SCSI_LASI700)      += 53c700.o lasi700.o
 119obj-$(CONFIG_SCSI_SNI_53C710)   += 53c700.o sni_53c710.o
 120obj-$(CONFIG_SCSI_NSP32)        += nsp32.o
 121obj-$(CONFIG_SCSI_IPR)          += ipr.o
 122obj-$(CONFIG_SCSI_IBMVSCSI)     += ibmvscsi/
 123obj-$(CONFIG_SCSI_IBMVSCSIS)    += ibmvscsi_tgt/
 124obj-$(CONFIG_SCSI_IBMVFC)       += ibmvscsi/
 125obj-$(CONFIG_SCSI_HPTIOP)       += hptiop.o
 126obj-$(CONFIG_SCSI_STEX)         += stex.o
 127obj-$(CONFIG_SCSI_MVSAS)        += mvsas/
 128obj-$(CONFIG_SCSI_MVUMI)        += mvumi.o
 129obj-$(CONFIG_PS3_ROM)           += ps3rom.o
 130obj-$(CONFIG_SCSI_CXGB3_ISCSI)  += libiscsi.o libiscsi_tcp.o cxgbi/
 131obj-$(CONFIG_SCSI_CXGB4_ISCSI)  += libiscsi.o libiscsi_tcp.o cxgbi/
 132obj-$(CONFIG_SCSI_BNX2_ISCSI)   += libiscsi.o bnx2i/
 133obj-$(CONFIG_QEDI)          += libiscsi.o qedi/
 134obj-$(CONFIG_BE2ISCSI)          += libiscsi.o be2iscsi/
 135obj-$(CONFIG_SCSI_ESAS2R)       += esas2r/
 136obj-$(CONFIG_SCSI_PMCRAID)      += pmcraid.o
 137obj-$(CONFIG_SCSI_VIRTIO)       += virtio_scsi.o
 138obj-$(CONFIG_VMWARE_PVSCSI)     += vmw_pvscsi.o
 139obj-$(CONFIG_XEN_SCSI_FRONTEND) += xen-scsifront.o
 140obj-$(CONFIG_HYPERV_STORAGE)    += hv_storvsc.o
 141obj-$(CONFIG_SCSI_WD719X)       += wd719x.o
 142
 143obj-$(CONFIG_ARM)               += arm/
 144
 145obj-$(CONFIG_CHR_DEV_ST)        += st.o
 146obj-$(CONFIG_CHR_DEV_OSST)      += osst.o
 147obj-$(CONFIG_BLK_DEV_SD)        += sd_mod.o
 148obj-$(CONFIG_BLK_DEV_SR)        += sr_mod.o
 149obj-$(CONFIG_CHR_DEV_SG)        += sg.o
 150obj-$(CONFIG_CHR_DEV_SCH)       += ch.o
 151obj-$(CONFIG_SCSI_ENCLOSURE)    += ses.o
 152
 153obj-$(CONFIG_SCSI_OSD_INITIATOR) += osd/
 154obj-$(CONFIG_SCSI_HISI_SAS) += hisi_sas/
 155
 156# This goes last, so that "real" scsi devices probe earlier
 157obj-$(CONFIG_SCSI_DEBUG)        += scsi_debug.o
 158scsi_mod-y                      += scsi.o hosts.o scsi_ioctl.o \
 159                                   scsicam.o scsi_error.o scsi_lib.o
 160scsi_mod-$(CONFIG_SCSI_CONSTANTS) += constants.o
 161scsi_mod-$(CONFIG_SCSI_DMA)     += scsi_lib_dma.o
 162scsi_mod-y                      += scsi_scan.o scsi_sysfs.o scsi_devinfo.o
 163scsi_mod-$(CONFIG_SCSI_NETLINK) += scsi_netlink.o
 164scsi_mod-$(CONFIG_SYSCTL)       += scsi_sysctl.o
 165scsi_mod-$(CONFIG_SCSI_PROC_FS) += scsi_proc.o
 166scsi_mod-$(CONFIG_BLK_DEBUG_FS) += scsi_debugfs.o
 167scsi_mod-y                      += scsi_trace.o scsi_logging.o
 168scsi_mod-$(CONFIG_PM)           += scsi_pm.o
 169scsi_mod-$(CONFIG_SCSI_DH)      += scsi_dh.o
 170
 171hv_storvsc-y                    := storvsc_drv.o
 172
 173sd_mod-objs     := sd.o
 174sd_mod-$(CONFIG_BLK_DEV_INTEGRITY) += sd_dif.o
 175sd_mod-$(CONFIG_BLK_DEV_ZONED) += sd_zbc.o
 176
 177sr_mod-objs     := sr.o sr_ioctl.o sr_vendor.o
 178ncr53c8xx-flags-$(CONFIG_SCSI_ZALON) \
 179                := -DCONFIG_NCR53C8XX_PREFETCH -DSCSI_NCR_BIG_ENDIAN \
 180                        -DCONFIG_SCSI_NCR53C8XX_NO_WORD_TRANSFERS
 181CFLAGS_ncr53c8xx.o      := $(ncr53c8xx-flags-y) $(ncr53c8xx-flags-m)
 182zalon7xx-objs   := zalon.o ncr53c8xx.o
 183NCR_Q720_mod-objs       := NCR_Q720.o ncr53c8xx.o
 184
 185# Files generated that shall be removed upon make clean
 186clean-files :=  53c700_d.h 53c700_u.h scsi_devinfo_tbl.c
 187
 188$(obj)/53c700.o $(MODVERDIR)/$(obj)/53c700.ver: $(obj)/53c700_d.h
 189
 190$(obj)/scsi_sysfs.o: $(obj)/scsi_devinfo_tbl.c
 191
 192quiet_cmd_bflags = GEN     $@
 193        cmd_bflags = sed -n 's/.*define *BLIST_\([A-Z0-9_]*\) *.*/BLIST_FLAG_NAME(\1),/p' $< > $@
 194
 195$(obj)/scsi_devinfo_tbl.c: include/scsi/scsi_devinfo.h
 196        $(call if_changed,bflags)
 197
 198# If you want to play with the firmware, uncomment
 199# GENERATE_FIRMWARE := 1
 200
 201ifdef GENERATE_FIRMWARE
 202
 203$(obj)/53c700_d.h: $(src)/53c700.scr $(src)/script_asm.pl
 204        $(PERL) -s $(src)/script_asm.pl -ncr7x0_family $@ $(@:_d.h=_u.h) < $<
 205
 206endif
 207