]> git.kernelconcepts.de Git - karo-tx-redboot.git/blob - packages/devs/flash/arm/mxc/v2_0/cdl/mxc_flash_select.cdl
TX51/TX53 Release 2011-08-19
[karo-tx-redboot.git] / packages / devs / flash / arm / mxc / v2_0 / cdl / mxc_flash_select.cdl
1 # ====================================================================
2 #####ECOSGPLCOPYRIGHTBEGIN####
3 ## -------------------------------------------
4 ## This file is part of eCos, the Embedded Configurable Operating System.
5 ## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
6 ##
7 ## eCos is free software; you can redistribute it and/or modify it under
8 ## the terms of the GNU General Public License as published by the Free
9 ## Software Foundation; either version 2 or (at your option) any later version.
10 ##
11 ## eCos is distributed in the hope that it will be useful, but WITHOUT ANY
12 ## WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 ## FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
14 ## for more details.
15 ##
16 ## You should have received a copy of the GNU General Public License along
17 ## with eCos; if not, write to the Free Software Foundation, Inc.,
18 ## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
19 ##
20 ## As a special exception, if other files instantiate templates or use macros
21 ## or inline functions from this file, or you compile this file and link it
22 ## with other works to produce a work based on this file, this file does not
23 ## by itself cause the resulting work to be covered by the GNU General Public
24 ## License. However the source code for this file must still be made available
25 ## in accordance with section (3) of the GNU General Public License.
26 ##
27 ## This exception does not invalidate any other reasons why a work based on
28 ## this file might be covered by the GNU General Public License.
29 ##
30 ## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
31 ## at http://sources.redhat.com/ecos/ecos-license/
32 ## -------------------------------------------
33 #####ECOSGPLCOPYRIGHTEND####
34 # ====================================================================
35 ######DESCRIPTIONBEGIN####
36 #
37 # Author(s):      gthomas
38 # Original data:  gthomas
39 # Contributors:
40 # Date:           2000-07-26
41 #
42 #####DESCRIPTIONEND####
43 #
44 # ====================================================================
45
46 cdl_package CYGPKG_DEVS_FLASH_ONMXC {
47     display       "Support FLASH memory on Freescale MXC platforms"
48
49     implements    CYGHWR_IO_FLASH_DEVICE
50     parent        CYGPKG_IO_FLASH
51     active_if     CYGPKG_IO_FLASH
52
53     include_dir   cyg/io
54
55     cdl_component CYGHWR_DEVS_FLASH_MMC {
56         display       "MXC platform MMC card support"
57         default_value 0
58         requires      { CYGSEM_IO_FLASH_READ_INDIRECT == 1 }
59         description   "
60             When this option is enabled, it indicates MMC card is
61             supported on the MXC platforms"
62         define_proc {
63             puts $::cdl_system_header "#define MXCFLASH_SELECT_MMC"
64         }
65         compile       mxc_mmc.c
66
67         cdl_option CYGHWR_DEVS_FLASH_MMC_ESDHC {
68             display       "MXC platform MMC card for newer SDHC controllers"
69             active_if   { CYGPKG_HAL_ARM_MX37 || CYGPKG_HAL_ARM_MX35 || 
70                           CYGPKG_HAL_ARM_MX25 ||  CYGPKG_HAL_ARM_MX51 }
71             default_value 1
72             requires      { CYGSEM_IO_FLASH_READ_INDIRECT == 1 }
73             compile       mxcmci_core.c  mxcmci_host.c  mxcmci_mmc.c mxcmci_sd.c mxcmci_sd.c
74         }
75
76         cdl_option CYGHWR_DEVS_FLASH_MMC_SD {
77             display       "MXC platform MMC card for older MMC/SD controllers"
78             active_if   { CYGPKG_HAL_ARM_MX31_3STACK || CYGPKG_HAL_ARM_MX31ADS }
79             default_value 0
80             requires      { CYGSEM_IO_FLASH_READ_INDIRECT == 1 }
81             compile       card_mx32.c
82         }
83     }
84
85     cdl_option CYGHWR_DEVS_FLASH_MXC_NOR {
86         display       "MXC platform NOR flash memory support"
87         default_value 0
88         description   "
89             When this option is enabled, it indicates NOR flash is
90             supported on the MXC platforms"
91         define_proc {
92             puts $::cdl_system_header "#define MXCFLASH_SELECT_NOR"
93         }
94     }
95     cdl_option CYGHWR_DEVS_FLASH_MXC_NAND {
96         display       "MXC platform NAND flash memory support"
97         default_value 0
98         requires      { CYGSEM_IO_FLASH_READ_INDIRECT == 1 }
99         description   "
100             When this option is enabled, it indicates NAND flash is
101             supported on the MXC platforms"
102         define_proc {
103             puts $::cdl_system_header "#define MXCFLASH_SELECT_NAND"
104             puts $::cdl_system_header "#define CYGIMP_FLASH_ENABLE      mxc_flash_enable"
105             puts $::cdl_system_header "#define CYGIMP_FLASH_DISABLE     mxc_flash_disable"
106         }
107         compile       mxc_nfc.c
108     }
109
110     cdl_option CYGHWR_DEVS_FLASH_IMX_SPI_NOR {
111         display       "i.MX platform SPI NOR flash memory support"
112         default_value 0
113         requires      { CYGHWR_DEVS_FLASH_MXC_NOR == 1 }
114         description   "
115             When this option is enabled, it indicates SPI NOR flash is
116             supported on the i.MX platforms"
117         define_proc {
118             puts $::cdl_system_header "#define IMXFLASH_SELECT_SPI_NOR"
119         }
120         compile       spi_nor.c
121     }
122
123     cdl_option CYGHWR_DEVS_FLASH_MXC_ATA {
124         display       "MXC platform ATA support"
125         default_value 0
126         description   "
127             When this option is enabled, it indicates ATA is
128             supported on the MXC platforms"
129         define_proc {
130             puts $::cdl_system_header "#define MXCFLASH_SELECT_ATA"
131         }
132         compile       mxc_ata.c
133     }
134
135     cdl_component CYGPKG_DEVS_FLASH_NAND_BBT_IN_FLASH {
136         display       "Use a flash based Bad Block Table"
137         flavor        none
138         no_define
139         active_if     CYGHWR_DEVS_FLASH_MXC_NAND
140         cdl_option CYGHWR_DEVS_FLASH_MXC_BBT_IN_FLASH {
141             default_value 1
142             description   "
143                 When this option is enabled, the driver will search for a flash
144                 based bad block table"
145             define_proc {
146                 puts $::cdl_system_header "#define MXCFLASH_FLASH_BASED_BBT"
147                 puts $::cdl_system_header "#include <pkgconf/devs_flash_onmxc.h>"
148             }
149         }
150         cdl_component CYGHWR_FLASH_NAND_BBT_HEADER {
151             display       "header file defining the NAND BBT descriptor"
152             flavor        booldata
153             default_value 0
154             description   "
155                 defines the name of the header file that describes the BBT layout"
156         }
157         cdl_option CYGNUM_FLASH_NAND_BBT_BLOCKS {
158             display          "Number of blocks to reserve for BBT"
159             flavor           data
160             default_value    4
161             description      "
162                Number of blocks to reserve for BBT"
163         }
164     }
165
166     cdl_option CYGHWR_DEVS_FLASH_MXC_MULTI {
167         display       "MXC platform multi flash memory support"
168         default_value 1
169         active_if     {(CYGHWR_DEVS_FLASH_MXC_NAND && CYGHWR_DEVS_FLASH_MXC_NOR) ||
170                        (CYGHWR_DEVS_FLASH_MXC_NAND && CYGHWR_DEVS_FLASH_MMC) ||
171                        (CYGHWR_DEVS_FLASH_MXC_NOR && CYGHWR_DEVS_FLASH_MMC)}
172         description   "
173             When this option is enabled, it indicates multi flashes are
174             supported on the MXC platforms (like NAND and NOR)"
175         define_proc {
176             puts $::cdl_system_header "#define MXCFLASH_SELECT_MULTI"
177         }
178         compile       mxcflash_wrapper.c
179     }
180     cdl_interface CYGHWR_DEVS_FLASH_MXC_NAND_RESET_WORKAROUND {
181         display       "MXC platform NAND flash reset workaround support"
182         active_if     {CYGHWR_DEVS_FLASH_MXC_NAND}
183         description   "
184             When this option is enabled, it indicates 0xFFFF is used for
185             the NAND reset command instead of 0xFF."
186     }
187 }