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 Torvalds 208ae732a9STejun Heoobj-$(CONFIG_PCMCIA) += pcmcia/ 211da177e4SLinus Torvalds 221da177e4SLinus Torvaldsobj-$(CONFIG_SCSI) += scsi_mod.o 2333ff4ce4SChristoph Hellwigobj-$(CONFIG_SCSI_COMMON) += scsi_common.o 241da177e4SLinus Torvalds 2561a7afa2SJames Bottomleyobj-$(CONFIG_RAID_ATTRS) += raid_class.o 2661a7afa2SJames Bottomley 27*4977c0f4SBart Van Asscheobj-$(CONFIG_SCSI_PROTO_TEST) += scsi_proto_test.o 28*4977c0f4SBart Van Assche 291da177e4SLinus Torvalds# --- NOTE ORDERING HERE --- 301da177e4SLinus Torvalds# For kernel non-modular link, transport attributes need to 311da177e4SLinus Torvalds# be initialised before drivers 321da177e4SLinus Torvalds# -------------------------- 331da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_SPI_ATTRS) += scsi_transport_spi.o 341da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_FC_ATTRS) += scsi_transport_fc.o 351da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_ISCSI_ATTRS) += scsi_transport_iscsi.o 36c7ebbbceSChristoph Hellwigobj-$(CONFIG_SCSI_SAS_ATTRS) += scsi_transport_sas.o 372908d778SJames Bottomleyobj-$(CONFIG_SCSI_SAS_LIBSAS) += libsas/ 3809345f65SFUJITA Tomonoriobj-$(CONFIG_SCSI_SRP_ATTRS) += scsi_transport_srp.o 39a6a8d9f8SChandra Seetharamanobj-$(CONFIG_SCSI_DH) += device_handler/ 401da177e4SLinus Torvalds 4142e9a92fSRobert Loveobj-$(CONFIG_LIBFC) += libfc/ 429b34ecffSVasu Devobj-$(CONFIG_LIBFCOE) += fcoe/ 4385b4aa49SRobert Loveobj-$(CONFIG_FCOE) += fcoe/ 445df6d737SAbhijeet Joglekarobj-$(CONFIG_FCOE_FNIC) += fnic/ 45c8806b6cSNarsimhulu Musiniobj-$(CONFIG_SCSI_SNIC) += snic/ 46853e2bd2SBhanu Gollapudiobj-$(CONFIG_SCSI_BNX2X_FCOE) += libfc/ fcoe/ bnx2fc/ 4761d8658bSDupuis, Chadobj-$(CONFIG_QEDF) += qedf/ 4838e1a8f5SMike Christieobj-$(CONFIG_ISCSI_TCP) += libiscsi.o libiscsi_tcp.o iscsi_tcp.o 493f1244a2SOr Gerlitzobj-$(CONFIG_INFINIBAND_ISER) += libiscsi.o 50aab7a8fdSMike Christieobj-$(CONFIG_ISCSI_BOOT_SYSFS) += iscsi_boot_sysfs.o 51a16efc1cSKars de Jongobj-$(CONFIG_SCSI_A4000T) += 53c700.o a4000t.o 5245804fbbSKars de Jongobj-$(CONFIG_SCSI_ZORRO7XX) += 53c700.o zorro7xx.o 533109e5aeSMichael Schmitzobj-$(CONFIG_SCSI_ZORRO_ESP) += esp_scsi.o zorro_esp.o 541da177e4SLinus Torvaldsobj-$(CONFIG_A3000_SCSI) += a3000.o wd33c93.o 551da177e4SLinus Torvaldsobj-$(CONFIG_A2091_SCSI) += a2091.o wd33c93.o 561da177e4SLinus Torvaldsobj-$(CONFIG_GVP11_SCSI) += gvp11.o wd33c93.o 571da177e4SLinus Torvaldsobj-$(CONFIG_MVME147_SCSI) += mvme147.o wd33c93.o 581da177e4SLinus Torvaldsobj-$(CONFIG_SGIWD93_SCSI) += sgiwd93.o wd33c93.o 591da177e4SLinus Torvaldsobj-$(CONFIG_ATARI_SCSI) += atari_scsi.o 601da177e4SLinus Torvaldsobj-$(CONFIG_MAC_SCSI) += mac_scsi.o 616fe07aafSFinn Thainobj-$(CONFIG_SCSI_MAC_ESP) += esp_scsi.o mac_esp.o 621da177e4SLinus Torvaldsobj-$(CONFIG_SUN3_SCSI) += sun3_scsi.o sun3_scsi_vme.o 63506c7bbcSKars de Jongobj-$(CONFIG_MVME16x_SCSI) += 53c700.o mvme16x_scsi.o 648276b58aSKars de Jongobj-$(CONFIG_BVME6000_SCSI) += 53c700.o bvme6000_scsi.o 651da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_SIM710) += 53c700.o sim710.o 661da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_ADVANSYS) += advansys.o 671da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_BUSLOGIC) += BusLogic.o 681c57e86dSErich Chenobj-$(CONFIG_SCSI_ARCMSR) += arcmsr/ 691da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_AHA152X) += aha152x.o 701da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_AHA1542) += aha1542.o 711da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_AHA1740) += aha1740.o 721da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_AIC7XXX) += aic7xxx/ 731da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_AIC79XX) += aic7xxx/ 741da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_AACRAID) += aacraid/ 752908d778SJames Bottomleyobj-$(CONFIG_SCSI_AIC94XX) += aic94xx/ 76dbf9bfe6Sjack wangobj-$(CONFIG_SCSI_PM8001) += pm8001/ 776f231ddaSDan Williamsobj-$(CONFIG_SCSI_ISCI) += isci/ 781da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_IPS) += ips.o 79ebeb4665SOndrej Zaryobj-$(CONFIG_SCSI_FDOMAIN) += fdomain.o 8068046d50SOndrej Zaryobj-$(CONFIG_SCSI_FDOMAIN_PCI) += fdomain_pci.o 81e5207cf0SOndrej Zaryobj-$(CONFIG_SCSI_FDOMAIN_ISA) += fdomain_isa.o 821da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_GENERIC_NCR5380) += g_NCR5380.o 831da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_QLOGIC_FAS) += qlogicfas408.o qlogicfas.o 841da177e4SLinus Torvaldsobj-$(CONFIG_PCMCIA_QLOGIC) += qlogicfas408.o 851da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_QLOGIC_1280) += qla1280.o 868e0df4a7SAndrew Vasquezobj-$(CONFIG_SCSI_QLA_FC) += qla2xxx/ 873538a001SRandy Dunlapobj-$(CONFIG_SCSI_QLA_ISCSI) += libiscsi.o qla4xxx/ 88dea3101eSobj-$(CONFIG_SCSI_LPFC) += lpfc/ 89ebc076b3SJames Smartobj-$(CONFIG_SCSI_EFCT) += elx/ 907725ccfdSJing Huangobj-$(CONFIG_SCSI_BFA_FC) += bfa/ 91a3667aaeSNaresh Kumar Innaobj-$(CONFIG_SCSI_CHELSIO_FCOE) += csiostor/ 921da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_DMX3191D) += dmx3191d.o 93edd16368SStephen M. Cameronobj-$(CONFIG_SCSI_HPSA) += hpsa.o 946c223761SKevin Barnettobj-$(CONFIG_SCSI_SMARTPQI) += smartpqi/ 951da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_SYM53C8XX_2) += sym53c8xx_2/ 961da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_ZALON) += zalon7xx.o 971da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_DC395x) += dc395x.o 983a7e7be2SHannes Reineckeobj-$(CONFIG_SCSI_AM53C974) += esp_scsi.o am53c974.o 991da177e4SLinus Torvaldsobj-$(CONFIG_MEGARAID_LEGACY) += megaraid.o 1001da177e4SLinus Torvaldsobj-$(CONFIG_MEGARAID_NEWGEN) += megaraid/ 101c4a3e0a5SBagalkote, Sreenivasobj-$(CONFIG_MEGARAID_SAS) += megaraid/ 102f92363d1SSreekanth Reddyobj-$(CONFIG_SCSI_MPT3SAS) += mpt3sas/ 103c4f7ac64SKashyap Desaiobj-$(CONFIG_SCSI_MPI3MR) += mpi3mr/ 1041da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_ACARD) += atp870u.o 10589a4063eSDavid S. Millerobj-$(CONFIG_SCSI_SUNESP) += esp_scsi.o sun_esp.o 1061da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_INITIO) += initio.o 1071da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_INIA100) += a100u2w.o 1081da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_QLOGICPTI) += qlogicpti.o 1091da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_MESH) += mesh.o 1101da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_MAC53C94) += mac53c94.o 111081ff398SHannes Reineckeobj-$(CONFIG_SCSI_MYRB) += myrb.o 11277266186SHannes Reineckeobj-$(CONFIG_SCSI_MYRS) += myrs.o 1131da177e4SLinus Torvaldsobj-$(CONFIG_BLK_DEV_3W_XXXX_RAID) += 3w-xxxx.o 1141da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_3W_9XXX) += 3w-9xxx.o 115f619106bSadam radfordobj-$(CONFIG_SCSI_3W_SAS) += 3w-sas.o 1161da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_PPA) += ppa.o 1171da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_IMM) += imm.o 118352e921fSThomas Bogendoerferobj-$(CONFIG_JAZZ_ESP) += esp_scsi.o jazz_esp.o 1190bb67f18SThomas Bogendoerferobj-$(CONFIG_SUN3X_ESP) += esp_scsi.o sun3x_esp.o 1201da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_LASI700) += 53c700.o lasi700.o 121c27d85f3SThomas Bogendoerferobj-$(CONFIG_SCSI_SNI_53C710) += 53c700.o sni_53c710.o 1221da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_NSP32) += nsp32.o 1231da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_IPR) += ipr.o 1241da177e4SLinus Torvaldsobj-$(CONFIG_SCSI_IBMVSCSI) += ibmvscsi/ 12588a678bbSBryant G. Lyobj-$(CONFIG_SCSI_IBMVSCSIS) += ibmvscsi_tgt/ 126072b91f9SBrian Kingobj-$(CONFIG_SCSI_IBMVFC) += ibmvscsi/ 127ede1e6f8SHighPoint Linux Teamobj-$(CONFIG_SCSI_HPTIOP) += hptiop.o 1285a25ba16SJeff Garzikobj-$(CONFIG_SCSI_STEX) += stex.o 1292ad52f47SJeff Garzikobj-$(CONFIG_SCSI_MVSAS) += mvsas/ 130f0c568a4SJianyun Liobj-$(CONFIG_SCSI_MVUMI) += mvumi.o 1319aea8cbfSGeert Uytterhoevenobj-$(CONFIG_PS3_ROM) += ps3rom.o 1326f7efaabSkxie@chelsio.comobj-$(CONFIG_SCSI_CXGB3_ISCSI) += libiscsi.o libiscsi_tcp.o cxgbi/ 1337b36b6e0Skxie@chelsio.comobj-$(CONFIG_SCSI_CXGB4_ISCSI) += libiscsi.o libiscsi_tcp.o cxgbi/ 134cf4e6363SMichael Chanobj-$(CONFIG_SCSI_BNX2_ISCSI) += libiscsi.o bnx2i/ 135ace7f46bSManish Rangankarobj-$(CONFIG_QEDI) += libiscsi.o qedi/ 1366733b39aSJayamohan Kallickalobj-$(CONFIG_BE2ISCSI) += libiscsi.o be2iscsi/ 13726780d9eSBradley Groveobj-$(CONFIG_SCSI_ESAS2R) += esas2r/ 13889a36810SAnil Ravindranathobj-$(CONFIG_SCSI_PMCRAID) += pmcraid.o 1394fe74b1cSPaolo Bonziniobj-$(CONFIG_SCSI_VIRTIO) += virtio_scsi.o 140851b1642SAlok Katariaobj-$(CONFIG_VMWARE_PVSCSI) += vmw_pvscsi.o 1418beb8d4cSJuergen Grossobj-$(CONFIG_XEN_SCSI_FRONTEND) += xen-scsifront.o 14289ae7d70SK. Y. Srinivasanobj-$(CONFIG_HYPERV_STORAGE) += hv_storvsc.o 14348a31030SOndrej Zaryobj-$(CONFIG_SCSI_WD719X) += wd719x.o 1441da177e4SLinus Torvalds 1451da177e4SLinus Torvaldsobj-$(CONFIG_ARM) += arm/ 1461da177e4SLinus Torvalds 1471da177e4SLinus Torvaldsobj-$(CONFIG_CHR_DEV_ST) += st.o 1481da177e4SLinus Torvaldsobj-$(CONFIG_BLK_DEV_SD) += sd_mod.o 1491da177e4SLinus Torvaldsobj-$(CONFIG_BLK_DEV_SR) += sr_mod.o 1501da177e4SLinus Torvaldsobj-$(CONFIG_CHR_DEV_SG) += sg.o 151daa6eda6SGerd Knorr obj-$(CONFIG_CHR_DEV_SCH) += ch.o 1529927c688SJames Bottomleyobj-$(CONFIG_SCSI_ENCLOSURE) += ses.o 1531da177e4SLinus Torvalds 154e8899fadSJohn Garryobj-$(CONFIG_SCSI_HISI_SAS) += hisi_sas/ 15568274794SBoaz Harrosh 1560caab23eSLinus Torvalds# This goes last, so that "real" scsi devices probe earlier 1570caab23eSLinus Torvaldsobj-$(CONFIG_SCSI_DEBUG) += scsi_debug.o 1582dd951ecSHannes Reineckescsi_mod-y += scsi.o hosts.o scsi_ioctl.o \ 1597689e82eSCornelia Huck scsicam.o scsi_error.o scsi_lib.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 17078011042SChristoph Hellwigscsi_mod-$(CONFIG_BLK_DEV_BSG) += scsi_bsg.o 1711da177e4SLinus Torvalds 17289ae7d70SK. Y. Srinivasanhv_storvsc-y := storvsc_drv.o 17389ae7d70SK. Y. Srinivasan 1741da177e4SLinus Torvaldssd_mod-objs := sd.o 175af55ff67SMartin K. Petersensd_mod-$(CONFIG_BLK_DEV_INTEGRITY) += sd_dif.o 17689d94756SHannes Reineckesd_mod-$(CONFIG_BLK_DEV_ZONED) += sd_zbc.o 177af55ff67SMartin K. Petersen 1781da177e4SLinus Torvaldssr_mod-objs := sr.o sr_ioctl.o sr_vendor.o 1791da177e4SLinus Torvaldsncr53c8xx-flags-$(CONFIG_SCSI_ZALON) \ 1801da177e4SLinus Torvalds := -DCONFIG_NCR53C8XX_PREFETCH -DSCSI_NCR_BIG_ENDIAN \ 1811da177e4SLinus Torvalds -DCONFIG_SCSI_NCR53C8XX_NO_WORD_TRANSFERS 1821da177e4SLinus TorvaldsCFLAGS_ncr53c8xx.o := $(ncr53c8xx-flags-y) $(ncr53c8xx-flags-m) 1831da177e4SLinus Torvaldszalon7xx-objs := zalon.o ncr53c8xx.o 1841da177e4SLinus Torvalds 1851da177e4SLinus Torvalds# Files generated that shall be removed upon make clean 18698079418SMasahiro Yamadaclean-files := 53c700_d.h 53c700_u.h 1871da177e4SLinus Torvalds 1880e5d8b7fSMasahiro Yamada$(obj)/53c700.o: $(obj)/53c700_d.h 1891da177e4SLinus Torvalds 190345e2960SHannes Reinecke$(obj)/scsi_sysfs.o: $(obj)/scsi_devinfo_tbl.c 191345e2960SHannes Reinecke 192345e2960SHannes Reineckequiet_cmd_bflags = GEN $@ 193358fda5fSMartin Wilck cmd_bflags = sed -n 's/.*define *BLIST_\([A-Z0-9_]*\) *.*/BLIST_FLAG_NAME(\1),/p' $< > $@ 194345e2960SHannes Reinecke 19598079418SMasahiro Yamada$(obj)/scsi_devinfo_tbl.c: include/scsi/scsi_devinfo.h FORCE 196345e2960SHannes Reinecke $(call if_changed,bflags) 197345e2960SHannes Reinecke 19898079418SMasahiro Yamadatargets += scsi_devinfo_tbl.c 19998079418SMasahiro Yamada 2001da177e4SLinus Torvalds# If you want to play with the firmware, uncomment 2011da177e4SLinus Torvalds# GENERATE_FIRMWARE := 1 2021da177e4SLinus Torvalds 2031da177e4SLinus Torvaldsifdef GENERATE_FIRMWARE 2041da177e4SLinus Torvalds 2051da177e4SLinus Torvalds$(obj)/53c700_d.h: $(src)/53c700.scr $(src)/script_asm.pl 2061da177e4SLinus Torvalds $(PERL) -s $(src)/script_asm.pl -ncr7x0_family $@ $(@:_d.h=_u.h) < $< 2071da177e4SLinus Torvalds 2081da177e4SLinus Torvaldsendif 209