1# SPDX-License-Identifier: GPL-2.0+
2#
3# (C) Copyright 2006
4# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
5
6ifdef CONFIG_SPL_BUILD
7
8ifdef CONFIG_SPL_NAND_DRIVERS
9NORMAL_DRIVERS=y
10endif
11
12obj-$(CONFIG_SPL_NAND_AM33XX_BCH) += am335x_spl_bch.o
13obj-$(CONFIG_SPL_NAND_DENALI) += denali_spl.o
14obj-$(CONFIG_SPL_NAND_SIMPLE) += nand_spl_simple.o
15obj-$(CONFIG_SPL_NAND_LOAD) += nand_spl_load.o
16obj-$(CONFIG_SPL_NAND_ECC) += nand_ecc.o
17obj-$(CONFIG_SPL_NAND_BASE) += nand_base.o nand_amd.o nand_hynix.o \
18				nand_macronix.o nand_micron.o \
19				nand_samsung.o nand_toshiba.o
20obj-$(CONFIG_SPL_NAND_IDENT) += nand_ids.o nand_timings.o
21obj-$(CONFIG_$(SPL_TPL_)NAND_INIT) += nand.o
22ifeq ($(CONFIG_SPL_ENV_SUPPORT),y)
23obj-$(CONFIG_ENV_IS_IN_NAND) += nand_util.o
24endif
25
26else # not spl
27
28NORMAL_DRIVERS=y
29
30obj-y += nand.o
31obj-y += nand_bbt.o
32obj-y += nand_ids.o
33obj-y += nand_util.o
34obj-y += nand_ecc.o
35obj-y += nand_base.o
36obj-y += nand_amd.o
37obj-y += nand_hynix.o
38obj-y += nand_macronix.o
39obj-y += nand_micron.o
40obj-y += nand_samsung.o
41obj-y += nand_toshiba.o
42obj-y += nand_timings.o
43
44endif # not spl
45
46ifdef NORMAL_DRIVERS
47
48obj-$(CONFIG_NAND_ECC_BCH) += nand_bch.o
49
50obj-$(CONFIG_NAND_ATMEL) += atmel_nand.o
51obj-$(CONFIG_DM_NAND_ATMEL) += atmel/
52obj-$(CONFIG_NAND_ARASAN) += arasan_nfc.o
53obj-$(CONFIG_NAND_BRCMNAND) += brcmnand/
54obj-$(CONFIG_NAND_DAVINCI) += davinci_nand.o
55obj-$(CONFIG_NAND_DENALI) += denali.o
56obj-$(CONFIG_NAND_DENALI_DT) += denali_dt.o
57obj-$(CONFIG_NAND_FSL_ELBC) += fsl_elbc_nand.o
58obj-$(CONFIG_NAND_FSL_IFC) += fsl_ifc_nand.o
59obj-$(CONFIG_NAND_KIRKWOOD) += kirkwood_nand.o
60obj-$(CONFIG_NAND_KMETER1) += kmeter1_nand.o
61obj-$(CONFIG_NAND_LPC32XX_MLC) += lpc32xx_nand_mlc.o
62obj-$(CONFIG_NAND_LPC32XX_SLC) += lpc32xx_nand_slc.o
63obj-$(CONFIG_NAND_VF610_NFC) += vf610_nfc.o
64obj-$(CONFIG_NAND_MXC) += mxc_nand.o
65obj-$(CONFIG_NAND_MXS) += mxs_nand.o
66obj-$(CONFIG_NAND_MXS_DT) += mxs_nand_dt.o
67obj-$(CONFIG_NAND_OCTEONTX) += octeontx_nand.o
68obj-$(CONFIG_NAND_OCTEONTX_HW_ECC) += octeontx_bch.o
69obj-$(CONFIG_NAND_PXA3XX) += pxa3xx_nand.o
70obj-$(CONFIG_TEGRA_NAND) += tegra_nand.o
71obj-$(CONFIG_NAND_OMAP_GPMC) += omap_gpmc.o
72obj-$(CONFIG_NAND_OMAP_ELM) += omap_elm.o
73obj-$(CONFIG_NAND_SUNXI) += sunxi_nand.o
74obj-$(CONFIG_NAND_MXIC) += mxic_nand.o
75obj-$(CONFIG_NAND_ZYNQ) += zynq_nand.o
76obj-$(CONFIG_NAND_STM32_FMC2) += stm32_fmc2_nand.o
77obj-$(CONFIG_CORTINA_NAND) += cortina_nand.o
78obj-$(CONFIG_ROCKCHIP_NAND) += rockchip_nfc.o
79obj-$(CONFIG_NAND_MT7621) += mt7621_nand.o
80
81else  # minimal SPL drivers
82
83obj-$(CONFIG_NAND_FSL_ELBC) += fsl_elbc_spl.o
84obj-$(CONFIG_NAND_FSL_IFC) += fsl_ifc_spl.o
85obj-$(CONFIG_NAND_MXC) += mxc_nand_spl.o
86obj-$(CONFIG_NAND_MXS) += mxs_nand_spl.o mxs_nand.o
87obj-$(CONFIG_NAND_SUNXI) += sunxi_nand_spl.o
88obj-$(CONFIG_NAND_MT7621) += mt7621_nand_spl.o mt7621_nand.o
89
90endif # drivers
91