blob: e27e0b7050b002f5dbe1aab888f2c9060164f4c4 [file] [log] [blame]
Marian Balakowiczd62379d2006-09-01 19:49:50 +02001#
2# (C) Copyright 2006
3# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
4#
Wolfgang Denkd79de1d2013-07-08 09:37:19 +02005# SPDX-License-Identifier: GPL-2.0+
Marian Balakowiczd62379d2006-09-01 19:49:50 +02006#
7
Wolfgang Denk2f9b7e42005-08-17 12:55:25 +02008include $(TOPDIR)/config.mk
9
Sebastien Carliera8d426f2010-11-05 15:48:07 +010010LIB := $(obj)libnand.o
Marian Balakowiczd62379d2006-09-01 19:49:50 +020011
Jean-Christophe PLAGNIOL-VILLARD719bb5f2008-08-13 01:40:43 +020012ifdef CONFIG_CMD_NAND
Scott Woodc352a0c2012-09-20 19:09:07 -050013
Simon Schwarz4f62e982011-09-14 15:30:16 -040014ifdef CONFIG_SPL_BUILD
Scott Woodc352a0c2012-09-20 19:09:07 -050015
16ifdef CONFIG_SPL_NAND_DRIVERS
17NORMAL_DRIVERS=y
Heiko Schocher565a09c2011-11-01 20:00:29 +000018endif
Scott Woodc352a0c2012-09-20 19:09:07 -050019
Ilya Yanok15d67a52012-11-06 13:06:34 +000020COBJS-$(CONFIG_SPL_NAND_AM33XX_BCH) += am335x_spl_bch.o
Mike Dunn54baebe2013-04-12 11:59:18 -070021COBJS-$(CONFIG_SPL_NAND_DOCG4) += docg4_spl.o
Scott Woodc352a0c2012-09-20 19:09:07 -050022COBJS-$(CONFIG_SPL_NAND_SIMPLE) += nand_spl_simple.o
23COBJS-$(CONFIG_SPL_NAND_LOAD) += nand_spl_load.o
24COBJS-$(CONFIG_SPL_NAND_ECC) += nand_ecc.o
25COBJS-$(CONFIG_SPL_NAND_BASE) += nand_base.o
26
27else # not spl
28
29NORMAL_DRIVERS=y
30
Grant Likely1179ad12007-09-24 09:05:30 -060031COBJS-y += nand.o
Grant Likely1179ad12007-09-24 09:05:30 -060032COBJS-y += nand_bbt.o
Jean-Christophe PLAGNIOL-VILLARD719bb5f2008-08-13 01:40:43 +020033COBJS-y += nand_ids.o
Grant Likely1179ad12007-09-24 09:05:30 -060034COBJS-y += nand_util.o
Scott Wood107c6302012-02-13 15:46:27 -060035COBJS-y += nand_ecc.o
Simon Schwarz4f62e982011-09-14 15:30:16 -040036COBJS-y += nand_base.o
Scott Woodc352a0c2012-09-20 19:09:07 -050037
38endif # not spl
39
40ifdef NORMAL_DRIVERS
41
Christian Hitz55f7bca2011-10-12 09:31:59 +020042COBJS-$(CONFIG_NAND_ECC_BCH) += nand_bch.o
Wolfgang Denk2f9b7e42005-08-17 12:55:25 +020043
Jean-Christophe PLAGNIOL-VILLARDc9539ba2009-03-22 10:22:34 +010044COBJS-$(CONFIG_NAND_ATMEL) += atmel_nand.o
Mike Frysinger4e2fe542008-11-26 21:43:06 -050045COBJS-$(CONFIG_DRIVER_NAND_BFIN) += bfin_nand.o
Jean-Christophe PLAGNIOL-VILLARDf6812502009-03-30 18:58:39 +020046COBJS-$(CONFIG_NAND_DAVINCI) += davinci_nand.o
Scott Wood40c6e092008-03-21 16:12:51 -050047COBJS-$(CONFIG_NAND_FSL_ELBC) += fsl_elbc_nand.o
Dipen Dudhat9eae0832011-03-22 09:27:39 +053048COBJS-$(CONFIG_NAND_FSL_IFC) += fsl_ifc_nand.o
Jean-Christophe PLAGNIOL-VILLARD719bb5f2008-08-13 01:40:43 +020049COBJS-$(CONFIG_NAND_FSL_UPM) += fsl_upm.o
Vipin KUMAR6f2f5572012-05-22 00:15:54 +000050COBJS-$(CONFIG_NAND_FSMC) += fsmc_nand.o
Xiangfu Liu244e4282011-10-12 12:24:06 +080051COBJS-$(CONFIG_NAND_JZ4740) += jz4740_nand.o
Matthias Kaehlcke723fe352009-07-16 21:19:29 +020052COBJS-$(CONFIG_NAND_KB9202) += kb9202_nand.o
Prafulla Wadaskare9046782009-06-29 15:25:18 +053053COBJS-$(CONFIG_NAND_KIRKWOOD) += kirkwood_nand.o
Heiko Schocher1bc95632009-07-21 17:13:40 +020054COBJS-$(CONFIG_NAND_KMETER1) += kmeter1_nand.o
Stefan Roesed4b75c42009-06-09 16:57:03 +020055COBJS-$(CONFIG_NAND_MPC5121_NFC) += mpc5121_nfc.o
Ilya Yanokf9e2bee2009-08-11 02:32:54 +040056COBJS-$(CONFIG_NAND_MXC) += mxc_nand.o
Marek Vasut913a7252011-11-08 23:18:16 +000057COBJS-$(CONFIG_NAND_MXS) += mxs_nand.o
Stefan Roese913fd052009-07-16 15:12:48 +020058COBJS-$(CONFIG_NAND_NDFC) += ndfc.o
Alessandro Rubini9b97b452009-02-09 15:53:31 +010059COBJS-$(CONFIG_NAND_NOMADIK) += nomadik.o
kevin.morfitt@fearnside-systems.co.uk3e9f2012009-06-18 18:41:03 +010060COBJS-$(CONFIG_NAND_S3C2410) += s3c2410_nand.o
Vipin KUMAR204ad542010-01-15 19:15:46 +053061COBJS-$(CONFIG_NAND_SPEAR) += spr_nand.o
Jim Lin5d309e62012-07-29 20:53:29 +000062COBJS-$(CONFIG_TEGRA_NAND) += tegra_nand.o
Dirk Behme778933f2008-12-14 09:47:16 +010063COBJS-$(CONFIG_NAND_OMAP_GPMC) += omap_gpmc.o
Mike Frysingerc0e7c7a2009-05-25 22:42:28 -040064COBJS-$(CONFIG_NAND_PLAT) += nand_plat.o
Mike Dunn54baebe2013-04-12 11:59:18 -070065COBJS-$(CONFIG_NAND_DOCG4) += docg4.o
Scott Woodc352a0c2012-09-20 19:09:07 -050066
Albert ARIBAUD32399d82013-01-08 23:57:20 +010067else # minimal SPL drivers
68
69COBJS-$(CONFIG_NAND_FSL_ELBC) += fsl_elbc_spl.o
Prabhakar Kushwahaab4ab012013-04-16 13:27:59 +053070COBJS-$(CONFIG_NAND_FSL_IFC) += fsl_ifc_spl.o
Benoît Thébaudeauefb7c002013-04-11 09:35:51 +000071COBJS-$(CONFIG_NAND_MXC) += mxc_nand_spl.o
Albert ARIBAUD32399d82013-01-08 23:57:20 +010072
Scott Woodc352a0c2012-09-20 19:09:07 -050073endif # drivers
74endif # nand
Anton Vorontsov6ab97e92008-01-14 23:09:32 +030075
Grant Likely1179ad12007-09-24 09:05:30 -060076COBJS := $(COBJS-y)
Wolfgang Denka1be4762008-05-20 16:00:29 +020077SRCS := $(COBJS:.o=.c)
78OBJS := $(addprefix $(obj),$(COBJS))
Marian Balakowiczd62379d2006-09-01 19:49:50 +020079
Wolfgang Denk2f9b7e42005-08-17 12:55:25 +020080all: $(LIB)
81
Marian Balakowiczd62379d2006-09-01 19:49:50 +020082$(LIB): $(obj).depend $(OBJS)
Sebastien Carliera8d426f2010-11-05 15:48:07 +010083 $(call cmd_link_o_target, $(OBJS))
Wolfgang Denk2f9b7e42005-08-17 12:55:25 +020084
85#########################################################################
86
Marian Balakowiczd62379d2006-09-01 19:49:50 +020087# defines $(obj).depend target
88include $(SRCTREE)/rules.mk
Wolfgang Denk2f9b7e42005-08-17 12:55:25 +020089
Marian Balakowiczd62379d2006-09-01 19:49:50 +020090sinclude $(obj).depend
91
92#########################################################################