]> git.kernelconcepts.de Git - karo-tx-redboot.git/blob - packages/devs/flash/arm/mxc/v2_0/cdl/mxc_flash_select.cdl
unified MX27, MX25, MX37 trees
[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_3STACK || CYGPKG_HAL_ARM_MX35_3STACK || CYGPKG_HAL_ARM_MX25_3STACK ||  CYGPKG_HAL_ARM_MX51}
70             default_value 1
71             requires      { CYGSEM_IO_FLASH_READ_INDIRECT == 1 }
72             compile       mxcmci_core.c  mxcmci_host.c  mxcmci_mmc.c mxcmci_sd.c mxcmci_sd.c
73         }
74
75         cdl_option CYGHWR_DEVS_FLASH_MMC_SD {
76             display       "MXC platform MMC card for older MMC/SD controllers"
77             active_if   { CYGPKG_HAL_ARM_MX31_3STACK || CYGPKG_HAL_ARM_MX31ADS }
78             default_value 0
79             requires      { CYGSEM_IO_FLASH_READ_INDIRECT == 1 }
80             compile       card_mx32.c
81         }
82     }
83
84     cdl_option CYGHWR_DEVS_FLASH_MXC_NOR {
85         display       "MXC platform NOR flash memory support"
86         default_value 0
87         description   "
88             When this option is enabled, it indicates NOR flash is
89             supported on the MXC platforms"
90         define_proc {
91             puts $::cdl_system_header "#define MXCFLASH_SELECT_NOR"
92         }
93     }
94     cdl_option CYGHWR_DEVS_FLASH_MXC_NAND {
95         display       "MXC platform NAND flash memory support"
96         default_value 0
97         requires      { CYGSEM_IO_FLASH_READ_INDIRECT == 1 }
98         description   "
99             When this option is enabled, it indicates NAND flash is
100             supported on the MXC platforms"
101         define_proc {
102             puts $::cdl_system_header "#define MXCFLASH_SELECT_NAND"
103             puts $::cdl_system_header "#define CYGIMP_FLASH_ENABLE      mxc_flash_enable"
104             puts $::cdl_system_header "#define CYGIMP_FLASH_DISABLE     mxc_flash_disable"
105         }
106         compile       mxc_nfc.c
107     }
108
109     cdl_option CYGHWR_DEVS_FLASH_IMX_SPI_NOR {
110         display       "i.MX platform SPI NOR flash memory support"
111         default_value 0
112         requires      { CYGHWR_DEVS_FLASH_MXC_NOR == 1 }
113         description   "
114             When this option is enabled, it indicates SPI NOR flash is
115             supported on the i.MX platforms"
116         define_proc {
117             puts $::cdl_system_header "#define IMXFLASH_SELECT_SPI_NOR"
118         }
119         compile       spi_nor.c
120     }
121
122     cdl_option CYGHWR_DEVS_FLASH_MXC_ATA {
123         display       "MXC platform ATA support"
124         default_value 0
125         description   "
126             When this option is enabled, it indicates ATA is
127             supported on the MXC platforms"
128         define_proc {
129             puts $::cdl_system_header "#define MXCFLASH_SELECT_ATA"
130         }
131         compile       mxc_ata.c
132     }
133
134     cdl_component CYGPKG_DEVS_FLASH_NAND_BBT_IN_FLASH {
135         display       "Use a flash based Bad Block Table"
136         flavor        none
137         no_define
138         active_if     CYGHWR_DEVS_FLASH_MXC_NAND
139         cdl_option CYGHWR_DEVS_FLASH_MXC_BBT_IN_FLASH {
140             default_value 1
141             description   "
142                 When this option is enabled, the driver will search for a flash
143                 based bad block table"
144             define_proc {
145                 puts $::cdl_system_header "#define MXCFLASH_FLASH_BASED_BBT"
146                 puts $::cdl_system_header "#include <pkgconf/devs_flash_onmxc.h>"
147             }
148         }
149         cdl_component CYGHWR_FLASH_NAND_BBT_HEADER {
150             display       "header file defining the NAND BBT descriptor"
151             flavor        booldata
152             default_value 0
153             description   "
154                 defines the name of the header file that describes the BBT layout"
155         }
156         cdl_option CYGNUM_FLASH_NAND_BBT_BLOCKS {
157             display          "Number of blocks to reserve for BBT"
158             flavor           data
159             default_value    4
160             description      "
161                Number of blocks to reserve for BBT"
162         }
163     }
164
165     cdl_option CYGHWR_DEVS_FLASH_MXC_MULTI {
166         display       "MXC platform multi flash memory support"
167         default_value 1
168         active_if     {(CYGHWR_DEVS_FLASH_MXC_NAND && CYGHWR_DEVS_FLASH_MXC_NOR) ||
169                        (CYGHWR_DEVS_FLASH_MXC_NAND && CYGHWR_DEVS_FLASH_MMC) ||
170                        (CYGHWR_DEVS_FLASH_MXC_NOR && CYGHWR_DEVS_FLASH_MMC)}
171         description   "
172             When this option is enabled, it indicates multi flashes are
173             supported on the MXC platforms (like NAND and NOR)"
174         define_proc {
175             puts $::cdl_system_header "#define MXCFLASH_SELECT_MULTI"
176         }
177         compile       mxcflash_wrapper.c
178     }
179     cdl_interface CYGHWR_DEVS_FLASH_MXC_NAND_RESET_WORKAROUND {
180         display       "MXC platform NAND flash reset workaround support"
181         active_if     {CYGHWR_DEVS_FLASH_MXC_NAND}
182         description   "
183             When this option is enabled, it indicates 0xFFFF is used for
184             the NAND reset command instead of 0xFF."
185     }
186 }