Mercurial > nand-ecoscentric
annotate packages/io/nand/current/cdl/nand.cdl @ 3387:c1cbf062a826
io/nand: Add CYGINT_IO_NAND_TEST_PARTITION to specify which partition the tests should use.
| author | Ross Younger <wry@ecoscentric.com> |
|---|---|
| date | Sat, 27 Sep 2014 12:35:37 +1200 |
| parents | 1229083b0af1 |
| children | 7905ed422fdf |
| 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 parent CYGPKG_IO |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
53 include_dir cyg/nand |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
54 doc ref/nand.html |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
55 description " |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
56 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
|
57 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
|
58 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
|
59 the particular devices present." |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
60 |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
61 requires CYGINT_ISO_ERRNO_CODES |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
62 requires CYGPKG_ISOINFRA |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
63 requires CYGPKG_LIBC_STRING |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
64 requires CYGINT_ISO_STRING_MEMFUNCS |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
65 requires CYGPKG_LIBC_STDLIB |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
66 |
|
2994
3d3b0d53c2e5
NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents:
2976
diff
changeset
|
67 # 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
|
68 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
|
69 |
|
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
|
70 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
|
71 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
|
72 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
|
73 compile -library=libextras.a nandinit.cxx |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
74 |
|
2994
3d3b0d53c2e5
NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents:
2976
diff
changeset
|
75 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
|
76 display "NAND application interface version" |
|
3d3b0d53c2e5
NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents:
2976
diff
changeset
|
77 flavor data |
|
3d3b0d53c2e5
NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents:
2976
diff
changeset
|
78 calculated 2 |
|
3d3b0d53c2e5
NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents:
2976
diff
changeset
|
79 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
|
80 interface provided by |
|
3d3b0d53c2e5
NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents:
2976
diff
changeset
|
81 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
|
82 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
|
83 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
|
84 to function correctly." |
|
3d3b0d53c2e5
NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents:
2976
diff
changeset
|
85 } |
|
3d3b0d53c2e5
NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents:
2976
diff
changeset
|
86 |
|
2944
32bcd454bda4
Major update to allow hardware ECC: change driver interface (to "v2" - with CDL marker), expand ECC interface
wry
parents:
2937
diff
changeset
|
87 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
|
88 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
|
89 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
|
90 calculated 2 |
|
2994
3d3b0d53c2e5
NAND: application interface v2: functions take partition-relative addresses.
Ross Younger <wry@ecoscentric.com>
parents:
2976
diff
changeset
|
91 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
|
92 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
|
93 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
|
94 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
|
95 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
|
96 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
|
97 } |
|
32bcd454bda4
Major update to allow hardware ECC: change driver interface (to "v2" - with CDL marker), expand ECC interface
wry
parents:
2937
diff
changeset
|
98 |
|
2930
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
99 cdl_component CYGPKG_IO_NAND_OPTIONS { |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
100 display "NAND library build options" |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
101 flavor none |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
102 description " |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
103 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
|
104 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
|
105 flash driver." |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
106 |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
107 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
|
108 display "Additional compiler flags" |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
109 flavor data |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
110 no_define |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
111 default_value { "-Werror" } |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
112 description " |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
113 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
|
114 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
|
115 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
|
116 } |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
117 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
|
118 display "Suppressed compiler flags" |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
119 flavor data |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
120 no_define |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
121 default_value { "" } |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
122 description " |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
123 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
|
124 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
|
125 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
|
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 |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
129 cdl_interface CYGHWR_IO_NAND_DEVICE { |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
130 display "Hardware NAND device drivers" |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
131 requires { CYGHWR_IO_NAND_DEVICE >= 1 } |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
132 description " |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
133 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
|
134 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
|
135 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
|
136 } |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
137 |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
138 cdl_component CYGSEM_IO_NAND_DEBUG { |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
139 display "NAND debug output" |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
140 default_value 1 |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
141 description " |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
142 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
|
143 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
|
144 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
|
145 " |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
146 |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
147 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
|
148 display "Global output function" |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
149 flavor data |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
150 default_value { "cyg_nand_defaultprintf" } |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
151 description " |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
152 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
|
153 from the NAND library. |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
154 (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
|
155 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
|
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 |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
159 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
|
160 display "Debug chatter level" |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
161 flavor data |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
162 legal_values 0 to 9 |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
163 default_value 1 |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
164 description " |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
165 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
|
166 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
|
167 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
|
168 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
|
169 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
|
170 (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
|
171 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
|
172 compile nand_chatter.c |
|
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 |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
176 cdl_option CYGSEM_IO_NAND_READONLY { |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
177 display "NAND layer is read-only" |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
178 flavor bool |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
179 default_value 0 |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
180 description " |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
181 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
|
182 writes to NAND devices." |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
183 } |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
184 |
|
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
|
185 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
|
186 display "NAND layer uses bad-block tables" |
|
f14749d39b9c
NAND: implement CYGSEM_IO_NAND_USE_BBT
Ross Younger <wry@ecoscentric.com>
parents:
2944
diff
changeset
|
187 flavor bool |
|
f14749d39b9c
NAND: implement CYGSEM_IO_NAND_USE_BBT
Ross Younger <wry@ecoscentric.com>
parents:
2944
diff
changeset
|
188 default_value 1 |
|
f14749d39b9c
NAND: implement CYGSEM_IO_NAND_USE_BBT
Ross Younger <wry@ecoscentric.com>
parents:
2944
diff
changeset
|
189 description " |
|
f14749d39b9c
NAND: implement CYGSEM_IO_NAND_USE_BBT
Ross Younger <wry@ecoscentric.com>
parents:
2944
diff
changeset
|
190 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
|
191 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
|
192 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
|
193 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
|
194 |
|
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 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
|
196 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
|
197 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
|
198 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
|
199 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
|
200 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
|
201 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
|
202 } |
|
2948
f14749d39b9c
NAND: implement CYGSEM_IO_NAND_USE_BBT
Ross Younger <wry@ecoscentric.com>
parents:
2944
diff
changeset
|
203 } |
|
f14749d39b9c
NAND: implement CYGSEM_IO_NAND_USE_BBT
Ross Younger <wry@ecoscentric.com>
parents:
2944
diff
changeset
|
204 |
|
2930
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
205 cdl_option CYGNUM_NAND_PAGEBUFFER { |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
206 display "Largest page size to support" |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
207 flavor data |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
208 default_value 0 |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
209 description " |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
210 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
|
211 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
|
212 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
|
213 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
|
214 packages are present." |
|
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 |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
217 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
|
218 display "Automatic read retry limit" |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
219 flavor data |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
220 default_value 2 |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
221 description " |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
222 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
|
223 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
|
224 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
|
225 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
|
226 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
|
227 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
|
228 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
|
229 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
|
230 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
|
231 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
|
232 } |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
233 |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
234 cdl_option CYGNUM_NAND_MAX_PARTITIONS { |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
235 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
|
236 flavor data |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
237 default_value 4 |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
238 legal_values 1 to 0x7fffffff |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
239 description " |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
240 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
|
241 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
|
242 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
|
243 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
|
244 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
|
245 |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
246 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
|
247 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
|
248 } |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
249 |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
250 # 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
|
251 # 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
|
252 # 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
|
253 # 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
|
254 # 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
|
255 # 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
|
256 # 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
|
257 |
|
2949
b72667909323
NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents:
2948
diff
changeset
|
258 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
|
259 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
|
260 default_value 0 |
|
b72667909323
NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents:
2948
diff
changeset
|
261 no_define |
|
b72667909323
NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents:
2948
diff
changeset
|
262 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
|
263 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
|
264 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
|
265 played with lightly." |
|
b72667909323
NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents:
2948
diff
changeset
|
266 } |
|
b72667909323
NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents:
2948
diff
changeset
|
267 |
|
2976
758f9d488949
NAND: Add timing instrumentation hooks (disabled by default)
Ross Younger <wry@ecoscentric.com>
parents:
2964
diff
changeset
|
268 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
|
269 display "Instrument NAND call timings" |
|
758f9d488949
NAND: Add timing instrumentation hooks (disabled by default)
Ross Younger <wry@ecoscentric.com>
parents:
2964
diff
changeset
|
270 default_value 0 |
|
758f9d488949
NAND: Add timing instrumentation hooks (disabled by default)
Ross Younger <wry@ecoscentric.com>
parents:
2964
diff
changeset
|
271 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
|
272 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
|
273 authors during development. |
|
758f9d488949
NAND: Add timing instrumentation hooks (disabled by default)
Ross Younger <wry@ecoscentric.com>
parents:
2964
diff
changeset
|
274 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
|
275 } |
|
758f9d488949
NAND: Add timing instrumentation hooks (disabled by default)
Ross Younger <wry@ecoscentric.com>
parents:
2964
diff
changeset
|
276 |
|
2949
b72667909323
NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents:
2948
diff
changeset
|
277 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
|
278 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
|
279 flavor data |
|
b72667909323
NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents:
2948
diff
changeset
|
280 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
|
281 no_define |
|
b72667909323
NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents:
2948
diff
changeset
|
282 } |
|
b72667909323
NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents:
2948
diff
changeset
|
283 |
|
2930
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
284 cdl_option CYGPKG_IO_NAND_TESTS { |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
285 display "NAND library tests" |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
286 flavor data |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
287 no_define |
| 3017 | 288 calculated { "tests/nandunit tests/nand_readlimits tests/nand_readwrite" |
| 289 . " 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
|
290 . (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
|
291 } |
|
b72667909323
NAND: add CYGBLD_IO_NAND_BUILD_UTILS; tidy bbt code
Ross Younger <wry@ecoscentric.com>
parents:
2948
diff
changeset
|
292 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
|
293 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
|
294 } |
|
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
295 |
|
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 cdl_option CYGINT_IO_NAND_TEST_PARTITION { |
|
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 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
|
298 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
|
299 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
|
300 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
|
301 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
|
302 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
|
303 } |
|
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
|
304 |
| 3017 | 305 cdl_option CYGSEM_IO_NAND_ECC_SPLIT_FUNCTION { |
| 306 flavor bool | |
| 307 calculated 1 | |
| 308 display "ECC interface has split calculate function" | |
| 309 description "This marker option signals to NAND drivers that the | |
| 310 split calculate-ECC function is present. Some require it." | |
| 311 no_define | |
| 312 } | |
| 313 | |
|
2930
6efd22c2e7b1
Import anoncvs-based NAND and device drivers to 20090826
Ross Younger <wry@ecoscentric.com>
parents:
diff
changeset
|
314 } |
