annotate packages/io/nand/current/cdl/nand.cdl @ 3399:3c98ca6c7e46

io/nand: Deparent CYGPKG_IO_NAND from CYGPKG_IO, for consistency in the configtool with most other packages.
author Ross Younger <wry@ecoscentric.com>
date Fri, 16 Jan 2015 11:39:54 +1300
parents 7905ed422fdf
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2930
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
1 # ====================================================================
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
2 #
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
3 # nand.cdl
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
4 #
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
5 # eCos NAND flash library
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
6 #
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
7 # ====================================================================
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
8 # ####ECOSGPLCOPYRIGHTBEGIN####
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
9 # -------------------------------------------
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
10 # This file is part of eCos, the Embedded Configurable Operating System.
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
11 # Copyright (C) 2009 eCosCentric Limited.
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
12 #
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
13 # eCos is free software; you can redistribute it and/or modify it under
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
14 # the terms of the GNU General Public License as published by the Free
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
15 # Software Foundation; either version 2 or (at your option) any later
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
16 # version.
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
17 #
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
18 # eCos is distributed in the hope that it will be useful, but WITHOUT
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
19 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
20 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
21 # for more details.
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
22 #
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
23 # You should have received a copy of the GNU General Public License
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
24 # along with eCos; if not, write to the Free Software Foundation, Inc.,
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
25 # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
26 #
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
27 # As a special exception, if other files instantiate templates or use
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
28 # macros or inline functions from this file, or you compile this file
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
29 # and link it with other works to produce a work based on this file,
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
30 # this file does not by itself cause the resulting work to be covered by
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
31 # the GNU General Public License. However the source code for this file
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
32 # must still be made available in accordance with section (3) of the GNU
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
33 # General Public License v2.
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
34 #
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
35 # This exception does not invalidate any other reasons why a work based
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
36 # on this file might be covered by the GNU General Public License.
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
37 # -------------------------------------------
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
38 # ####ECOSGPLCOPYRIGHTEND####
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
39 # ====================================================================
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
40 ######DESCRIPTIONBEGIN####
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
41 #
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
42 # Author(s): wry
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
43 # Date: 2009-02-23
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
44 #
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
45 #####DESCRIPTIONEND####
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
46 #
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
47 # ====================================================================
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
48
2994
3d3b0d53c2e5 NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents: 2976
diff changeset
49
2930
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
50 cdl_package CYGPKG_IO_NAND {
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
51 display "NAND Flash access library"
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
52 include_dir cyg/nand
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
53 doc ref/nand.html
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
54 description "
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
55 This package provides support for NAND flash devices. It provides
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
56 both an application and a device interface. Further
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
57 platform-specific package(s) are required to implement drivers for
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
58 the particular devices present."
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
59
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
60 requires CYGINT_ISO_ERRNO_CODES
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
61 requires CYGPKG_ISOINFRA
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
62 requires CYGPKG_LIBC_STRING
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
63 requires CYGINT_ISO_STRING_MEMFUNCS
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
64 requires CYGPKG_LIBC_STDLIB
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
65
2994
3d3b0d53c2e5 NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents: 2976
diff changeset
66 # If YAFFS is loaded, ensure that is knows how to drive us.
3d3b0d53c2e5 NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents: 2976
diff changeset
67 requires ( CYGPKG_FS_YAFFS implies CYGSEM_FS_YAFFS_NAND_APPINTERFACE > 1)
3d3b0d53c2e5 NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents: 2976
diff changeset
68
2963
b836edcc5d76 NAND: Completely rewrite software ECC. A modest code increase (about 500 bytes) is a small price to pay for a massive speedup (measured at 3x on lpc2468, 21x on AMD64 on the desktop...)
Ross Younger <wry@ecoscentric.com>
parents: 2950
diff changeset
69 compile nand.c nand_bbt.c nand_oob.c util.c
b836edcc5d76 NAND: Completely rewrite software ECC. A modest code increase (about 500 bytes) is a small price to pay for a massive speedup (measured at 3x on lpc2468, 21x on AMD64 on the desktop...)
Ross Younger <wry@ecoscentric.com>
parents: 2950
diff changeset
70 compile nand_ecc_mtd.c
b836edcc5d76 NAND: Completely rewrite software ECC. A modest code increase (about 500 bytes) is a small price to pay for a massive speedup (measured at 3x on lpc2468, 21x on AMD64 on the desktop...)
Ross Younger <wry@ecoscentric.com>
parents: 2950
diff changeset
71 compile nand_ecc_mtd_fast.c
2930
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
72 compile -library=libextras.a nandinit.cxx
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
73
2994
3d3b0d53c2e5 NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents: 2976
diff changeset
74 cdl_option CYGSEM_IO_NAND_APPINTERFACE_VERSION {
3d3b0d53c2e5 NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents: 2976
diff changeset
75 display "NAND application interface version"
3d3b0d53c2e5 NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents: 2976
diff changeset
76 flavor data
3d3b0d53c2e5 NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents: 2976
diff changeset
77 calculated 2
3d3b0d53c2e5 NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents: 2976
diff changeset
78 description "The current version of the application
3d3b0d53c2e5 NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents: 2976
diff changeset
79 interface provided by
3d3b0d53c2e5 NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents: 2976
diff changeset
80 the NAND layer. As the NAND device interface evolves, this
3d3b0d53c2e5 NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents: 2976
diff changeset
81 version number will be incremented; applications may require
3d3b0d53c2e5 NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents: 2976
diff changeset
82 that the layer provide a certain level in order
3d3b0d53c2e5 NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents: 2976
diff changeset
83 to function correctly."
3d3b0d53c2e5 NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents: 2976
diff changeset
84 }
3d3b0d53c2e5 NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents: 2976
diff changeset
85
2944
32bcd454bda4 Major update to allow hardware ECC: change driver interface (to "v2" - with CDL marker), expand ECC interface
wry
parents: 2937
diff changeset
86 cdl_option CYGSEM_IO_NAND_INTERFACE_VERSION {
32bcd454bda4 Major update to allow hardware ECC: change driver interface (to "v2" - with CDL marker), expand ECC interface
wry
parents: 2937
diff changeset
87 display "NAND device interface version"
32bcd454bda4 Major update to allow hardware ECC: change driver interface (to "v2" - with CDL marker), expand ECC interface
wry
parents: 2937
diff changeset
88 flavor data
32bcd454bda4 Major update to allow hardware ECC: change driver interface (to "v2" - with CDL marker), expand ECC interface
wry
parents: 2937
diff changeset
89 calculated 2
2994
3d3b0d53c2e5 NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents: 2976
diff changeset
90 description "The current version of the device interface
3d3b0d53c2e5 NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents: 2976
diff changeset
91 provided by
2944
32bcd454bda4 Major update to allow hardware ECC: change driver interface (to "v2" - with CDL marker), expand ECC interface
wry
parents: 2937
diff changeset
92 the NAND layer. As the NAND device interface evolves, this
32bcd454bda4 Major update to allow hardware ECC: change driver interface (to "v2" - with CDL marker), expand ECC interface
wry
parents: 2937
diff changeset
93 version number will be incremented; devices may require
32bcd454bda4 Major update to allow hardware ECC: change driver interface (to "v2" - with CDL marker), expand ECC interface
wry
parents: 2937
diff changeset
94 that the infrastructure provide a certain level in order
32bcd454bda4 Major update to allow hardware ECC: change driver interface (to "v2" - with CDL marker), expand ECC interface
wry
parents: 2937
diff changeset
95 to function correctly."
32bcd454bda4 Major update to allow hardware ECC: change driver interface (to "v2" - with CDL marker), expand ECC interface
wry
parents: 2937
diff changeset
96 }
32bcd454bda4 Major update to allow hardware ECC: change driver interface (to "v2" - with CDL marker), expand ECC interface
wry
parents: 2937
diff changeset
97
2930
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
98 cdl_component CYGPKG_IO_NAND_OPTIONS {
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
99 display "NAND library build options"
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
100 flavor none
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
101 description "
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
102 Package specific build options including control over
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
103 compiler flags used only in building the NAND library
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
104 flash driver."
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
105
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
106 cdl_option CYGPKG_IO_NAND_CFLAGS_ADD {
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
107 display "Additional compiler flags"
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
108 flavor data
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
109 no_define
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
110 default_value { "-Werror" }
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
111 description "
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
112 This option modifies the set of compiler flags for
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
113 building the NAND flash library. These flags
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
114 are used in addition to the set of global flags."
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
115 }
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
116 cdl_option CYGPKG_IO_NAND_CFLAGS_REMOVE {
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
117 display "Suppressed compiler flags"
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
118 flavor data
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
119 no_define
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
120 default_value { "" }
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
121 description "
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
122 This option modifies the set of compiler flags for
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
123 building the NAND flash library. These flags
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
124 are removed from the set of global flags if present."
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
125 }
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
126 }
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
127
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
128 cdl_interface CYGHWR_IO_NAND_DEVICE {
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
129 display "Hardware NAND device drivers"
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
130 requires { CYGHWR_IO_NAND_DEVICE >= 1 }
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
131 description "
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
132 This calculated option shows the number of NAND devices on
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
133 the current platform. The generic NAND support is disabled
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
134 unless at least one device is present."
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
135 }
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
136
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
137 cdl_component CYGSEM_IO_NAND_DEBUG {
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
138 display "NAND debug output"
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
139 default_value 1
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
140 description "
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
141 The NAND library has the ability to report debugging information
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
142 by sending it to a printf-like function.
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
143 This option is the master switch for all such output.
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
144 "
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
145
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
146 cdl_option CYGSEM_IO_NAND_DEBUG_FN_DEFAULT {
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
147 display "Global output function"
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
148 flavor data
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
149 default_value { "cyg_nand_defaultprintf" }
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
150 description "
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
151 This is the default function to use to send debugging output
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
152 from the NAND library.
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
153 (It may be overridden by individual device drivers.)
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
154 The default value is a wrapper to diag_printf.
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
155 "
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
156 }
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
157
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
158 cdl_option CYGSEM_IO_NAND_DEBUG_LEVEL {
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
159 display "Debug chatter level"
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
160 flavor data
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
161 legal_values 0 to 9
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
162 default_value 1
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
163 description "
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
164 This option configures the degree to which the NAND code will
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
165 print status messages as various operations are undertaken.
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
166 Setting it to zero disables the status chatter altogether.
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
167 Messages, when enabled, are printed using the printf-like
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
168 function provided when the library is initialised.
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
169 (Note that serious problems are always reported via
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
170 the output function, regardless of this setting.)"
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
171 compile nand_chatter.c
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
172 }
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
173 }
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
174
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
175 cdl_option CYGSEM_IO_NAND_READONLY {
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
176 display "NAND layer is read-only"
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
177 flavor bool
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
178 default_value 0
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
179 description "
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
180 Selecting this option will globally disable all code which
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
181 writes to NAND devices."
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
182 }
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
183
3384
1229083b0af1 cdl/nand.cdl src/nand.c utils/erasenand.c: Create CYGSEM_IO_NAND_ALLOW_ERASE_WORNBAD.
Ross Younger <wry@ecoscentric.com>
parents: 3017
diff changeset
184 cdl_component CYGSEM_IO_NAND_USE_BBT {
2948
f14749d39b9c NAND: implement CYGSEM_IO_NAND_USE_BBT
Ross Younger <wry@ecoscentric.com>
parents: 2944
diff changeset
185 display "NAND layer uses bad-block tables"
f14749d39b9c NAND: implement CYGSEM_IO_NAND_USE_BBT
Ross Younger <wry@ecoscentric.com>
parents: 2944
diff changeset
186 flavor bool
f14749d39b9c NAND: implement CYGSEM_IO_NAND_USE_BBT
Ross Younger <wry@ecoscentric.com>
parents: 2944
diff changeset
187 default_value 1
f14749d39b9c NAND: implement CYGSEM_IO_NAND_USE_BBT
Ross Younger <wry@ecoscentric.com>
parents: 2944
diff changeset
188 description "
f14749d39b9c NAND: implement CYGSEM_IO_NAND_USE_BBT
Ross Younger <wry@ecoscentric.com>
parents: 2944
diff changeset
189 Select this option to instruct the NAND library to use
f14749d39b9c NAND: implement CYGSEM_IO_NAND_USE_BBT
Ross Younger <wry@ecoscentric.com>
parents: 2944
diff changeset
190 a Bad Block Table to keep track of blocks marked bad
f14749d39b9c NAND: implement CYGSEM_IO_NAND_USE_BBT
Ross Younger <wry@ecoscentric.com>
parents: 2944
diff changeset
191 at the factory and any bad blocks which may develop during
f14749d39b9c NAND: implement CYGSEM_IO_NAND_USE_BBT
Ross Younger <wry@ecoscentric.com>
parents: 2944
diff changeset
192 the life of the device. This is strongly recommended."
3384
1229083b0af1 cdl/nand.cdl src/nand.c utils/erasenand.c: Create CYGSEM_IO_NAND_ALLOW_ERASE_WORNBAD.
Ross Younger <wry@ecoscentric.com>
parents: 3017
diff changeset
193
1229083b0af1 cdl/nand.cdl src/nand.c utils/erasenand.c: Create CYGSEM_IO_NAND_ALLOW_ERASE_WORNBAD.
Ross Younger <wry@ecoscentric.com>
parents: 3017
diff changeset
194 cdl_option CYGSEM_IO_NAND_ALLOW_ERASE_WORNBAD {
1229083b0af1 cdl/nand.cdl src/nand.c utils/erasenand.c: Create CYGSEM_IO_NAND_ALLOW_ERASE_WORNBAD.
Ross Younger <wry@ecoscentric.com>
parents: 3017
diff changeset
195 flavor bool
1229083b0af1 cdl/nand.cdl src/nand.c utils/erasenand.c: Create CYGSEM_IO_NAND_ALLOW_ERASE_WORNBAD.
Ross Younger <wry@ecoscentric.com>
parents: 3017
diff changeset
196 default_value 0
1229083b0af1 cdl/nand.cdl src/nand.c utils/erasenand.c: Create CYGSEM_IO_NAND_ALLOW_ERASE_WORNBAD.
Ross Younger <wry@ecoscentric.com>
parents: 3017
diff changeset
197 display "Allow worn-bad blocks to be erased"
1229083b0af1 cdl/nand.cdl src/nand.c utils/erasenand.c: Create CYGSEM_IO_NAND_ALLOW_ERASE_WORNBAD.
Ross Younger <wry@ecoscentric.com>
parents: 3017
diff changeset
198 description "Normally, if a block is marked as worn-bad
1229083b0af1 cdl/nand.cdl src/nand.c utils/erasenand.c: Create CYGSEM_IO_NAND_ALLOW_ERASE_WORNBAD.
Ross Younger <wry@ecoscentric.com>
parents: 3017
diff changeset
199 in the Bad Block Table, it cannot be read, written
1229083b0af1 cdl/nand.cdl src/nand.c utils/erasenand.c: Create CYGSEM_IO_NAND_ALLOW_ERASE_WORNBAD.
Ross Younger <wry@ecoscentric.com>
parents: 3017
diff changeset
200 or erased. This option allows such blocks to be erased."
1229083b0af1 cdl/nand.cdl src/nand.c utils/erasenand.c: Create CYGSEM_IO_NAND_ALLOW_ERASE_WORNBAD.
Ross Younger <wry@ecoscentric.com>
parents: 3017
diff changeset
201 }
2948
f14749d39b9c NAND: implement CYGSEM_IO_NAND_USE_BBT
Ross Younger <wry@ecoscentric.com>
parents: 2944
diff changeset
202 }
f14749d39b9c NAND: implement CYGSEM_IO_NAND_USE_BBT
Ross Younger <wry@ecoscentric.com>
parents: 2944
diff changeset
203
2930
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
204 cdl_option CYGNUM_NAND_PAGEBUFFER {
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
205 display "Largest page size to support"
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
206 flavor data
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
207 default_value 0
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
208 description "
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
209 This package requires a certain amount of RAM to use as a
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
210 page buffer from time to time. This value is the
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
211 size of that buffer. You should not normally require to
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
212 edit this; it is affected by whichever NAND chip driver
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
213 packages are present."
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
214 }
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
215
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
216 cdl_option CYGNUM_NAND_MAX_READ_RETRIES {
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
217 display "Automatic read retry limit"
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
218 flavor data
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
219 default_value 2
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
220 description "
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
221 Typical NAND chips may exhibit occasional bit errors,
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
222 which may be transient. This library implements
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
223 an Error Correcting Code in order to detect and
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
224 automatically repair these. If you are unlucky,
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
225 a combination of errors may cause an indication of
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
226 an uncorrectable error, which would normally be returned to
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
227 the caller as EIO. This setting causes the library
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
228 to automatically retry a read, up to this many times,
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
229 in the hope that the error is transient;
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
230 set to 0 if you wish to disable this behaviour."
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
231 }
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
232
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
233 cdl_option CYGNUM_NAND_MAX_PARTITIONS {
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
234 display "Maximum number of partitions on a NAND chip"
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
235 flavor data
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
236 default_value 4
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
237 legal_values 1 to 0x7fffffff
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
238 description "
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
239 Within every NAND device there are one or more logical partitions,
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
240 akin to partitions on a hard drive. This setting is the
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
241 largest number of partitions that the NAND library and
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
242 drivers will support. The default, 4, should be enough for
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
243 most purposes. (Higher settings consume more RAM at runtime.)
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
244
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
245 N.B. This setting does not configure how partitions are defined;
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
246 that is set up in the platform HAL."
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
247 }
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
248
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
249 # We do not currently provide CDL options to switch the choice of
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
250 # ECC algorithm, OOB area layout and BBT semantics on and off.
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
251 # This could easily be added in future if there was a demand for it.
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
252 # Bear in mind that as well as conditioning the code in/out, each
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
253 # chip instance must select its own semantics individually (in case
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
254 # of multiple devices with different requirements), so there may
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
255 # well not be a need for a top-level switch.
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
256
2949
b72667909323 NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents: 2948
diff changeset
257 cdl_option CYGBLD_IO_NAND_BUILD_UTILS {
b72667909323 NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents: 2948
diff changeset
258 display "Build NAND library utilities"
b72667909323 NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents: 2948
diff changeset
259 default_value 0
b72667909323 NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents: 2948
diff changeset
260 no_define
b72667909323 NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents: 2948
diff changeset
261 description "If set, builds the NAND library utilities at the
b72667909323 NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents: 2948
diff changeset
262 same time as the tests. Beware that misuse of these utilities
b72667909323 NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents: 2948
diff changeset
263 can seriously mess up your NAND chip; they should not be
b72667909323 NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents: 2948
diff changeset
264 played with lightly."
b72667909323 NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents: 2948
diff changeset
265 }
b72667909323 NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents: 2948
diff changeset
266
2976
758f9d488949 NAND: Add timing instrumentation hooks (disabled by default)
Ross Younger <wry@ecoscentric.com>
parents: 2964
diff changeset
267 cdl_option CYGSEM_IO_NAND_INSTRUMENT_TIMING {
758f9d488949 NAND: Add timing instrumentation hooks (disabled by default)
Ross Younger <wry@ecoscentric.com>
parents: 2964
diff changeset
268 display "Instrument NAND call timings"
758f9d488949 NAND: Add timing instrumentation hooks (disabled by default)
Ross Younger <wry@ecoscentric.com>
parents: 2964
diff changeset
269 default_value 0
758f9d488949 NAND: Add timing instrumentation hooks (disabled by default)
Ross Younger <wry@ecoscentric.com>
parents: 2964
diff changeset
270 description "This option enables timing instrumentation within
758f9d488949 NAND: Add timing instrumentation hooks (disabled by default)
Ross Younger <wry@ecoscentric.com>
parents: 2964
diff changeset
271 the NAND library. It is intended only to assist driver
758f9d488949 NAND: Add timing instrumentation hooks (disabled by default)
Ross Younger <wry@ecoscentric.com>
parents: 2964
diff changeset
272 authors during development.
758f9d488949 NAND: Add timing instrumentation hooks (disabled by default)
Ross Younger <wry@ecoscentric.com>
parents: 2964
diff changeset
273 Normal users should not set this option."
758f9d488949 NAND: Add timing instrumentation hooks (disabled by default)
Ross Younger <wry@ecoscentric.com>
parents: 2964
diff changeset
274 }
758f9d488949 NAND: Add timing instrumentation hooks (disabled by default)
Ross Younger <wry@ecoscentric.com>
parents: 2964
diff changeset
275
2949
b72667909323 NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents: 2948
diff changeset
276 cdl_option CYGBLD_IO_NAND_UTILS {
b72667909323 NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents: 2948
diff changeset
277 display "The list of utilities to build."
b72667909323 NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents: 2948
diff changeset
278 flavor data
b72667909323 NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents: 2948
diff changeset
279 calculated { " utils/erasenand utils/erase_bbt_dangerous" }
b72667909323 NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents: 2948
diff changeset
280 no_define
b72667909323 NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents: 2948
diff changeset
281 }
b72667909323 NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents: 2948
diff changeset
282
2930
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
283 cdl_option CYGPKG_IO_NAND_TESTS {
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
284 display "NAND library tests"
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
285 flavor data
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
286 no_define
3017
8502a048ad17 Update NAND to latest
Ross Younger <wry@ecoscentric.com>
parents: 2994
diff changeset
287 calculated { "tests/nandunit tests/nand_readlimits tests/nand_readwrite"
8502a048ad17 Update NAND to latest
Ross Younger <wry@ecoscentric.com>
parents: 2994
diff changeset
288 . " tests/nand_rwbenchmark tests/nand_sweccwalk tests/nand_eccequiv"
2949
b72667909323 NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents: 2948
diff changeset
289 . (CYGBLD_IO_NAND_BUILD_UTILS ? CYGBLD_IO_NAND_UTILS : "")
b72667909323 NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents: 2948
diff changeset
290 }
b72667909323 NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents: 2948
diff changeset
291 description "This special option specifies the set of NAND
b72667909323 NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents: 2948
diff changeset
292 library tests (and utilities, if enabled) to build."
2930
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
293 }
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
294
3394
7905ed422fdf io/nand: Rename CYGINT_IO_NAND_TEST_PARTITION to CYGNUM_IO_NAND_TEST_PARTITION.
Ross Younger <wry@ecoscentric.com>
parents: 3387
diff changeset
295 cdl_option CYGNUM_IO_NAND_TEST_PARTITION {
3387
c1cbf062a826 io/nand: Add CYGINT_IO_NAND_TEST_PARTITION to specify which partition the tests should use.
Ross Younger <wry@ecoscentric.com>
parents: 3384
diff changeset
296 display "The NAND partition to use for tests."
c1cbf062a826 io/nand: Add CYGINT_IO_NAND_TEST_PARTITION to specify which partition the tests should use.
Ross Younger <wry@ecoscentric.com>
parents: 3384
diff changeset
297 flavor data
c1cbf062a826 io/nand: Add CYGINT_IO_NAND_TEST_PARTITION to specify which partition the tests should use.
Ross Younger <wry@ecoscentric.com>
parents: 3384
diff changeset
298 default_value 0
c1cbf062a826 io/nand: Add CYGINT_IO_NAND_TEST_PARTITION to specify which partition the tests should use.
Ross Younger <wry@ecoscentric.com>
parents: 3384
diff changeset
299 legal_values 0 to CYGNUM_NAND_MAX_PARTITIONS-1
c1cbf062a826 io/nand: Add CYGINT_IO_NAND_TEST_PARTITION to specify which partition the tests should use.
Ross Younger <wry@ecoscentric.com>
parents: 3384
diff changeset
300 description "Some of the NAND library tests need to write to
c1cbf062a826 io/nand: Add CYGINT_IO_NAND_TEST_PARTITION to specify which partition the tests should use.
Ross Younger <wry@ecoscentric.com>
parents: 3384
diff changeset
301 a device. This controls which partition to use."
c1cbf062a826 io/nand: Add CYGINT_IO_NAND_TEST_PARTITION to specify which partition the tests should use.
Ross Younger <wry@ecoscentric.com>
parents: 3384
diff changeset
302 }
c1cbf062a826 io/nand: Add CYGINT_IO_NAND_TEST_PARTITION to specify which partition the tests should use.
Ross Younger <wry@ecoscentric.com>
parents: 3384
diff changeset
303
3017
8502a048ad17 Update NAND to latest
Ross Younger <wry@ecoscentric.com>
parents: 2994
diff changeset
304 cdl_option CYGSEM_IO_NAND_ECC_SPLIT_FUNCTION {
8502a048ad17 Update NAND to latest
Ross Younger <wry@ecoscentric.com>
parents: 2994
diff changeset
305 flavor bool
8502a048ad17 Update NAND to latest
Ross Younger <wry@ecoscentric.com>
parents: 2994
diff changeset
306 calculated 1
8502a048ad17 Update NAND to latest
Ross Younger <wry@ecoscentric.com>
parents: 2994
diff changeset
307 display "ECC interface has split calculate function"
8502a048ad17 Update NAND to latest
Ross Younger <wry@ecoscentric.com>
parents: 2994
diff changeset
308 description "This marker option signals to NAND drivers that the
8502a048ad17 Update NAND to latest
Ross Younger <wry@ecoscentric.com>
parents: 2994
diff changeset
309 split calculate-ECC function is present. Some require it."
8502a048ad17 Update NAND to latest
Ross Younger <wry@ecoscentric.com>
parents: 2994
diff changeset
310 no_define
8502a048ad17 Update NAND to latest
Ross Younger <wry@ecoscentric.com>
parents: 2994
diff changeset
311 }
8502a048ad17 Update NAND to latest
Ross Younger <wry@ecoscentric.com>
parents: 2994
diff changeset
312
2930
6efd22c2e7b1 Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff changeset
313 }