blob: 93dbe58c47c845ddbe7faf25e540401f67d6c0ab [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#
2# Makefile for linux/drivers/scsi
3#
4# 30 May 2000, Christoph Hellwig <hch@infradead.org>
5# Rewritten to use lists instead of if-statements.
6#
7# 20 Sep 2000, Torben Mathiasen <tmm@image.dk>
8# Changed link order to reflect new scsi initialization.
9#
10# *!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!
11# The link order must be, SCSI Core, SCSI HBA drivers, and
12# lastly SCSI peripheral drivers (disk/tape/cdrom/etc.) to
13# satisfy certain initialization assumptions in the SCSI layer.
14# *!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!
15
16
17CFLAGS_aha152x.o = -DAHA152X_STAT -DAUTOCONF
18CFLAGS_gdth.o = # -DDEBUG_GDTH=2 -D__SERIAL__ -D__COM2__ -DGDTH_STATISTICS
Linus Torvalds1da177e2005-04-16 15:20:36 -070019
Tejun Heo8ae732a2007-12-07 22:36:23 +090020obj-$(CONFIG_PCMCIA) += pcmcia/
Linus Torvalds1da177e2005-04-16 15:20:36 -070021
22obj-$(CONFIG_SCSI) += scsi_mod.o
23
James Bottomley61a7afa2005-08-16 18:27:34 -050024obj-$(CONFIG_RAID_ATTRS) += raid_class.o
25
Linus Torvalds1da177e2005-04-16 15:20:36 -070026# --- NOTE ORDERING HERE ---
27# For kernel non-modular link, transport attributes need to
28# be initialised before drivers
29# --------------------------
30obj-$(CONFIG_SCSI_SPI_ATTRS) += scsi_transport_spi.o
31obj-$(CONFIG_SCSI_FC_ATTRS) += scsi_transport_fc.o
32obj-$(CONFIG_SCSI_ISCSI_ATTRS) += scsi_transport_iscsi.o
Christoph Hellwigc7ebbbc2005-09-09 16:22:50 +020033obj-$(CONFIG_SCSI_SAS_ATTRS) += scsi_transport_sas.o
James Bottomley2908d772006-08-29 09:22:51 -050034obj-$(CONFIG_SCSI_SAS_LIBSAS) += libsas/
FUJITA Tomonori09345f62007-06-27 16:32:39 +090035obj-$(CONFIG_SCSI_SRP_ATTRS) += scsi_transport_srp.o
Chandra Seetharamana6a8d9f2008-05-01 14:49:46 -070036obj-$(CONFIG_SCSI_DH) += device_handler/
Linus Torvalds1da177e2005-04-16 15:20:36 -070037
Robert Love42e9a922008-12-09 15:10:17 -080038obj-$(CONFIG_LIBFC) += libfc/
Vasu Dev9b34ecf2009-03-17 11:42:13 -070039obj-$(CONFIG_LIBFCOE) += fcoe/
Robert Love85b4aa42008-12-09 15:10:24 -080040obj-$(CONFIG_FCOE) += fcoe/
Abhijeet Joglekar5df6d732009-04-17 18:33:26 -070041obj-$(CONFIG_FCOE_FNIC) += fnic/
Narsimhulu Musinic8806b62015-05-29 01:04:01 -070042obj-$(CONFIG_SCSI_SNIC) += snic/
Bhanu Gollapudi853e2bd2011-02-04 12:10:34 -080043obj-$(CONFIG_SCSI_BNX2X_FCOE) += libfc/ fcoe/ bnx2fc/
Dupuis, Chad61d86582017-02-15 06:28:23 -080044obj-$(CONFIG_QEDF) += qedf/
Mike Christie38e1a8f2008-12-02 00:32:12 -060045obj-$(CONFIG_ISCSI_TCP) += libiscsi.o libiscsi_tcp.o iscsi_tcp.o
Or Gerlitz3f1244a2006-05-11 10:03:30 +030046obj-$(CONFIG_INFINIBAND_ISER) += libiscsi.o
Mike Christieaab7a8f2010-08-02 12:46:12 -050047obj-$(CONFIG_ISCSI_BOOT_SYSFS) += iscsi_boot_sysfs.o
Kars de Jonga16efc12007-06-17 14:47:08 +020048obj-$(CONFIG_SCSI_A4000T) += 53c700.o a4000t.o
Kars de Jong45804fb2007-06-17 14:47:09 +020049obj-$(CONFIG_SCSI_ZORRO7XX) += 53c700.o zorro7xx.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070050obj-$(CONFIG_A3000_SCSI) += a3000.o wd33c93.o
51obj-$(CONFIG_A2091_SCSI) += a2091.o wd33c93.o
52obj-$(CONFIG_GVP11_SCSI) += gvp11.o wd33c93.o
53obj-$(CONFIG_MVME147_SCSI) += mvme147.o wd33c93.o
54obj-$(CONFIG_SGIWD93_SCSI) += sgiwd93.o wd33c93.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070055obj-$(CONFIG_ATARI_SCSI) += atari_scsi.o
56obj-$(CONFIG_MAC_SCSI) += mac_scsi.o
Finn Thain6fe07aa2008-04-25 10:06:05 -050057obj-$(CONFIG_SCSI_MAC_ESP) += esp_scsi.o mac_esp.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070058obj-$(CONFIG_SUN3_SCSI) += sun3_scsi.o sun3_scsi_vme.o
Kars de Jong506c7bb2007-06-17 14:47:07 +020059obj-$(CONFIG_MVME16x_SCSI) += 53c700.o mvme16x_scsi.o
Kars de Jong8276b582007-06-17 14:47:06 +020060obj-$(CONFIG_BVME6000_SCSI) += 53c700.o bvme6000_scsi.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070061obj-$(CONFIG_SCSI_SIM710) += 53c700.o sim710.o
62obj-$(CONFIG_SCSI_ADVANSYS) += advansys.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070063obj-$(CONFIG_SCSI_BUSLOGIC) += BusLogic.o
64obj-$(CONFIG_SCSI_DPT_I2O) += dpt_i2o.o
Erich Chen1c57e862006-07-12 08:59:32 -070065obj-$(CONFIG_SCSI_ARCMSR) += arcmsr/
Linus Torvalds1da177e2005-04-16 15:20:36 -070066obj-$(CONFIG_SCSI_AHA152X) += aha152x.o
67obj-$(CONFIG_SCSI_AHA1542) += aha1542.o
68obj-$(CONFIG_SCSI_AHA1740) += aha1740.o
69obj-$(CONFIG_SCSI_AIC7XXX) += aic7xxx/
70obj-$(CONFIG_SCSI_AIC79XX) += aic7xxx/
71obj-$(CONFIG_SCSI_AACRAID) += aacraid/
James Bottomley2908d772006-08-29 09:22:51 -050072obj-$(CONFIG_SCSI_AIC94XX) += aic94xx/
jack wangdbf9bfe2009-10-14 16:19:21 +080073obj-$(CONFIG_SCSI_PM8001) += pm8001/
Dan Williams6f231dd2011-07-02 22:56:22 -070074obj-$(CONFIG_SCSI_ISCI) += isci/
Linus Torvalds1da177e2005-04-16 15:20:36 -070075obj-$(CONFIG_SCSI_IPS) += ips.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070076obj-$(CONFIG_SCSI_FUTURE_DOMAIN)+= fdomain.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070077obj-$(CONFIG_SCSI_GENERIC_NCR5380) += g_NCR5380.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070078obj-$(CONFIG_SCSI_NCR53C406A) += NCR53c406a.o
79obj-$(CONFIG_SCSI_NCR_D700) += 53c700.o NCR_D700.o
80obj-$(CONFIG_SCSI_NCR_Q720) += NCR_Q720_mod.o
81obj-$(CONFIG_SCSI_SYM53C416) += sym53c416.o
82obj-$(CONFIG_SCSI_QLOGIC_FAS) += qlogicfas408.o qlogicfas.o
83obj-$(CONFIG_PCMCIA_QLOGIC) += qlogicfas408.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070084obj-$(CONFIG_SCSI_QLOGIC_1280) += qla1280.o
Andrew Vasquez8e0df4a2006-01-09 10:17:40 -080085obj-$(CONFIG_SCSI_QLA_FC) += qla2xxx/
Randy Dunlap3538a002011-08-31 15:02:00 -070086obj-$(CONFIG_SCSI_QLA_ISCSI) += libiscsi.o qla4xxx/
dea31012005-04-17 16:05:31 -050087obj-$(CONFIG_SCSI_LPFC) += lpfc/
Jing Huang7725ccf2009-09-23 17:46:15 -070088obj-$(CONFIG_SCSI_BFA_FC) += bfa/
Naresh Kumar Innaa3667aa2012-11-15 22:41:18 +053089obj-$(CONFIG_SCSI_CHELSIO_FCOE) += csiostor/
Linus Torvalds1da177e2005-04-16 15:20:36 -070090obj-$(CONFIG_SCSI_DMX3191D) += dmx3191d.o
Stephen M. Cameronedd16362009-12-08 14:09:11 -080091obj-$(CONFIG_SCSI_HPSA) += hpsa.o
Kevin Barnett6c223762016-06-27 16:41:00 -050092obj-$(CONFIG_SCSI_SMARTPQI) += smartpqi/
Linus Torvalds1da177e2005-04-16 15:20:36 -070093obj-$(CONFIG_SCSI_SYM53C8XX_2) += sym53c8xx_2/
94obj-$(CONFIG_SCSI_ZALON) += zalon7xx.o
95obj-$(CONFIG_SCSI_EATA_PIO) += eata_pio.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070096obj-$(CONFIG_SCSI_EATA) += eata.o
97obj-$(CONFIG_SCSI_DC395x) += dc395x.o
Hannes Reinecke3a7e7be2014-11-24 15:37:25 +010098obj-$(CONFIG_SCSI_AM53C974) += esp_scsi.o am53c974.o
Matthew R. Ochsc21e0bb2015-06-09 17:15:52 -050099obj-$(CONFIG_CXLFLASH) += cxlflash/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700100obj-$(CONFIG_MEGARAID_LEGACY) += megaraid.o
101obj-$(CONFIG_MEGARAID_NEWGEN) += megaraid/
Bagalkote, Sreenivasc4a3e0a2005-09-20 17:46:58 -0400102obj-$(CONFIG_MEGARAID_SAS) += megaraid/
Sreekanth Reddyf92363d2012-11-30 07:44:21 +0530103obj-$(CONFIG_SCSI_MPT3SAS) += mpt3sas/
Santosh Yaraganavi7a3e97b2012-02-29 12:11:50 +0530104obj-$(CONFIG_SCSI_UFSHCD) += ufs/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700105obj-$(CONFIG_SCSI_ACARD) += atp870u.o
David S. Miller89a40632007-05-22 23:48:10 -0700106obj-$(CONFIG_SCSI_SUNESP) += esp_scsi.o sun_esp.o
Linus Torvalds1da177e2005-04-16 15:20:36 -0700107obj-$(CONFIG_SCSI_GDTH) += gdth.o
108obj-$(CONFIG_SCSI_INITIO) += initio.o
109obj-$(CONFIG_SCSI_INIA100) += a100u2w.o
110obj-$(CONFIG_SCSI_QLOGICPTI) += qlogicpti.o
Linus Torvalds1da177e2005-04-16 15:20:36 -0700111obj-$(CONFIG_SCSI_MESH) += mesh.o
112obj-$(CONFIG_SCSI_MAC53C94) += mac53c94.o
Linus Torvalds1da177e2005-04-16 15:20:36 -0700113obj-$(CONFIG_BLK_DEV_3W_XXXX_RAID) += 3w-xxxx.o
114obj-$(CONFIG_SCSI_3W_9XXX) += 3w-9xxx.o
adam radfordf6191062009-10-23 14:52:33 -0700115obj-$(CONFIG_SCSI_3W_SAS) += 3w-sas.o
Linus Torvalds1da177e2005-04-16 15:20:36 -0700116obj-$(CONFIG_SCSI_PPA) += ppa.o
117obj-$(CONFIG_SCSI_IMM) += imm.o
Thomas Bogendoerfer352e9212007-05-22 10:13:19 +0200118obj-$(CONFIG_JAZZ_ESP) += esp_scsi.o jazz_esp.o
Thomas Bogendoerfer0bb67f12008-02-01 00:13:34 +0100119obj-$(CONFIG_SUN3X_ESP) += esp_scsi.o sun3x_esp.o
Linus Torvalds1da177e2005-04-16 15:20:36 -0700120obj-$(CONFIG_SCSI_LASI700) += 53c700.o lasi700.o
Thomas Bogendoerferc27d85f2006-12-25 21:32:04 +0100121obj-$(CONFIG_SCSI_SNI_53C710) += 53c700.o sni_53c710.o
Linus Torvalds1da177e2005-04-16 15:20:36 -0700122obj-$(CONFIG_SCSI_NSP32) += nsp32.o
123obj-$(CONFIG_SCSI_IPR) += ipr.o
124obj-$(CONFIG_SCSI_IBMVSCSI) += ibmvscsi/
Bryant G. Ly88a678b2016-06-28 17:05:35 -0500125obj-$(CONFIG_SCSI_IBMVSCSIS) += ibmvscsi_tgt/
Brian King072b91f2008-07-01 13:14:30 -0500126obj-$(CONFIG_SCSI_IBMVFC) += ibmvscsi/
HighPoint Linux Teamede1e6f2006-05-16 14:38:09 +0800127obj-$(CONFIG_SCSI_HPTIOP) += hptiop.o
Jeff Garzik5a25ba12006-09-01 03:12:19 -0400128obj-$(CONFIG_SCSI_STEX) += stex.o
Jeff Garzik2ad52f42009-05-08 16:35:37 -0400129obj-$(CONFIG_SCSI_MVSAS) += mvsas/
Jianyun Lif0c568a2011-05-11 23:22:44 +0800130obj-$(CONFIG_SCSI_MVUMI) += mvumi.o
Geert Uytterhoeven9aea8cb2007-07-21 04:37:47 -0700131obj-$(CONFIG_PS3_ROM) += ps3rom.o
kxie@chelsio.com6f7efaa2010-08-16 20:55:53 -0700132obj-$(CONFIG_SCSI_CXGB3_ISCSI) += libiscsi.o libiscsi_tcp.o cxgbi/
kxie@chelsio.com7b36b6e2010-08-16 20:55:53 -0700133obj-$(CONFIG_SCSI_CXGB4_ISCSI) += libiscsi.o libiscsi_tcp.o cxgbi/
Michael Chancf4e6362009-06-08 18:14:44 -0700134obj-$(CONFIG_SCSI_BNX2_ISCSI) += libiscsi.o bnx2i/
Manish Rangankarace7f462016-12-01 00:21:08 -0800135obj-$(CONFIG_QEDI) += libiscsi.o qedi/
Jayamohan Kallickal6733b392009-09-05 07:36:35 +0530136obj-$(CONFIG_BE2ISCSI) += libiscsi.o be2iscsi/
Bradley Grove26780d92013-08-23 10:35:45 -0400137obj-$(CONFIG_SCSI_ESAS2R) += esas2r/
Anil Ravindranath89a36812009-08-25 17:35:18 -0700138obj-$(CONFIG_SCSI_PMCRAID) += pmcraid.o
Paolo Bonzini4fe74b12012-02-05 12:16:00 +0100139obj-$(CONFIG_SCSI_VIRTIO) += virtio_scsi.o
Alok Kataria851b1642009-10-13 14:51:05 -0700140obj-$(CONFIG_VMWARE_PVSCSI) += vmw_pvscsi.o
Juergen Gross8beb8d42014-08-28 06:44:11 +0200141obj-$(CONFIG_XEN_SCSI_FRONTEND) += xen-scsifront.o
K. Y. Srinivasan89ae7d72012-02-09 14:14:48 -0800142obj-$(CONFIG_HYPERV_STORAGE) += hv_storvsc.o
Ondrej Zary48a31032014-11-24 23:24:41 +0100143obj-$(CONFIG_SCSI_WD719X) += wd719x.o
Linus Torvalds1da177e2005-04-16 15:20:36 -0700144
145obj-$(CONFIG_ARM) += arm/
146
147obj-$(CONFIG_CHR_DEV_ST) += st.o
148obj-$(CONFIG_CHR_DEV_OSST) += osst.o
149obj-$(CONFIG_BLK_DEV_SD) += sd_mod.o
150obj-$(CONFIG_BLK_DEV_SR) += sr_mod.o
151obj-$(CONFIG_CHR_DEV_SG) += sg.o
Gerd Knorr daa6eda2005-05-10 10:59:13 +0200152obj-$(CONFIG_CHR_DEV_SCH) += ch.o
James Bottomley9927c682008-02-03 15:48:56 -0600153obj-$(CONFIG_SCSI_ENCLOSURE) += ses.o
Linus Torvalds1da177e2005-04-16 15:20:36 -0700154
Boaz Harrosh68274792009-01-25 17:24:14 +0200155obj-$(CONFIG_SCSI_OSD_INITIATOR) += osd/
John Garrye8899fa2015-11-18 00:50:30 +0800156obj-$(CONFIG_SCSI_HISI_SAS) += hisi_sas/
Boaz Harrosh68274792009-01-25 17:24:14 +0200157
Linus Torvalds0caab232006-03-22 17:39:38 -0800158# This goes last, so that "real" scsi devices probe earlier
159obj-$(CONFIG_SCSI_DEBUG) += scsi_debug.o
Hannes Reinecke2dd951e2015-01-08 07:43:48 +0100160scsi_mod-y += scsi.o hosts.o scsi_ioctl.o \
Cornelia Huck7689e822007-07-09 11:59:59 -0700161 scsicam.o scsi_error.o scsi_lib.o
Bart Van Assche07e38422015-05-08 10:07:48 +0200162scsi_mod-y += scsi_common.o
Hannes Reinecke2dd951e2015-01-08 07:43:48 +0100163scsi_mod-$(CONFIG_SCSI_CONSTANTS) += constants.o
Cornelia Huck7689e822007-07-09 11:59:59 -0700164scsi_mod-$(CONFIG_SCSI_DMA) += scsi_lib_dma.o
165scsi_mod-y += scsi_scan.o scsi_sysfs.o scsi_devinfo.o
James Smart84314fd2006-08-18 17:30:09 -0400166scsi_mod-$(CONFIG_SCSI_NETLINK) += scsi_netlink.o
Linus Torvalds1da177e2005-04-16 15:20:36 -0700167scsi_mod-$(CONFIG_SYSCTL) += scsi_sysctl.o
168scsi_mod-$(CONFIG_SCSI_PROC_FS) += scsi_proc.o
Bart Van Assche0eebd002017-04-26 13:47:57 -0700169scsi_mod-$(CONFIG_BLK_DEBUG_FS) += scsi_debugfs.o
Hannes Reineckeded85c12015-01-08 07:43:42 +0100170scsi_mod-y += scsi_trace.o scsi_logging.o
Rafael J. Wysockiaa338602011-02-11 00:06:54 +0100171scsi_mod-$(CONFIG_PM) += scsi_pm.o
Christoph Hellwig086b91d2015-08-27 14:16:57 +0200172scsi_mod-$(CONFIG_SCSI_DH) += scsi_dh.o
Linus Torvalds1da177e2005-04-16 15:20:36 -0700173
K. Y. Srinivasan89ae7d72012-02-09 14:14:48 -0800174hv_storvsc-y := storvsc_drv.o
175
Linus Torvalds1da177e2005-04-16 15:20:36 -0700176sd_mod-objs := sd.o
Martin K. Petersenaf55ff62008-07-17 04:28:35 -0400177sd_mod-$(CONFIG_BLK_DEV_INTEGRITY) += sd_dif.o
Hannes Reinecke89d94752016-10-18 15:40:34 +0900178sd_mod-$(CONFIG_BLK_DEV_ZONED) += sd_zbc.o
Martin K. Petersenaf55ff62008-07-17 04:28:35 -0400179
Linus Torvalds1da177e2005-04-16 15:20:36 -0700180sr_mod-objs := sr.o sr_ioctl.o sr_vendor.o
181ncr53c8xx-flags-$(CONFIG_SCSI_ZALON) \
182 := -DCONFIG_NCR53C8XX_PREFETCH -DSCSI_NCR_BIG_ENDIAN \
183 -DCONFIG_SCSI_NCR53C8XX_NO_WORD_TRANSFERS
184CFLAGS_ncr53c8xx.o := $(ncr53c8xx-flags-y) $(ncr53c8xx-flags-m)
185zalon7xx-objs := zalon.o ncr53c8xx.o
186NCR_Q720_mod-objs := NCR_Q720.o ncr53c8xx.o
Al Viro64194062006-01-12 01:06:14 -0800187oktagon_esp_mod-objs := oktagon_esp.o oktagon_io.o
Linus Torvalds1da177e2005-04-16 15:20:36 -0700188
189# Files generated that shall be removed upon make clean
Christoph Hellwig565bae62007-05-11 16:30:29 +0200190clean-files := 53c700_d.h 53c700_u.h
Linus Torvalds1da177e2005-04-16 15:20:36 -0700191
Linus Torvalds1da177e2005-04-16 15:20:36 -0700192$(obj)/53c700.o $(MODVERDIR)/$(obj)/53c700.ver: $(obj)/53c700_d.h
193
194# If you want to play with the firmware, uncomment
195# GENERATE_FIRMWARE := 1
196
197ifdef GENERATE_FIRMWARE
198
Linus Torvalds1da177e2005-04-16 15:20:36 -0700199$(obj)/53c700_d.h: $(src)/53c700.scr $(src)/script_asm.pl
200 $(PERL) -s $(src)/script_asm.pl -ncr7x0_family $@ $(@:_d.h=_u.h) < $<
201
202endif