1 # ====================================================================
5 # FLASH memory - Synthetic flash driver for Synthetic target
7 # ====================================================================
8 #####ECOSGPLCOPYRIGHTBEGIN####
9 ## -------------------------------------------
10 ## This file is part of eCos, the Embedded Configurable Operating System.
11 ## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
13 ## eCos is free software; you can redistribute it and/or modify it under
14 ## the terms of the GNU General Public License as published by the Free
15 ## Software Foundation; either version 2 or (at your option) any later version.
17 ## eCos is distributed in the hope that it will be useful, but WITHOUT ANY
18 ## WARRANTY; without even the implied warranty of MERCHANTABILITY or
19 ## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
22 ## You should have received a copy of the GNU General Public License along
23 ## with eCos; if not, write to the Free Software Foundation, Inc.,
24 ## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
26 ## As a special exception, if other files instantiate templates or use macros
27 ## or inline functions from this file, or you compile this file and link it
28 ## with other works to produce a work based on this file, this file does not
29 ## by itself cause the resulting work to be covered by the GNU General Public
30 ## License. However the source code for this file must still be made available
31 ## in accordance with section (3) of the GNU General Public License.
33 ## This exception does not invalidate any other reasons why a work based on
34 ## this file might be covered by the GNU General Public License.
36 ## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
37 ## at http://sources.redhat.com/ecos/ecos-license/
38 ## -------------------------------------------
39 #####ECOSGPLCOPYRIGHTEND####
40 # ====================================================================
41 ######DESCRIPTIONBEGIN####
43 # Author(s): andrew.lunn@ascom.ch
44 # Contributors: jlarmour
47 #####DESCRIPTIONEND####
49 # ====================================================================
51 cdl_package CYGPKG_DEVS_FLASH_SYNTH {
52 display "Synthetic FLASH memory support"
54 parent CYGPKG_IO_FLASH
55 active_if CYGPKG_IO_FLASH
56 requires CYGINT_ISO_ERRNO_CODES
58 implements CYGHWR_IO_FLASH_DEVICE
61 include_files ; # none _exported_ whatsoever
62 description "FLASH memory device support for Synthetic target"
63 compile synth.c flash_erase_block.c flash_program_buf.c flash_query.c
65 cdl_option CYGMEM_FLASH_SYNTH_BASE {
66 display "Base address of flash"
70 If enabled, controls where in the synth target memory map the
71 flash is mapped. WARNING: This must be somewhere
72 the host Linux kernel is prepaired to mmap a file. It
73 must be page aligned. For hosts with recent x86 Linux kernels,
74 a value of 0x40000000 is likely appropriate. When disabled,
75 the driver will automatically use whatever address the kernel
79 cdl_option CYGSEM_FLASH_SYNTH_FILE_WRITEBACK {
80 display "FLASH changes modify the underlying file"
84 If enabled, changes made to the contents of the emulated
85 FLASH are reflected in the underlying file. Otherwise,
86 the file will be left unaffected by any changes the program
87 makes to FLASH contents."
90 cdl_option CYGNUM_FLASH_SYNTH_BLOCKSIZE {
91 display "Size of one block of synth flash"
94 legal_values 4096 to 999999
95 requires { (CYGNUM_FLASH_SYNTH_BLOCKSIZE % 4096) == 0 }
97 This controls the size of one block of flash. This is
98 the minimum size that can be erased."
101 cdl_option CYGNUM_FLASH_SYNTH_NUMBLOCKS {
102 display "Number of blocks in the synth flash"
106 This controls how many blocks there are in the flash"
109 cdl_option CYGDAT_FLASH_SYNTH_FILENAME {
110 display "Name of file emulating synth flash"
112 default_value { "\"synth.flash\"" }
114 This is the name of the file which holds the contents of
115 the flash. It is mmap'ed into memory and written for flash
116 program & erase operations. It will be created if it does
120 cdl_option CYGPKG_DEVS_FLASH_SYNTH_TESTS {
121 display "Synth flash tests"
124 calculated { "tests/flash1.c"}
126 This option specifies the set of tests for the synth flash package."
130 # EOF flash_synth.cdl