xref: /kernel/linux/linux-6.6/drivers/scsi/Makefile (revision 62306a36)
162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci#
362306a36Sopenharmony_ci# Makefile for linux/drivers/scsi
462306a36Sopenharmony_ci#
562306a36Sopenharmony_ci# 30 May 2000, Christoph Hellwig <hch@infradead.org>
662306a36Sopenharmony_ci# Rewritten to use lists instead of if-statements.
762306a36Sopenharmony_ci#
862306a36Sopenharmony_ci# 20 Sep 2000, Torben Mathiasen <tmm@image.dk>
962306a36Sopenharmony_ci# Changed link order to reflect new scsi initialization.
1062306a36Sopenharmony_ci#
1162306a36Sopenharmony_ci# *!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!
1262306a36Sopenharmony_ci# The link order must be, SCSI Core, SCSI HBA drivers, and
1362306a36Sopenharmony_ci# lastly SCSI peripheral drivers (disk/tape/cdrom/etc.) to
1462306a36Sopenharmony_ci# satisfy certain initialization assumptions in the SCSI layer.
1562306a36Sopenharmony_ci# *!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!*!
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_ci
1862306a36Sopenharmony_ciCFLAGS_aha152x.o =   -DAHA152X_STAT -DAUTOCONF
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_ciobj-$(CONFIG_PCMCIA)		+= pcmcia/
2162306a36Sopenharmony_ci
2262306a36Sopenharmony_ciobj-$(CONFIG_SCSI)		+= scsi_mod.o
2362306a36Sopenharmony_ciobj-$(CONFIG_SCSI_COMMON)	+= scsi_common.o
2462306a36Sopenharmony_ci
2562306a36Sopenharmony_ciobj-$(CONFIG_RAID_ATTRS)	+= raid_class.o
2662306a36Sopenharmony_ci
2762306a36Sopenharmony_ci# --- NOTE ORDERING HERE ---
2862306a36Sopenharmony_ci# For kernel non-modular link, transport attributes need to
2962306a36Sopenharmony_ci# be initialised before drivers
3062306a36Sopenharmony_ci# --------------------------
3162306a36Sopenharmony_ciobj-$(CONFIG_SCSI_SPI_ATTRS)	+= scsi_transport_spi.o
3262306a36Sopenharmony_ciobj-$(CONFIG_SCSI_FC_ATTRS) 	+= scsi_transport_fc.o
3362306a36Sopenharmony_ciobj-$(CONFIG_SCSI_ISCSI_ATTRS)	+= scsi_transport_iscsi.o
3462306a36Sopenharmony_ciobj-$(CONFIG_SCSI_SAS_ATTRS)	+= scsi_transport_sas.o
3562306a36Sopenharmony_ciobj-$(CONFIG_SCSI_SAS_LIBSAS)	+= libsas/
3662306a36Sopenharmony_ciobj-$(CONFIG_SCSI_SRP_ATTRS)	+= scsi_transport_srp.o
3762306a36Sopenharmony_ciobj-$(CONFIG_SCSI_DH)		+= device_handler/
3862306a36Sopenharmony_ci
3962306a36Sopenharmony_ciobj-$(CONFIG_LIBFC)		+= libfc/
4062306a36Sopenharmony_ciobj-$(CONFIG_LIBFCOE)		+= fcoe/
4162306a36Sopenharmony_ciobj-$(CONFIG_FCOE)		+= fcoe/
4262306a36Sopenharmony_ciobj-$(CONFIG_FCOE_FNIC)		+= fnic/
4362306a36Sopenharmony_ciobj-$(CONFIG_SCSI_SNIC)		+= snic/
4462306a36Sopenharmony_ciobj-$(CONFIG_SCSI_BNX2X_FCOE)	+= libfc/ fcoe/ bnx2fc/
4562306a36Sopenharmony_ciobj-$(CONFIG_QEDF)		+= qedf/
4662306a36Sopenharmony_ciobj-$(CONFIG_ISCSI_TCP) 	+= libiscsi.o	libiscsi_tcp.o iscsi_tcp.o
4762306a36Sopenharmony_ciobj-$(CONFIG_INFINIBAND_ISER) 	+= libiscsi.o
4862306a36Sopenharmony_ciobj-$(CONFIG_ISCSI_BOOT_SYSFS)	+= iscsi_boot_sysfs.o
4962306a36Sopenharmony_ciobj-$(CONFIG_SCSI_A4000T)	+= 53c700.o	a4000t.o
5062306a36Sopenharmony_ciobj-$(CONFIG_SCSI_ZORRO7XX)	+= 53c700.o	zorro7xx.o
5162306a36Sopenharmony_ciobj-$(CONFIG_SCSI_ZORRO_ESP)	+= esp_scsi.o	zorro_esp.o
5262306a36Sopenharmony_ciobj-$(CONFIG_A3000_SCSI)	+= a3000.o	wd33c93.o
5362306a36Sopenharmony_ciobj-$(CONFIG_A2091_SCSI)	+= a2091.o	wd33c93.o
5462306a36Sopenharmony_ciobj-$(CONFIG_GVP11_SCSI)	+= gvp11.o	wd33c93.o
5562306a36Sopenharmony_ciobj-$(CONFIG_MVME147_SCSI)	+= mvme147.o	wd33c93.o
5662306a36Sopenharmony_ciobj-$(CONFIG_SGIWD93_SCSI)	+= sgiwd93.o	wd33c93.o
5762306a36Sopenharmony_ciobj-$(CONFIG_ATARI_SCSI)	+= atari_scsi.o
5862306a36Sopenharmony_ciobj-$(CONFIG_MAC_SCSI)		+= mac_scsi.o
5962306a36Sopenharmony_ciobj-$(CONFIG_SCSI_MAC_ESP)	+= esp_scsi.o	mac_esp.o
6062306a36Sopenharmony_ciobj-$(CONFIG_SUN3_SCSI)		+= sun3_scsi.o  sun3_scsi_vme.o
6162306a36Sopenharmony_ciobj-$(CONFIG_MVME16x_SCSI)	+= 53c700.o	mvme16x_scsi.o
6262306a36Sopenharmony_ciobj-$(CONFIG_BVME6000_SCSI)	+= 53c700.o	bvme6000_scsi.o
6362306a36Sopenharmony_ciobj-$(CONFIG_SCSI_SIM710)	+= 53c700.o	sim710.o
6462306a36Sopenharmony_ciobj-$(CONFIG_SCSI_ADVANSYS)	+= advansys.o
6562306a36Sopenharmony_ciobj-$(CONFIG_SCSI_BUSLOGIC)	+= BusLogic.o
6662306a36Sopenharmony_ciobj-$(CONFIG_SCSI_ARCMSR)	+= arcmsr/
6762306a36Sopenharmony_ciobj-$(CONFIG_SCSI_AHA152X)	+= aha152x.o
6862306a36Sopenharmony_ciobj-$(CONFIG_SCSI_AHA1542)	+= aha1542.o
6962306a36Sopenharmony_ciobj-$(CONFIG_SCSI_AHA1740)	+= aha1740.o
7062306a36Sopenharmony_ciobj-$(CONFIG_SCSI_AIC7XXX)	+= aic7xxx/
7162306a36Sopenharmony_ciobj-$(CONFIG_SCSI_AIC79XX)	+= aic7xxx/
7262306a36Sopenharmony_ciobj-$(CONFIG_SCSI_AACRAID)	+= aacraid/
7362306a36Sopenharmony_ciobj-$(CONFIG_SCSI_AIC94XX)	+= aic94xx/
7462306a36Sopenharmony_ciobj-$(CONFIG_SCSI_PM8001)	+= pm8001/
7562306a36Sopenharmony_ciobj-$(CONFIG_SCSI_ISCI)		+= isci/
7662306a36Sopenharmony_ciobj-$(CONFIG_SCSI_IPS)		+= ips.o
7762306a36Sopenharmony_ciobj-$(CONFIG_SCSI_FDOMAIN)	+= fdomain.o
7862306a36Sopenharmony_ciobj-$(CONFIG_SCSI_FDOMAIN_PCI)	+= fdomain_pci.o
7962306a36Sopenharmony_ciobj-$(CONFIG_SCSI_FDOMAIN_ISA)	+= fdomain_isa.o
8062306a36Sopenharmony_ciobj-$(CONFIG_SCSI_GENERIC_NCR5380) += g_NCR5380.o
8162306a36Sopenharmony_ciobj-$(CONFIG_SCSI_QLOGIC_FAS)	+= qlogicfas408.o	qlogicfas.o
8262306a36Sopenharmony_ciobj-$(CONFIG_PCMCIA_QLOGIC)	+= qlogicfas408.o
8362306a36Sopenharmony_ciobj-$(CONFIG_SCSI_QLOGIC_1280)	+= qla1280.o 
8462306a36Sopenharmony_ciobj-$(CONFIG_SCSI_QLA_FC)	+= qla2xxx/
8562306a36Sopenharmony_ciobj-$(CONFIG_SCSI_QLA_ISCSI)	+= libiscsi.o qla4xxx/
8662306a36Sopenharmony_ciobj-$(CONFIG_SCSI_LPFC)		+= lpfc/
8762306a36Sopenharmony_ciobj-$(CONFIG_SCSI_EFCT)		+= elx/
8862306a36Sopenharmony_ciobj-$(CONFIG_SCSI_BFA_FC)	+= bfa/
8962306a36Sopenharmony_ciobj-$(CONFIG_SCSI_CHELSIO_FCOE)	+= csiostor/
9062306a36Sopenharmony_ciobj-$(CONFIG_SCSI_DMX3191D)	+= dmx3191d.o
9162306a36Sopenharmony_ciobj-$(CONFIG_SCSI_HPSA)		+= hpsa.o
9262306a36Sopenharmony_ciobj-$(CONFIG_SCSI_SMARTPQI)	+= smartpqi/
9362306a36Sopenharmony_ciobj-$(CONFIG_SCSI_SYM53C8XX_2)	+= sym53c8xx_2/
9462306a36Sopenharmony_ciobj-$(CONFIG_SCSI_ZALON)	+= zalon7xx.o
9562306a36Sopenharmony_ciobj-$(CONFIG_SCSI_DC395x)	+= dc395x.o
9662306a36Sopenharmony_ciobj-$(CONFIG_SCSI_AM53C974)	+= esp_scsi.o	am53c974.o
9762306a36Sopenharmony_ciobj-$(CONFIG_CXLFLASH)		+= cxlflash/
9862306a36Sopenharmony_ciobj-$(CONFIG_MEGARAID_LEGACY)	+= megaraid.o
9962306a36Sopenharmony_ciobj-$(CONFIG_MEGARAID_NEWGEN)	+= megaraid/
10062306a36Sopenharmony_ciobj-$(CONFIG_MEGARAID_SAS)	+= megaraid/
10162306a36Sopenharmony_ciobj-$(CONFIG_SCSI_MPT3SAS)	+= mpt3sas/
10262306a36Sopenharmony_ciobj-$(CONFIG_SCSI_MPI3MR)	+= mpi3mr/
10362306a36Sopenharmony_ciobj-$(CONFIG_SCSI_ACARD)	+= atp870u.o
10462306a36Sopenharmony_ciobj-$(CONFIG_SCSI_SUNESP)	+= esp_scsi.o	sun_esp.o
10562306a36Sopenharmony_ciobj-$(CONFIG_SCSI_INITIO)	+= initio.o
10662306a36Sopenharmony_ciobj-$(CONFIG_SCSI_INIA100)	+= a100u2w.o
10762306a36Sopenharmony_ciobj-$(CONFIG_SCSI_QLOGICPTI)	+= qlogicpti.o
10862306a36Sopenharmony_ciobj-$(CONFIG_SCSI_MESH)		+= mesh.o
10962306a36Sopenharmony_ciobj-$(CONFIG_SCSI_MAC53C94)	+= mac53c94.o
11062306a36Sopenharmony_ciobj-$(CONFIG_SCSI_MYRB)		+= myrb.o
11162306a36Sopenharmony_ciobj-$(CONFIG_SCSI_MYRS)		+= myrs.o
11262306a36Sopenharmony_ciobj-$(CONFIG_BLK_DEV_3W_XXXX_RAID) += 3w-xxxx.o
11362306a36Sopenharmony_ciobj-$(CONFIG_SCSI_3W_9XXX)	+= 3w-9xxx.o
11462306a36Sopenharmony_ciobj-$(CONFIG_SCSI_3W_SAS)	+= 3w-sas.o
11562306a36Sopenharmony_ciobj-$(CONFIG_SCSI_PPA)		+= ppa.o
11662306a36Sopenharmony_ciobj-$(CONFIG_SCSI_IMM)		+= imm.o
11762306a36Sopenharmony_ciobj-$(CONFIG_JAZZ_ESP)		+= esp_scsi.o	jazz_esp.o
11862306a36Sopenharmony_ciobj-$(CONFIG_SUN3X_ESP)		+= esp_scsi.o	sun3x_esp.o
11962306a36Sopenharmony_ciobj-$(CONFIG_SCSI_LASI700)	+= 53c700.o lasi700.o
12062306a36Sopenharmony_ciobj-$(CONFIG_SCSI_SNI_53C710)	+= 53c700.o sni_53c710.o
12162306a36Sopenharmony_ciobj-$(CONFIG_SCSI_NSP32)	+= nsp32.o
12262306a36Sopenharmony_ciobj-$(CONFIG_SCSI_IPR)		+= ipr.o
12362306a36Sopenharmony_ciobj-$(CONFIG_SCSI_IBMVSCSI)	+= ibmvscsi/
12462306a36Sopenharmony_ciobj-$(CONFIG_SCSI_IBMVSCSIS)	+= ibmvscsi_tgt/
12562306a36Sopenharmony_ciobj-$(CONFIG_SCSI_IBMVFC)	+= ibmvscsi/
12662306a36Sopenharmony_ciobj-$(CONFIG_SCSI_HPTIOP)	+= hptiop.o
12762306a36Sopenharmony_ciobj-$(CONFIG_SCSI_STEX)		+= stex.o
12862306a36Sopenharmony_ciobj-$(CONFIG_SCSI_MVSAS)	+= mvsas/
12962306a36Sopenharmony_ciobj-$(CONFIG_SCSI_MVUMI)	+= mvumi.o
13062306a36Sopenharmony_ciobj-$(CONFIG_PS3_ROM)		+= ps3rom.o
13162306a36Sopenharmony_ciobj-$(CONFIG_SCSI_CXGB3_ISCSI)	+= libiscsi.o libiscsi_tcp.o cxgbi/
13262306a36Sopenharmony_ciobj-$(CONFIG_SCSI_CXGB4_ISCSI)	+= libiscsi.o libiscsi_tcp.o cxgbi/
13362306a36Sopenharmony_ciobj-$(CONFIG_SCSI_BNX2_ISCSI)	+= libiscsi.o bnx2i/
13462306a36Sopenharmony_ciobj-$(CONFIG_QEDI)          += libiscsi.o qedi/
13562306a36Sopenharmony_ciobj-$(CONFIG_BE2ISCSI)		+= libiscsi.o be2iscsi/
13662306a36Sopenharmony_ciobj-$(CONFIG_SCSI_ESAS2R)	+= esas2r/
13762306a36Sopenharmony_ciobj-$(CONFIG_SCSI_PMCRAID)	+= pmcraid.o
13862306a36Sopenharmony_ciobj-$(CONFIG_SCSI_VIRTIO)	+= virtio_scsi.o
13962306a36Sopenharmony_ciobj-$(CONFIG_VMWARE_PVSCSI)	+= vmw_pvscsi.o
14062306a36Sopenharmony_ciobj-$(CONFIG_XEN_SCSI_FRONTEND)	+= xen-scsifront.o
14162306a36Sopenharmony_ciobj-$(CONFIG_HYPERV_STORAGE)	+= hv_storvsc.o
14262306a36Sopenharmony_ciobj-$(CONFIG_SCSI_WD719X)	+= wd719x.o
14362306a36Sopenharmony_ci
14462306a36Sopenharmony_ciobj-$(CONFIG_ARM)		+= arm/
14562306a36Sopenharmony_ci
14662306a36Sopenharmony_ciobj-$(CONFIG_CHR_DEV_ST)	+= st.o
14762306a36Sopenharmony_ciobj-$(CONFIG_BLK_DEV_SD)	+= sd_mod.o
14862306a36Sopenharmony_ciobj-$(CONFIG_BLK_DEV_SR)	+= sr_mod.o
14962306a36Sopenharmony_ciobj-$(CONFIG_CHR_DEV_SG)	+= sg.o
15062306a36Sopenharmony_ciobj-$(CONFIG_CHR_DEV_SCH)	+= ch.o
15162306a36Sopenharmony_ciobj-$(CONFIG_SCSI_ENCLOSURE)	+= ses.o
15262306a36Sopenharmony_ci
15362306a36Sopenharmony_ciobj-$(CONFIG_SCSI_HISI_SAS) += hisi_sas/
15462306a36Sopenharmony_ci
15562306a36Sopenharmony_ci# This goes last, so that "real" scsi devices probe earlier
15662306a36Sopenharmony_ciobj-$(CONFIG_SCSI_DEBUG)	+= scsi_debug.o
15762306a36Sopenharmony_ciscsi_mod-y			+= scsi.o hosts.o scsi_ioctl.o \
15862306a36Sopenharmony_ci				   scsicam.o scsi_error.o scsi_lib.o
15962306a36Sopenharmony_ciscsi_mod-$(CONFIG_SCSI_CONSTANTS) += constants.o
16062306a36Sopenharmony_ciscsi_mod-$(CONFIG_SCSI_DMA)	+= scsi_lib_dma.o
16162306a36Sopenharmony_ciscsi_mod-y			+= scsi_scan.o scsi_sysfs.o scsi_devinfo.o
16262306a36Sopenharmony_ciscsi_mod-$(CONFIG_SCSI_NETLINK)	+= scsi_netlink.o
16362306a36Sopenharmony_ciscsi_mod-$(CONFIG_SYSCTL)	+= scsi_sysctl.o
16462306a36Sopenharmony_ciscsi_mod-$(CONFIG_SCSI_PROC_FS)	+= scsi_proc.o
16562306a36Sopenharmony_ciscsi_mod-$(CONFIG_BLK_DEBUG_FS)	+= scsi_debugfs.o
16662306a36Sopenharmony_ciscsi_mod-y			+= scsi_trace.o scsi_logging.o
16762306a36Sopenharmony_ciscsi_mod-$(CONFIG_PM)		+= scsi_pm.o
16862306a36Sopenharmony_ciscsi_mod-$(CONFIG_SCSI_DH)	+= scsi_dh.o
16962306a36Sopenharmony_ciscsi_mod-$(CONFIG_BLK_DEV_BSG)	+= scsi_bsg.o
17062306a36Sopenharmony_ci
17162306a36Sopenharmony_cihv_storvsc-y			:= storvsc_drv.o
17262306a36Sopenharmony_ci
17362306a36Sopenharmony_cisd_mod-objs	:= sd.o
17462306a36Sopenharmony_cisd_mod-$(CONFIG_BLK_DEV_INTEGRITY) += sd_dif.o
17562306a36Sopenharmony_cisd_mod-$(CONFIG_BLK_DEV_ZONED) += sd_zbc.o
17662306a36Sopenharmony_ci
17762306a36Sopenharmony_cisr_mod-objs	:= sr.o sr_ioctl.o sr_vendor.o
17862306a36Sopenharmony_cincr53c8xx-flags-$(CONFIG_SCSI_ZALON) \
17962306a36Sopenharmony_ci		:= -DCONFIG_NCR53C8XX_PREFETCH -DSCSI_NCR_BIG_ENDIAN \
18062306a36Sopenharmony_ci			-DCONFIG_SCSI_NCR53C8XX_NO_WORD_TRANSFERS
18162306a36Sopenharmony_ciCFLAGS_ncr53c8xx.o	:= $(ncr53c8xx-flags-y) $(ncr53c8xx-flags-m)
18262306a36Sopenharmony_cizalon7xx-objs	:= zalon.o ncr53c8xx.o
18362306a36Sopenharmony_ci
18462306a36Sopenharmony_ci# Files generated that shall be removed upon make clean
18562306a36Sopenharmony_ciclean-files :=	53c700_d.h 53c700_u.h
18662306a36Sopenharmony_ci
18762306a36Sopenharmony_ci$(obj)/53c700.o: $(obj)/53c700_d.h
18862306a36Sopenharmony_ci
18962306a36Sopenharmony_ci$(obj)/scsi_sysfs.o: $(obj)/scsi_devinfo_tbl.c
19062306a36Sopenharmony_ci
19162306a36Sopenharmony_ciquiet_cmd_bflags = GEN     $@
19262306a36Sopenharmony_ci	cmd_bflags = sed -n 's/.*define *BLIST_\([A-Z0-9_]*\) *.*/BLIST_FLAG_NAME(\1),/p' $< > $@
19362306a36Sopenharmony_ci
19462306a36Sopenharmony_ci$(obj)/scsi_devinfo_tbl.c: include/scsi/scsi_devinfo.h FORCE
19562306a36Sopenharmony_ci	$(call if_changed,bflags)
19662306a36Sopenharmony_ci
19762306a36Sopenharmony_citargets +=  scsi_devinfo_tbl.c
19862306a36Sopenharmony_ci
19962306a36Sopenharmony_ci# If you want to play with the firmware, uncomment
20062306a36Sopenharmony_ci# GENERATE_FIRMWARE := 1
20162306a36Sopenharmony_ci
20262306a36Sopenharmony_ciifdef GENERATE_FIRMWARE
20362306a36Sopenharmony_ci
20462306a36Sopenharmony_ci$(obj)/53c700_d.h: $(src)/53c700.scr $(src)/script_asm.pl
20562306a36Sopenharmony_ci	$(PERL) -s $(src)/script_asm.pl -ncr7x0_family $@ $(@:_d.h=_u.h) < $<
20662306a36Sopenharmony_ci
20762306a36Sopenharmony_ciendif
208