blob: 79ecf4ebe6ebea59b3b662f88ae6fae2d15a526c [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
19CFLAGS_seagate.o = -DARBITRATE -DPARITY -DSEAGATE_USE_ASM
20
21subdir-$(CONFIG_PCMCIA) += pcmcia
22
23obj-$(CONFIG_SCSI) += scsi_mod.o
FUJITA Tomonori0d2db302006-11-16 19:24:18 +090024obj-$(CONFIG_SCSI_TGT) += scsi_tgt.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070025
James Bottomley61a7afa2005-08-16 18:27:34 -050026obj-$(CONFIG_RAID_ATTRS) += raid_class.o
27
Linus Torvalds1da177e2005-04-16 15:20:36 -070028# --- 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
Christoph Hellwigc7ebbbc2005-09-09 16:22:50 +020035obj-$(CONFIG_SCSI_SAS_ATTRS) += scsi_transport_sas.o
James Bottomley2908d772006-08-29 09:22:51 -050036obj-$(CONFIG_SCSI_SAS_LIBSAS) += libsas/
Linus Torvalds1da177e2005-04-16 15:20:36 -070037
Mike Christie7996a772006-04-06 21:13:41 -050038obj-$(CONFIG_ISCSI_TCP) += libiscsi.o iscsi_tcp.o
Or Gerlitz3f1244a2006-05-11 10:03:30 +030039obj-$(CONFIG_INFINIBAND_ISER) += libiscsi.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070040obj-$(CONFIG_SCSI_AMIGA7XX) += amiga7xx.o 53c7xx.o
41obj-$(CONFIG_A3000_SCSI) += a3000.o wd33c93.o
42obj-$(CONFIG_A2091_SCSI) += a2091.o wd33c93.o
43obj-$(CONFIG_GVP11_SCSI) += gvp11.o wd33c93.o
44obj-$(CONFIG_MVME147_SCSI) += mvme147.o wd33c93.o
45obj-$(CONFIG_SGIWD93_SCSI) += sgiwd93.o wd33c93.o
46obj-$(CONFIG_CYBERSTORM_SCSI) += NCR53C9x.o cyberstorm.o
47obj-$(CONFIG_CYBERSTORMII_SCSI) += NCR53C9x.o cyberstormII.o
48obj-$(CONFIG_BLZ2060_SCSI) += NCR53C9x.o blz2060.o
49obj-$(CONFIG_BLZ1230_SCSI) += NCR53C9x.o blz1230.o
50obj-$(CONFIG_FASTLANE_SCSI) += NCR53C9x.o fastlane.o
Al Viro64194062006-01-12 01:06:14 -080051obj-$(CONFIG_OKTAGON_SCSI) += NCR53C9x.o oktagon_esp_mod.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070052obj-$(CONFIG_ATARI_SCSI) += atari_scsi.o
53obj-$(CONFIG_MAC_SCSI) += mac_scsi.o
54obj-$(CONFIG_SCSI_MAC_ESP) += mac_esp.o NCR53C9x.o
55obj-$(CONFIG_SUN3_SCSI) += sun3_scsi.o sun3_scsi_vme.o
56obj-$(CONFIG_MVME16x_SCSI) += mvme16x.o 53c7xx.o
57obj-$(CONFIG_BVME6000_SCSI) += bvme6000.o 53c7xx.o
58obj-$(CONFIG_SCSI_SIM710) += 53c700.o sim710.o
59obj-$(CONFIG_SCSI_ADVANSYS) += advansys.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070060obj-$(CONFIG_SCSI_PSI240I) += psi240i.o
61obj-$(CONFIG_SCSI_BUSLOGIC) += BusLogic.o
62obj-$(CONFIG_SCSI_DPT_I2O) += dpt_i2o.o
63obj-$(CONFIG_SCSI_U14_34F) += u14-34f.o
Erich Chen1c57e862006-07-12 08:59:32 -070064obj-$(CONFIG_SCSI_ARCMSR) += arcmsr/
Linus Torvalds1da177e2005-04-16 15:20:36 -070065obj-$(CONFIG_SCSI_ULTRASTOR) += ultrastor.o
66obj-$(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/
72obj-$(CONFIG_SCSI_AIC7XXX_OLD) += aic7xxx_old.o
James Bottomley2908d772006-08-29 09:22:51 -050073obj-$(CONFIG_SCSI_AIC94XX) += aic94xx/
Linus Torvalds1da177e2005-04-16 15:20:36 -070074obj-$(CONFIG_SCSI_IPS) += ips.o
75obj-$(CONFIG_SCSI_FD_MCS) += fd_mcs.o
76obj-$(CONFIG_SCSI_FUTURE_DOMAIN)+= fdomain.o
77obj-$(CONFIG_SCSI_IN2000) += in2000.o
78obj-$(CONFIG_SCSI_GENERIC_NCR5380) += g_NCR5380.o
79obj-$(CONFIG_SCSI_GENERIC_NCR5380_MMIO) += g_NCR5380_mmio.o
80obj-$(CONFIG_SCSI_NCR53C406A) += NCR53c406a.o
81obj-$(CONFIG_SCSI_NCR_D700) += 53c700.o NCR_D700.o
82obj-$(CONFIG_SCSI_NCR_Q720) += NCR_Q720_mod.o
83obj-$(CONFIG_SCSI_SYM53C416) += sym53c416.o
84obj-$(CONFIG_SCSI_QLOGIC_FAS) += qlogicfas408.o qlogicfas.o
85obj-$(CONFIG_PCMCIA_QLOGIC) += qlogicfas408.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070086obj-$(CONFIG_SCSI_QLOGIC_1280) += qla1280.o
Andrew Vasquez8e0df4a2006-01-09 10:17:40 -080087obj-$(CONFIG_SCSI_QLA_FC) += qla2xxx/
David Somayajuluafaf5a22006-09-19 10:28:00 -070088obj-$(CONFIG_SCSI_QLA_ISCSI) += qla4xxx/
dea31012005-04-17 16:05:31 -050089obj-$(CONFIG_SCSI_LPFC) += lpfc/
Linus Torvalds1da177e2005-04-16 15:20:36 -070090obj-$(CONFIG_SCSI_PAS16) += pas16.o
91obj-$(CONFIG_SCSI_SEAGATE) += seagate.o
92obj-$(CONFIG_SCSI_FD_8xx) += seagate.o
93obj-$(CONFIG_SCSI_T128) += t128.o
94obj-$(CONFIG_SCSI_DMX3191D) += dmx3191d.o
95obj-$(CONFIG_SCSI_DTC3280) += dtc.o
96obj-$(CONFIG_SCSI_SYM53C8XX_2) += sym53c8xx_2/
97obj-$(CONFIG_SCSI_ZALON) += zalon7xx.o
98obj-$(CONFIG_SCSI_EATA_PIO) += eata_pio.o
99obj-$(CONFIG_SCSI_7000FASST) += wd7000.o
100obj-$(CONFIG_SCSI_MCA_53C9X) += NCR53C9x.o mca_53c9x.o
101obj-$(CONFIG_SCSI_IBMMCA) += ibmmca.o
102obj-$(CONFIG_SCSI_EATA) += eata.o
103obj-$(CONFIG_SCSI_DC395x) += dc395x.o
104obj-$(CONFIG_SCSI_DC390T) += tmscsim.o
105obj-$(CONFIG_MEGARAID_LEGACY) += megaraid.o
106obj-$(CONFIG_MEGARAID_NEWGEN) += megaraid/
Bagalkote, Sreenivasc4a3e0a2005-09-20 17:46:58 -0400107obj-$(CONFIG_MEGARAID_SAS) += megaraid/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700108obj-$(CONFIG_SCSI_ACARD) += atp870u.o
109obj-$(CONFIG_SCSI_SUNESP) += esp.o
110obj-$(CONFIG_SCSI_GDTH) += gdth.o
111obj-$(CONFIG_SCSI_INITIO) += initio.o
112obj-$(CONFIG_SCSI_INIA100) += a100u2w.o
113obj-$(CONFIG_SCSI_QLOGICPTI) += qlogicpti.o
114obj-$(CONFIG_BLK_DEV_IDESCSI) += ide-scsi.o
115obj-$(CONFIG_SCSI_MESH) += mesh.o
116obj-$(CONFIG_SCSI_MAC53C94) += mac53c94.o
117obj-$(CONFIG_SCSI_PLUTO) += pluto.o
118obj-$(CONFIG_SCSI_DECNCR) += NCR53C9x.o dec_esp.o
119obj-$(CONFIG_BLK_DEV_3W_XXXX_RAID) += 3w-xxxx.o
120obj-$(CONFIG_SCSI_3W_9XXX) += 3w-9xxx.o
121obj-$(CONFIG_SCSI_PPA) += ppa.o
122obj-$(CONFIG_SCSI_IMM) += imm.o
123obj-$(CONFIG_JAZZ_ESP) += NCR53C9x.o jazz_esp.o
124obj-$(CONFIG_SUN3X_ESP) += NCR53C9x.o sun3x_esp.o
Linus Torvalds1da177e2005-04-16 15:20:36 -0700125obj-$(CONFIG_SCSI_FCAL) += fcal.o
Linus Torvalds1da177e2005-04-16 15:20:36 -0700126obj-$(CONFIG_SCSI_LASI700) += 53c700.o lasi700.o
Thomas Bogendoerferc27d85f2006-12-25 21:32:04 +0100127obj-$(CONFIG_SCSI_SNI_53C710) += 53c700.o sni_53c710.o
Linus Torvalds1da177e2005-04-16 15:20:36 -0700128obj-$(CONFIG_SCSI_NSP32) += nsp32.o
129obj-$(CONFIG_SCSI_IPR) += ipr.o
FUJITA Tomonori26b14822006-12-01 03:00:50 +0900130obj-$(CONFIG_SCSI_SRP) += libsrp.o
Linus Torvalds1da177e2005-04-16 15:20:36 -0700131obj-$(CONFIG_SCSI_IBMVSCSI) += ibmvscsi/
FUJITA Tomonori0e5d0302006-12-01 03:00:54 +0900132obj-$(CONFIG_SCSI_IBMVSCSIS) += ibmvscsi/
HighPoint Linux Teamede1e6f2006-05-16 14:38:09 +0800133obj-$(CONFIG_SCSI_HPTIOP) += hptiop.o
Jeff Garzik5a25ba12006-09-01 03:12:19 -0400134obj-$(CONFIG_SCSI_STEX) += stex.o
Linus Torvalds1da177e2005-04-16 15:20:36 -0700135
136obj-$(CONFIG_ARM) += arm/
137
138obj-$(CONFIG_CHR_DEV_ST) += st.o
139obj-$(CONFIG_CHR_DEV_OSST) += osst.o
140obj-$(CONFIG_BLK_DEV_SD) += sd_mod.o
141obj-$(CONFIG_BLK_DEV_SR) += sr_mod.o
142obj-$(CONFIG_CHR_DEV_SG) += sg.o
Gerd Knorr daa6eda2005-05-10 10:59:13 +0200143obj-$(CONFIG_CHR_DEV_SCH) += ch.o
Linus Torvalds1da177e2005-04-16 15:20:36 -0700144
Linus Torvalds0caab232006-03-22 17:39:38 -0800145# This goes last, so that "real" scsi devices probe earlier
146obj-$(CONFIG_SCSI_DEBUG) += scsi_debug.o
147
Matthew Wilcox3e082a92006-09-28 15:19:20 -0600148obj-$(CONFIG_SCSI) += scsi_wait_scan.o
149
Linus Torvalds1da177e2005-04-16 15:20:36 -0700150scsi_mod-y += scsi.o hosts.o scsi_ioctl.o constants.o \
151 scsicam.o scsi_error.o scsi_lib.o \
152 scsi_scan.o scsi_sysfs.o \
153 scsi_devinfo.o
James Smart84314fd2006-08-18 17:30:09 -0400154scsi_mod-$(CONFIG_SCSI_NETLINK) += scsi_netlink.o
Linus Torvalds1da177e2005-04-16 15:20:36 -0700155scsi_mod-$(CONFIG_SYSCTL) += scsi_sysctl.o
156scsi_mod-$(CONFIG_SCSI_PROC_FS) += scsi_proc.o
157
FUJITA Tomonori0d2db302006-11-16 19:24:18 +0900158scsi_tgt-y += scsi_tgt_lib.o scsi_tgt_if.o
159
Linus Torvalds1da177e2005-04-16 15:20:36 -0700160sd_mod-objs := sd.o
161sr_mod-objs := sr.o sr_ioctl.o sr_vendor.o
162ncr53c8xx-flags-$(CONFIG_SCSI_ZALON) \
163 := -DCONFIG_NCR53C8XX_PREFETCH -DSCSI_NCR_BIG_ENDIAN \
164 -DCONFIG_SCSI_NCR53C8XX_NO_WORD_TRANSFERS
165CFLAGS_ncr53c8xx.o := $(ncr53c8xx-flags-y) $(ncr53c8xx-flags-m)
166zalon7xx-objs := zalon.o ncr53c8xx.o
167NCR_Q720_mod-objs := NCR_Q720.o ncr53c8xx.o
Al Viro64194062006-01-12 01:06:14 -0800168oktagon_esp_mod-objs := oktagon_esp.o oktagon_io.o
Linus Torvalds1da177e2005-04-16 15:20:36 -0700169
170# Files generated that shall be removed upon make clean
171clean-files := 53c7xx_d.h 53c700_d.h \
172 53c7xx_u.h 53c700_u.h
173
174$(obj)/53c7xx.o: $(obj)/53c7xx_d.h $(obj)/53c7xx_u.h
175$(obj)/53c700.o $(MODVERDIR)/$(obj)/53c700.ver: $(obj)/53c700_d.h
176
177# If you want to play with the firmware, uncomment
178# GENERATE_FIRMWARE := 1
179
180ifdef GENERATE_FIRMWARE
181
182$(obj)/53c7xx_d.h: $(src)/53c7xx.scr $(src)/script_asm.pl
183 $(CPP) -traditional -DCHIP=710 - < $< | grep -v '^#' | $(PERL) -s $(src)/script_asm.pl -ncr7x0_family $@ $(@:_d.h=_u.h)
184
185$(obj)/53c7xx_u.h: $(obj)/53c7xx_d.h
186
187$(obj)/53c700_d.h: $(src)/53c700.scr $(src)/script_asm.pl
188 $(PERL) -s $(src)/script_asm.pl -ncr7x0_family $@ $(@:_d.h=_u.h) < $<
189
190endif