18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
28c2ecf20Sopenharmony_ci#
38c2ecf20Sopenharmony_ci# Makefile for the Linux aic7xxx SCSI driver.
48c2ecf20Sopenharmony_ci#
58c2ecf20Sopenharmony_ci# $Id: //depot/linux-aic79xx-2.5.0/drivers/scsi/aic7xxx/Makefile#8 $
68c2ecf20Sopenharmony_ci#
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_ci# Let kbuild descend into aicasm when cleaning
98c2ecf20Sopenharmony_cisubdir-				+= aicasm
108c2ecf20Sopenharmony_ci
118c2ecf20Sopenharmony_ciobj-$(CONFIG_SCSI_AIC7XXX)	+= aic7xxx.o
128c2ecf20Sopenharmony_ciobj-$(CONFIG_SCSI_AIC79XX)	+= aic79xx.o
138c2ecf20Sopenharmony_ci
148c2ecf20Sopenharmony_ci# Core Fast -> U160 files
158c2ecf20Sopenharmony_ciaic7xxx-y					+= aic7xxx_core.o	\
168c2ecf20Sopenharmony_ci						   aic7xxx_93cx6.o
178c2ecf20Sopenharmony_ciaic7xxx-$(CONFIG_EISA)				+= aic7770.o
188c2ecf20Sopenharmony_ciaic7xxx-$(CONFIG_PCI)				+= aic7xxx_pci.o
198c2ecf20Sopenharmony_ciaic7xxx-$(CONFIG_AIC7XXX_REG_PRETTY_PRINT)	+= aic7xxx_reg_print.o
208c2ecf20Sopenharmony_ci
218c2ecf20Sopenharmony_ci# Platform Specific Fast -> U160 Files
228c2ecf20Sopenharmony_ciaic7xxx-y					+= aic7xxx_osm.o	\
238c2ecf20Sopenharmony_ci						   aic7xxx_proc.o
248c2ecf20Sopenharmony_ciaic7xxx-$(CONFIG_EISA)				+= aic7770_osm.o
258c2ecf20Sopenharmony_ciaic7xxx-$(CONFIG_PCI)				+= aic7xxx_osm_pci.o
268c2ecf20Sopenharmony_ci
278c2ecf20Sopenharmony_ci# Core U320 files
288c2ecf20Sopenharmony_ciaic79xx-y					+= aic79xx_core.o	\
298c2ecf20Sopenharmony_ci						   aic79xx_pci.o
308c2ecf20Sopenharmony_ciaic79xx-$(CONFIG_AIC79XX_REG_PRETTY_PRINT)	+= aic79xx_reg_print.o
318c2ecf20Sopenharmony_ci
328c2ecf20Sopenharmony_ci# Platform Specific U320 Files
338c2ecf20Sopenharmony_ciaic79xx-y					+= aic79xx_osm.o	\
348c2ecf20Sopenharmony_ci						   aic79xx_proc.o	\
358c2ecf20Sopenharmony_ci						   aic79xx_osm_pci.o
368c2ecf20Sopenharmony_ci
378c2ecf20Sopenharmony_ciifdef WARNINGS_BECOME_ERRORS
388c2ecf20Sopenharmony_ciccflags-y += -Werror
398c2ecf20Sopenharmony_ciendif
408c2ecf20Sopenharmony_ci
418c2ecf20Sopenharmony_ci# Files generated that shall be removed upon make clean
428c2ecf20Sopenharmony_ciclean-files := aic7xxx_seq.h aic7xxx_reg.h aic7xxx_reg_print.c
438c2ecf20Sopenharmony_ciclean-files += aic79xx_seq.h aic79xx_reg.h aic79xx_reg_print.c
448c2ecf20Sopenharmony_ci
458c2ecf20Sopenharmony_ci# Dependencies for generated files need to be listed explicitly
468c2ecf20Sopenharmony_ci
478c2ecf20Sopenharmony_ci$(addprefix $(obj)/,$(aic7xxx-y)): $(obj)/aic7xxx_seq.h $(obj)/aic7xxx_reg.h
488c2ecf20Sopenharmony_ci$(addprefix $(obj)/,$(aic79xx-y)): $(obj)/aic79xx_seq.h $(obj)/aic79xx_reg.h
498c2ecf20Sopenharmony_ci
508c2ecf20Sopenharmony_ciaic7xxx-gen-$(CONFIG_AIC7XXX_BUILD_FIRMWARE)	:= $(obj)/aic7xxx_reg.h
518c2ecf20Sopenharmony_ciaic7xxx-gen-$(CONFIG_AIC7XXX_REG_PRETTY_PRINT)	+= $(obj)/aic7xxx_reg_print.c
528c2ecf20Sopenharmony_ci
538c2ecf20Sopenharmony_ciaicasm-7xxx-opts-$(CONFIG_AIC7XXX_REG_PRETTY_PRINT) := \
548c2ecf20Sopenharmony_ci	-p $(obj)/aic7xxx_reg_print.c -i aic7xxx_osm.h
558c2ecf20Sopenharmony_ci
568c2ecf20Sopenharmony_ciifeq ($(CONFIG_AIC7XXX_BUILD_FIRMWARE),y)
578c2ecf20Sopenharmony_ci$(obj)/aic7xxx_seq.h: $(src)/aic7xxx.seq $(src)/aic7xxx.reg $(obj)/aicasm/aicasm
588c2ecf20Sopenharmony_ci	$(obj)/aicasm/aicasm -I$(srctree)/$(src) -r $(obj)/aic7xxx_reg.h \
598c2ecf20Sopenharmony_ci			      $(aicasm-7xxx-opts-y) -o $(obj)/aic7xxx_seq.h \
608c2ecf20Sopenharmony_ci			      $(srctree)/$(src)/aic7xxx.seq
618c2ecf20Sopenharmony_ci
628c2ecf20Sopenharmony_ci$(aic7xxx-gen-y): $(objtree)/$(obj)/aic7xxx_seq.h
638c2ecf20Sopenharmony_ci	@true
648c2ecf20Sopenharmony_cielse
658c2ecf20Sopenharmony_ci$(obj)/aic7xxx_reg_print.c: $(src)/aic7xxx_reg_print.c_shipped
668c2ecf20Sopenharmony_ciendif
678c2ecf20Sopenharmony_ci
688c2ecf20Sopenharmony_ciaic79xx-gen-$(CONFIG_AIC79XX_BUILD_FIRMWARE)	:= $(obj)/aic79xx_reg.h
698c2ecf20Sopenharmony_ciaic79xx-gen-$(CONFIG_AIC79XX_REG_PRETTY_PRINT)	+= $(obj)/aic79xx_reg_print.c
708c2ecf20Sopenharmony_ci
718c2ecf20Sopenharmony_ciaicasm-79xx-opts-$(CONFIG_AIC79XX_REG_PRETTY_PRINT) := \
728c2ecf20Sopenharmony_ci	-p $(obj)/aic79xx_reg_print.c -i aic79xx_osm.h
738c2ecf20Sopenharmony_ci
748c2ecf20Sopenharmony_ciifeq ($(CONFIG_AIC79XX_BUILD_FIRMWARE),y)
758c2ecf20Sopenharmony_ci$(obj)/aic79xx_seq.h: $(src)/aic79xx.seq $(src)/aic79xx.reg $(obj)/aicasm/aicasm
768c2ecf20Sopenharmony_ci	$(obj)/aicasm/aicasm -I$(srctree)/$(src) -r $(obj)/aic79xx_reg.h \
778c2ecf20Sopenharmony_ci			      $(aicasm-79xx-opts-y) -o $(obj)/aic79xx_seq.h \
788c2ecf20Sopenharmony_ci			      $(srctree)/$(src)/aic79xx.seq
798c2ecf20Sopenharmony_ci
808c2ecf20Sopenharmony_ci$(aic79xx-gen-y): $(objtree)/$(obj)/aic79xx_seq.h
818c2ecf20Sopenharmony_ci	@true
828c2ecf20Sopenharmony_cielse
838c2ecf20Sopenharmony_ci$(obj)/aic79xx_reg_print.c: $(src)/aic79xx_reg_print.c_shipped
848c2ecf20Sopenharmony_ciendif
858c2ecf20Sopenharmony_ci
868c2ecf20Sopenharmony_ci$(obj)/aicasm/aicasm: $(srctree)/$(src)/aicasm/*.[chyl]
878c2ecf20Sopenharmony_ci	$(MAKE) -C $(srctree)/$(src)/aicasm OUTDIR=$(shell pwd)/$(obj)/aicasm/
88