1# Copyright (c) 2023 Intel Corporation.
2# SPDX-License-Identifier: Apache-2.0
3
4# Macro to find node in device tree
5DT_CHOSEN_CDNS_NAND_NODE := nand
6
7config FLASH_CDNS_NAND
8	bool "Cadence NAND Flash driver"
9	default y
10	depends on DT_HAS_CDNS_NAND_ENABLED
11	select FLASH_HAS_PAGE_LAYOUT
12	select FLASH_HAS_DRIVER_ENABLED
13	select FLASH_HAS_EXPLICIT_ERASE
14	help
15	  Enable Cadence NAND support.
16
17if FLASH_CDNS_NAND
18
19config CDNS_NAND_INTERRUPT_SUPPORT
20	bool "Cadence Nand Interrupt Support"
21	def_bool $(dt_node_has_prop,$(DT_CHOSEN_CDNS_NAND_NODE),interrupts)
22	help
23	  Enable Cadence Nand Interrupt Support.
24
25choice
26	prompt "Set the NAND Operating mode"
27	default CDNS_NAND_CDMA_MODE
28	help
29	  Specify the Operating mode used by the driver.
30
31config CDNS_NAND_CDMA_MODE
32	bool "Cadence Nand CDMA Operating Mode"
33
34config CDNS_NAND_PIO_MODE
35	bool "Cadence Nand PIO Operating Mode"
36
37config CDNS_NAND_GENERIC_MODE
38	bool "Cadence Nand Generic Operating Mode"
39
40endchoice
41
42config FLASH_CDNS_CDMA_PAGE_COUNT
43	int "Set the page count for a single transfer in the CDMA Mode"
44	default 10
45	help
46	  Configure the page count for a single transfer in the CDMA Mode
47
48config FLASH_CDNS_CDMA_BLOCK_COUNT
49	int "Set the block count for a single transfer in the CDMA Mode"
50	default 10
51	help
52	  Configure the block count for a single transfer in the CDMA Mode
53
54endif # FLASH_CDNS_NAND
55