1b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0 21da177e4SLinus Torvalds# 31da177e4SLinus Torvalds# Makefile for linux/drivers/scsi 41da177e4SLinus Torvalds# 51da177e4SLinus Torvalds# 30 May 2000, Christoph Hellwig <hch@infradead.org> 61da177e4SLinus Torvalds# Rewritten to use lists instead of if-statements. 71da177e4SLinus Torvalds# 81da177e4SLinus Torvalds# 20 Sep 2000, Torben Mathiasen <tmm@image.dk> 91da177e4SLinus Torvalds# Changed link order to reflect new scsi initialization. 101da177e4SLinus Torvalds# 111da177e4SLinus Torvalds# *!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*! 121da177e4SLinus Torvalds# The link order must be, SCSI Core, SCSI HBA drivers, and 131da177e4SLinus Torvalds# lastly SCSI peripheral drivers (disk/tape/cdrom/etc.) to 141da177e4SLinus Torvalds# satisfy certain initialization assumptions in the SCSI layer. 151da177e4SLinus Torvalds# *!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*! 161da177e4SLinus Torvalds 171da177e4SLinus Torvalds 181da177e4SLinus TorvaldsCFLAGS_aha152x.o = -DAHA152X_STAT -DAUTOCONF 191da177e4SLinus TorvaldsCFLAGS_gdth.o = # -DDEBUG_GDTH=2 -D__SERIAL__ -D__COM2__ -DGDTH_STATISTICS 201da177e4SLinus Torvalds 218ae732a9STejun Heoobj-$(CONFIG_PCMCIA) += pcmcia/ 221da177e4SLinus Torvalds 231da177e4SLinus Torvaldsobj-$(CONFIG_SCSI) += scsi_mod.o 241da177e4SLinus Torvalds 2561a7afa2SJames Bottomleyobj-$(CONFIG_RAID_ATTRS) += raid_class.o 2661a7afa2SJames Bottomley 271da177e4SLinus Torvalds# --- NOTE ORDERING HERE --- 281da177e4SLinus Torvalds# For kernel non-modular link, transport attributes need to 291da177e4SLinus Torvalds# be initialised before drivers 301da177e4SLinus Torvalds# -------------------------- 311da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_SPI_ATTRS) += scsi_transport_spi.o 321da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_FC_ATTRS) += scsi_transport_fc.o 331da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_ISCSI_ATTRS) += scsi_transport_iscsi.o 34c7ebbbceSChristoph Hellwigobj-$(CONFIG_SCSI_SAS_ATTRS) += scsi_transport_sas.o 352908d778SJames Bottomleyobj-$(CONFIG_SCSI_SAS_LIBSAS) += libsas/ 3609345f65SFUJITA Tomonoriobj-$(CONFIG_SCSI_SRP_ATTRS) += scsi_transport_srp.o 37a6a8d9f8SChandra Seetharamanobj-$(CONFIG_SCSI_DH) += device_handler/ 381da177e4SLinus Torvalds 3942e9a92fSRobert Loveobj-$(CONFIG_LIBFC) += libfc/ 409b34ecffSVasu Devobj-$(CONFIG_LIBFCOE) += fcoe/ 4185b4aa49SRobert Loveobj-$(CONFIG_FCOE) += fcoe/ 425df6d737SAbhijeet Joglekarobj-$(CONFIG_FCOE_FNIC) += fnic/ 43c8806b6cSNarsimhulu Musiniobj-$(CONFIG_SCSI_SNIC) += snic/ 44853e2bd2SBhanu Gollapudiobj-$(CONFIG_SCSI_BNX2X_FCOE) += libfc/ fcoe/ bnx2fc/ 4561d8658bSDupuis, Chadobj-$(CONFIG_QEDF) += qedf/ 4638e1a8f5SMike Christieobj-$(CONFIG_ISCSI_TCP) += libiscsi.o libiscsi_tcp.o iscsi_tcp.o 473f1244a2SOr Gerlitzobj-$(CONFIG_INFINIBAND_ISER) += libiscsi.o 48aab7a8fdSMike Christieobj-$(CONFIG_ISCSI_BOOT_SYSFS) += iscsi_boot_sysfs.o 49a16efc1cSKars de Jongobj-$(CONFIG_SCSI_A4000T) += 53c700.o a4000t.o 5045804fbbSKars de Jongobj-$(CONFIG_SCSI_ZORRO7XX) += 53c700.o zorro7xx.o 513109e5aeSMichael Schmitzobj-$(CONFIG_SCSI_ZORRO_ESP) += esp_scsi.o zorro_esp.o 521da177e4SLinus Torvaldsobj-$(CONFIG_A3000_SCSI) += a3000.o wd33c93.o 531da177e4SLinus Torvaldsobj-$(CONFIG_A2091_SCSI) += a2091.o wd33c93.o 541da177e4SLinus Torvaldsobj-$(CONFIG_GVP11_SCSI) += gvp11.o wd33c93.o 551da177e4SLinus Torvaldsobj-$(CONFIG_MVME147_SCSI) += mvme147.o wd33c93.o 561da177e4SLinus Torvaldsobj-$(CONFIG_SGIWD93_SCSI) += sgiwd93.o wd33c93.o 571da177e4SLinus Torvaldsobj-$(CONFIG_ATARI_SCSI) += atari_scsi.o 581da177e4SLinus Torvaldsobj-$(CONFIG_MAC_SCSI) += mac_scsi.o 596fe07aafSFinn Thainobj-$(CONFIG_SCSI_MAC_ESP) += esp_scsi.o mac_esp.o 601da177e4SLinus Torvaldsobj-$(CONFIG_SUN3_SCSI) += sun3_scsi.o sun3_scsi_vme.o 61506c7bbcSKars de Jongobj-$(CONFIG_MVME16x_SCSI) += 53c700.o mvme16x_scsi.o 628276b58aSKars de Jongobj-$(CONFIG_BVME6000_SCSI) += 53c700.o bvme6000_scsi.o 631da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_SIM710) += 53c700.o sim710.o 641da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_ADVANSYS) += advansys.o 651da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_BUSLOGIC) += BusLogic.o 661da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_DPT_I2O) += dpt_i2o.o 671c57e86dSErich Chenobj-$(CONFIG_SCSI_ARCMSR) += arcmsr/ 681da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_AHA152X) += aha152x.o 691da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_AHA1542) += aha1542.o 701da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_AHA1740) += aha1740.o 711da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_AIC7XXX) += aic7xxx/ 721da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_AIC79XX) += aic7xxx/ 731da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_AACRAID) += aacraid/ 742908d778SJames Bottomleyobj-$(CONFIG_SCSI_AIC94XX) += aic94xx/ 75dbf9bfe6Sjack wangobj-$(CONFIG_SCSI_PM8001) += pm8001/ 766f231ddaSDan Williamsobj-$(CONFIG_SCSI_ISCI) += isci/ 771da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_IPS) += ips.o 781da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_GENERIC_NCR5380) += g_NCR5380.o 791da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_NCR_D700) += 53c700.o NCR_D700.o 801da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_NCR_Q720) += NCR_Q720_mod.o 811da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_QLOGIC_FAS) += qlogicfas408.o qlogicfas.o 821da177e4SLinus Torvaldsobj-$(CONFIG_PCMCIA_QLOGIC) += qlogicfas408.o 831da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_QLOGIC_1280) += qla1280.o 848e0df4a7SAndrew Vasquezobj-$(CONFIG_SCSI_QLA_FC) += qla2xxx/ 853538a001SRandy Dunlapobj-$(CONFIG_SCSI_QLA_ISCSI) += libiscsi.o qla4xxx/ 86dea3101eSobj-$(CONFIG_SCSI_LPFC) += lpfc/ 877725ccfdSJing Huangobj-$(CONFIG_SCSI_BFA_FC) += bfa/ 88a3667aaeSNaresh Kumar Innaobj-$(CONFIG_SCSI_CHELSIO_FCOE) += csiostor/ 891da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_DMX3191D) += dmx3191d.o 90edd16368SStephen M. Cameronobj-$(CONFIG_SCSI_HPSA) += hpsa.o 916c223761SKevin Barnettobj-$(CONFIG_SCSI_SMARTPQI) += smartpqi/ 921da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_SYM53C8XX_2) += sym53c8xx_2/ 931da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_ZALON) += zalon7xx.o 941da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_DC395x) += dc395x.o 953a7e7be2SHannes Reineckeobj-$(CONFIG_SCSI_AM53C974) += esp_scsi.o am53c974.o 96c21e0bbfSMatthew R. Ochsobj-$(CONFIG_CXLFLASH) += cxlflash/ 971da177e4SLinus Torvaldsobj-$(CONFIG_MEGARAID_LEGACY) += megaraid.o 981da177e4SLinus Torvaldsobj-$(CONFIG_MEGARAID_NEWGEN) += megaraid/ 99c4a3e0a5SBagalkote, Sreenivasobj-$(CONFIG_MEGARAID_SAS) += megaraid/ 100f92363d1SSreekanth Reddyobj-$(CONFIG_SCSI_MPT3SAS) += mpt3sas/ 1017a3e97b0SSantosh Yaraganaviobj-$(CONFIG_SCSI_UFSHCD) += ufs/ 1021da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_ACARD) += atp870u.o 10389a4063eSDavid S. Millerobj-$(CONFIG_SCSI_SUNESP) += esp_scsi.o sun_esp.o 1041da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_GDTH) += gdth.o 1051da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_INITIO) += initio.o 1061da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_INIA100) += a100u2w.o 1071da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_QLOGICPTI) += qlogicpti.o 1081da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_MESH) += mesh.o 1091da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_MAC53C94) += mac53c94.o 1101da177e4SLinus Torvaldsobj-$(CONFIG_BLK_DEV_3W_XXXX_RAID) += 3w-xxxx.o 1111da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_3W_9XXX) += 3w-9xxx.o 112f619106bSadam radfordobj-$(CONFIG_SCSI_3W_SAS) += 3w-sas.o 1131da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_PPA) += ppa.o 1141da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_IMM) += imm.o 115352e921fSThomas Bogendoerferobj-$(CONFIG_JAZZ_ESP) += esp_scsi.o jazz_esp.o 1160bb67f18SThomas Bogendoerferobj-$(CONFIG_SUN3X_ESP) += esp_scsi.o sun3x_esp.o 1171da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_LASI700) += 53c700.o lasi700.o 118c27d85f3SThomas Bogendoerferobj-$(CONFIG_SCSI_SNI_53C710) += 53c700.o sni_53c710.o 1191da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_NSP32) += nsp32.o 1201da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_IPR) += ipr.o 1211da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_IBMVSCSI) += ibmvscsi/ 12288a678bbSBryant G. Lyobj-$(CONFIG_SCSI_IBMVSCSIS) += ibmvscsi_tgt/ 123072b91f9SBrian Kingobj-$(CONFIG_SCSI_IBMVFC) += ibmvscsi/ 124ede1e6f8SHighPoint Linux Teamobj-$(CONFIG_SCSI_HPTIOP) += hptiop.o 1255a25ba16SJeff Garzikobj-$(CONFIG_SCSI_STEX) += stex.o 1262ad52f47SJeff Garzikobj-$(CONFIG_SCSI_MVSAS) += mvsas/ 127f0c568a4SJianyun Liobj-$(CONFIG_SCSI_MVUMI) += mvumi.o 1289aea8cbfSGeert Uytterhoevenobj-$(CONFIG_PS3_ROM) += ps3rom.o 1296f7efaabSkxie@chelsio.comobj-$(CONFIG_SCSI_CXGB3_ISCSI) += libiscsi.o libiscsi_tcp.o cxgbi/ 1307b36b6e0Skxie@chelsio.comobj-$(CONFIG_SCSI_CXGB4_ISCSI) += libiscsi.o libiscsi_tcp.o cxgbi/ 131cf4e6363SMichael Chanobj-$(CONFIG_SCSI_BNX2_ISCSI) += libiscsi.o bnx2i/ 132ace7f46bSManish Rangankarobj-$(CONFIG_QEDI) += libiscsi.o qedi/ 1336733b39aSJayamohan Kallickalobj-$(CONFIG_BE2ISCSI) += libiscsi.o be2iscsi/ 13426780d9eSBradley Groveobj-$(CONFIG_SCSI_ESAS2R) += esas2r/ 13589a36810SAnil Ravindranathobj-$(CONFIG_SCSI_PMCRAID) += pmcraid.o 1364fe74b1cSPaolo Bonziniobj-$(CONFIG_SCSI_VIRTIO) += virtio_scsi.o 137851b1642SAlok Katariaobj-$(CONFIG_VMWARE_PVSCSI) += vmw_pvscsi.o 1388beb8d4cSJuergen Grossobj-$(CONFIG_XEN_SCSI_FRONTEND) += xen-scsifront.o 13989ae7d70SK. Y. Srinivasanobj-$(CONFIG_HYPERV_STORAGE) += hv_storvsc.o 14048a31030SOndrej Zaryobj-$(CONFIG_SCSI_WD719X) += wd719x.o 1411da177e4SLinus Torvalds 1421da177e4SLinus Torvaldsobj-$(CONFIG_ARM) += arm/ 1431da177e4SLinus Torvalds 1441da177e4SLinus Torvaldsobj-$(CONFIG_CHR_DEV_ST) += st.o 1451da177e4SLinus Torvaldsobj-$(CONFIG_CHR_DEV_OSST) += osst.o 1461da177e4SLinus Torvaldsobj-$(CONFIG_BLK_DEV_SD) += sd_mod.o 1471da177e4SLinus Torvaldsobj-$(CONFIG_BLK_DEV_SR) += sr_mod.o 1481da177e4SLinus Torvaldsobj-$(CONFIG_CHR_DEV_SG) += sg.o 149daa6eda6SGerd Knorr obj-$(CONFIG_CHR_DEV_SCH) += ch.o 1509927c688SJames Bottomleyobj-$(CONFIG_SCSI_ENCLOSURE) += ses.o 1511da177e4SLinus Torvalds 15268274794SBoaz Harroshobj-$(CONFIG_SCSI_OSD_INITIATOR) += osd/ 153e8899fadSJohn Garryobj-$(CONFIG_SCSI_HISI_SAS) += hisi_sas/ 15468274794SBoaz Harrosh 1550caab23eSLinus Torvalds# This goes last, so that "real" scsi devices probe earlier 1560caab23eSLinus Torvaldsobj-$(CONFIG_SCSI_DEBUG) += scsi_debug.o 1572dd951ecSHannes Reineckescsi_mod-y += scsi.o hosts.o scsi_ioctl.o \ 1587689e82eSCornelia Huck scsicam.o scsi_error.o scsi_lib.o 15907e38420SBart Van Asschescsi_mod-y += scsi_common.o 1602dd951ecSHannes Reineckescsi_mod-$(CONFIG_SCSI_CONSTANTS) += constants.o 1617689e82eSCornelia Huckscsi_mod-$(CONFIG_SCSI_DMA) += scsi_lib_dma.o 1627689e82eSCornelia Huckscsi_mod-y += scsi_scan.o scsi_sysfs.o scsi_devinfo.o 16384314fd4SJames Smartscsi_mod-$(CONFIG_SCSI_NETLINK) += scsi_netlink.o 1641da177e4SLinus Torvaldsscsi_mod-$(CONFIG_SYSCTL) += scsi_sysctl.o 1651da177e4SLinus Torvaldsscsi_mod-$(CONFIG_SCSI_PROC_FS) += scsi_proc.o 1660eebd005SBart Van Asschescsi_mod-$(CONFIG_BLK_DEBUG_FS) += scsi_debugfs.o 167ded85c19SHannes Reineckescsi_mod-y += scsi_trace.o scsi_logging.o 168aa338601SRafael J. Wysockiscsi_mod-$(CONFIG_PM) += scsi_pm.o 169086b91d0SChristoph Hellwigscsi_mod-$(CONFIG_SCSI_DH) += scsi_dh.o 1701da177e4SLinus Torvalds 17189ae7d70SK. Y. Srinivasanhv_storvsc-y := storvsc_drv.o 17289ae7d70SK. Y. Srinivasan 1731da177e4SLinus Torvaldssd_mod-objs := sd.o 174af55ff67SMartin K. Petersensd_mod-$(CONFIG_BLK_DEV_INTEGRITY) += sd_dif.o 17589d94756SHannes Reineckesd_mod-$(CONFIG_BLK_DEV_ZONED) += sd_zbc.o 176af55ff67SMartin K. Petersen 1771da177e4SLinus Torvaldssr_mod-objs := sr.o sr_ioctl.o sr_vendor.o 1781da177e4SLinus Torvaldsncr53c8xx-flags-$(CONFIG_SCSI_ZALON) \ 1791da177e4SLinus Torvalds := -DCONFIG_NCR53C8XX_PREFETCH -DSCSI_NCR_BIG_ENDIAN \ 1801da177e4SLinus Torvalds -DCONFIG_SCSI_NCR53C8XX_NO_WORD_TRANSFERS 1811da177e4SLinus TorvaldsCFLAGS_ncr53c8xx.o := $(ncr53c8xx-flags-y) $(ncr53c8xx-flags-m) 1821da177e4SLinus Torvaldszalon7xx-objs := zalon.o ncr53c8xx.o 1831da177e4SLinus TorvaldsNCR_Q720_mod-objs := NCR_Q720.o ncr53c8xx.o 1841da177e4SLinus Torvalds 1851da177e4SLinus Torvalds# Files generated that shall be removed upon make clean 186565bae6aSChristoph Hellwigclean-files := 53c700_d.h 53c700_u.h 1871da177e4SLinus Torvalds 1881da177e4SLinus Torvalds$(obj)/53c700.o $(MODVERDIR)/$(obj)/53c700.ver: $(obj)/53c700_d.h 1891da177e4SLinus Torvalds 190345e2960SHannes Reinecke$(obj)/scsi_sysfs.o: $(obj)/scsi_devinfo_tbl.c 191345e2960SHannes Reinecke 192345e2960SHannes Reineckequiet_cmd_bflags = GEN $@ 193*358fda5fSMartin Wilck cmd_bflags = sed -n 's/.*define *BLIST_\([A-Z0-9_]*\) *.*/BLIST_FLAG_NAME(\1),/p' $< > $@ 194345e2960SHannes Reinecke 195345e2960SHannes Reinecke$(obj)/scsi_devinfo_tbl.c: include/scsi/scsi_devinfo.h 196345e2960SHannes Reinecke $(call if_changed,bflags) 197345e2960SHannes Reinecke 1981da177e4SLinus Torvalds# If you want to play with the firmware, uncomment 1991da177e4SLinus Torvalds# GENERATE_FIRMWARE := 1 2001da177e4SLinus Torvalds 2011da177e4SLinus Torvaldsifdef GENERATE_FIRMWARE 2021da177e4SLinus Torvalds 2031da177e4SLinus Torvalds$(obj)/53c700_d.h: $(src)/53c700.scr $(src)/script_asm.pl 2041da177e4SLinus Torvalds $(PERL) -s $(src)/script_asm.pl -ncr7x0_family $@ $(@:_d.h=_u.h) < $< 2051da177e4SLinus Torvalds 2061da177e4SLinus Torvaldsendif 207