blob: e27e0b7050b002f5dbe1aab888f2c9060164f4c4 [file] [log] [blame]
Marian Balakowiczf9328632006-09-01 19:49:50 +02001#
2# (C) Copyright 2006
3# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
4#
Wolfgang Denk1a459662013-07-08 09:37:19 +02005# SPDX-License-Identifier: GPL-2.0+
Marian Balakowiczf9328632006-09-01 19:49:50 +02006#
7
Wolfgang Denk932394a2005-08-17 12:55:25 +02008include $(TOPDIR)/config.mk
9
Sebastien Carlier6d8962e2010-11-05 15:48:07 +010010LIB := $(obj)libnand.o
Wolfgang Denk932394a2005-08-17 12:55:25 +020011
Jean-Christophe PLAGNIOL-VILLARDcc4a0ce2008-08-13 01:40:43 +020012ifdef CONFIG_CMD_NAND
Scott Wood6f2f01b2012-09-20 19:09:07 -050013
Simon Schwarz12c2f1e2011-09-14 15:30:16 -040014ifdef CONFIG_SPL_BUILD
Scott Wood6f2f01b2012-09-20 19:09:07 -050015
16ifdef CONFIG_SPL_NAND_DRIVERS
17NORMAL_DRIVERS=y
Simon Schwarz12c2f1e2011-09-14 15:30:16 -040018endif
Scott Wood6f2f01b2012-09-20 19:09:07 -050019
Ilya Yanok5846b112012-11-06 13:06:34 +000020COBJS-$(CONFIG_SPL_NAND_AM33XX_BCH) += am335x_spl_bch.o
Mike Dunn956b03e2013-04-12 11:59:18 -070021COBJS-$(CONFIG_SPL_NAND_DOCG4) += docg4_spl.o
Scott Wood6f2f01b2012-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 Likelyf0037c52007-09-24 09:05:30 -060031COBJS-y += nand.o
Grant Likelyf0037c52007-09-24 09:05:30 -060032COBJS-y += nand_bbt.o
Jean-Christophe PLAGNIOL-VILLARDcc4a0ce2008-08-13 01:40:43 +020033COBJS-y += nand_ids.o
Grant Likelyf0037c52007-09-24 09:05:30 -060034COBJS-y += nand_util.o
Scott Wood1f7b1742012-02-13 15:46:27 -060035COBJS-y += nand_ecc.o
Simon Schwarz12c2f1e2011-09-14 15:30:16 -040036COBJS-y += nand_base.o
Scott Wood6f2f01b2012-09-20 19:09:07 -050037
38endif # not spl
39
40ifdef NORMAL_DRIVERS
41
Christian Hitz4c6de852011-10-12 09:31:59 +020042COBJS-$(CONFIG_NAND_ECC_BCH) += nand_bch.o
Marian Balakowiczf9328632006-09-01 19:49:50 +020043
Jean-Christophe PLAGNIOL-VILLARD74c076d2009-03-22 10:22:34 +010044COBJS-$(CONFIG_NAND_ATMEL) += atmel_nand.o
Mike Frysingerbe9d8c72008-11-26 21:43:06 -050045COBJS-$(CONFIG_DRIVER_NAND_BFIN) += bfin_nand.o
Jean-Christophe PLAGNIOL-VILLARDee4f3e22009-03-30 18:58:39 +020046COBJS-$(CONFIG_NAND_DAVINCI) += davinci_nand.o
Scott Wood9fd020d2008-03-21 16:12:51 -050047COBJS-$(CONFIG_NAND_FSL_ELBC) += fsl_elbc_nand.o
Dipen Dudhat52f90da2011-03-22 09:27:39 +053048COBJS-$(CONFIG_NAND_FSL_IFC) += fsl_ifc_nand.o
Jean-Christophe PLAGNIOL-VILLARDcc4a0ce2008-08-13 01:40:43 +020049COBJS-$(CONFIG_NAND_FSL_UPM) += fsl_upm.o
Vipin KUMAR7f0730a2012-05-22 00:15:54 +000050COBJS-$(CONFIG_NAND_FSMC) += fsmc_nand.o
Xiangfu Liu3a6591a2011-10-12 12:24:06 +080051COBJS-$(CONFIG_NAND_JZ4740) += jz4740_nand.o
Matthias Kaehlcke403ce1f2009-07-16 21:19:29 +020052COBJS-$(CONFIG_NAND_KB9202) += kb9202_nand.o
Prafulla Wadaskar205a0982009-06-29 15:25:18 +053053COBJS-$(CONFIG_NAND_KIRKWOOD) += kirkwood_nand.o
Heiko Schocherde425092009-07-21 17:13:40 +020054COBJS-$(CONFIG_NAND_KMETER1) += kmeter1_nand.o
Stefan Roese35f2edb2009-06-09 16:57:03 +020055COBJS-$(CONFIG_NAND_MPC5121_NFC) += mpc5121_nfc.o
Ilya Yanok36fab992009-08-11 02:32:54 +040056COBJS-$(CONFIG_NAND_MXC) += mxc_nand.o
Marek Vasut0d4e8502011-11-08 23:18:16 +000057COBJS-$(CONFIG_NAND_MXS) += mxs_nand.o
Stefan Roese12582ac2009-07-16 15:12:48 +020058COBJS-$(CONFIG_NAND_NDFC) += ndfc.o
Alessandro Rubini0d8c6ea2009-02-09 15:53:31 +010059COBJS-$(CONFIG_NAND_NOMADIK) += nomadik.o
kevin.morfitt@fearnside-systems.co.uk98713d22009-06-18 18:41:03 +010060COBJS-$(CONFIG_NAND_S3C2410) += s3c2410_nand.o
Vipin KUMAR165fa402010-01-15 19:15:46 +053061COBJS-$(CONFIG_NAND_SPEAR) += spr_nand.o
Jim Lin312693c2012-07-29 20:53:29 +000062COBJS-$(CONFIG_TEGRA_NAND) += tegra_nand.o
Dirk Behme12201a12008-12-14 09:47:16 +010063COBJS-$(CONFIG_NAND_OMAP_GPMC) += omap_gpmc.o
Mike Frysingercd844232009-05-25 22:42:28 -040064COBJS-$(CONFIG_NAND_PLAT) += nand_plat.o
Mike Dunn956b03e2013-04-12 11:59:18 -070065COBJS-$(CONFIG_NAND_DOCG4) += docg4.o
Scott Wood6f2f01b2012-09-20 19:09:07 -050066
Albert ARIBAUD44948592013-01-08 23:57:20 +010067else # minimal SPL drivers
68
69COBJS-$(CONFIG_NAND_FSL_ELBC) += fsl_elbc_spl.o
Prabhakar Kushwaha3a881792013-04-16 13:27:59 +053070COBJS-$(CONFIG_NAND_FSL_IFC) += fsl_ifc_spl.o
Benoît Thébaudeauda962b72013-04-11 09:35:51 +000071COBJS-$(CONFIG_NAND_MXC) += mxc_nand_spl.o
Albert ARIBAUD44948592013-01-08 23:57:20 +010072
Scott Wood6f2f01b2012-09-20 19:09:07 -050073endif # drivers
74endif # nand
Anton Vorontsovcd9d2302008-01-14 23:09:32 +030075
Grant Likelyf0037c52007-09-24 09:05:30 -060076COBJS := $(COBJS-y)
Wolfgang Denk53677ef2008-05-20 16:00:29 +020077SRCS := $(COBJS:.o=.c)
78OBJS := $(addprefix $(obj),$(COBJS))
Marian Balakowiczf9328632006-09-01 19:49:50 +020079
Wolfgang Denk932394a2005-08-17 12:55:25 +020080all: $(LIB)
81
Marian Balakowiczf9328632006-09-01 19:49:50 +020082$(LIB): $(obj).depend $(OBJS)
Sebastien Carlier6d8962e2010-11-05 15:48:07 +010083 $(call cmd_link_o_target, $(OBJS))
Wolfgang Denk932394a2005-08-17 12:55:25 +020084
85#########################################################################
86
Marian Balakowiczf9328632006-09-01 19:49:50 +020087# defines $(obj).depend target
88include $(SRCTREE)/rules.mk
Wolfgang Denk932394a2005-08-17 12:55:25 +020089
Marian Balakowiczf9328632006-09-01 19:49:50 +020090sinclude $(obj).depend
91
92#########################################################################