1 2005-08-02 Andrew Lunn <andrew.lunn@ascom.ch>
3 * tests/flash1.c (cyg_start): Compiler warning fixes.
5 2005-03-27 Andrew Lunn <andrew.lunn@ascom.ch>
7 * tests/flash1.c: Fixed compiler warning with diag_printf.
9 2004-09-05 Mark Salter <msalter@redhat.com>
11 * doc/flash.sgml: Fix unbalanced <PARA>s.
13 2004-08-24 Gary Thomas <gary@mlbassoc.com>
16 * tests/flash1.c: Add simple test of FLASH driver.
18 2004-06-20 Andrew Lunn <andrew.lunn@ascom.ch>
20 * src/flash.c (flash_read): Don't check if the flash is write
21 protected before performing a read.
23 * cdl/io_flash.cdl: Added documentation of the FLASH API
25 2004-04-29 Sebastien Couret <sebastien.couret@elios-informatique.com>
26 2004-04-29 Jonathan Larmour <jifl@eCosCentric.com>
28 * src/flashiodev.c: When checking flash upper bound, allow for end
29 of flash at 0xffffffff.
31 2003-11-27 David Woodhouse <dwmw2@infradead.org>
33 * src/flashiodev.c: Enable set_config() and implement
34 CYG_IO_SET_CONFIG_FLASH_FIS_NAME.
36 2003-11-25 Andrew Lunn <andrew.lunn@ascom.ch>
38 * src/flash.c: gcc 3.x vs gcc 2.x problems.
40 2003-11-24 Jani Monoses <jani@iv.ro>
43 * include/flash.h: Remove CYGNUM_FLASH_WORKSPACE_SIZE cdl option.
45 2003-11-24 Roland Caßebohm <roland.cassebohm@visionsystems.de>
47 * src/flashiodev.c (flashiodev_bwrite): Use flash_read rather than
48 directly doing a memcpy.
50 2003-11-20 Jani Monoses <jani@iv.ro>
54 * include/flash.h: Remove references to work_space and work_space_size
55 since they are no longer used.
57 2003-11-20 Jani Monoses <jani@iv.ro>
60 * src/flash.c: Remove handling of CYGHWR_IO_FLASH_DEVICE_NOT_IN_RAM
61 now that all flash drivers use ELF sections to specify which parts
64 2003-10-08 Roland Cassebohm <roland.cassebohm@visionsystems.de>
66 * src/flash.c: Fix parse error if CYGSEM_IO_FLASH_READ_INDIRECT
69 2003-09-19 Gary Thomas <gary@mlbassoc.com>
73 * cdl/io_flash.cdl: Add support for NAND (indirectly accessed)
74 devices. This includes a generic "flash_read_buf()" function.
76 2003-04-14 Jani Monoses <jani@iv.ro>
78 * include/flash_dev.h: Include <cyg/infra/cyg_type.h>
80 2003-03-19 Thomas Koeller <thomas.koeller@baslerweb.com>
82 * src/flashiodev.c: Fixed trivial error.
84 2003-03-03 Knud Woehler <knud.woehler@microplex.de>
87 * cdl/io_flash.cdl: Add CYGNUM_IO_FLASH_BLOCK_CFG_FIS_1 /
88 CYGNUM_IO_FLASH_BLOCK_CFG_STATIC_1. Initialize the block device
91 2003-02-24 Jonathan Larmour <jifl@eCosCentric.com>
93 * cdl/io_flash.cdl: Remove irrelevant doc link - default to top
96 2002-01-31 Jonathan Larmour <jlarmour@redhat.com>
98 * src/flashiodev.c: Fix bounds checking and offsetting.
100 * cdl/io_flash.cdl (CYGNUM_IO_FLASH_BLOCK_LENGTH_1): Default to
101 0x100000 for convenience.
103 2002-01-30 Jonathan Larmour <jlarmour@redhat.com>
105 * cdl/io_flash.cdl: Allow specification of an offset and length
106 of the region of flash.
107 * src/flashiodev.c: Use it.
109 2002-01-24 Jesper Skov <jskov@redhat.com>
111 * include/flash.h: Add a comment about the obvious: the flash
112 caching macros should be called with interrupts disabled.
114 2002-01-23 Jonathan Larmour <jlarmour@redhat.com>
116 * cdl/io_flash.cdl: Add CYGPKG_IO_FLASH_BLOCK_DEVICE and
117 CYGDAT_IO_FLASH_BLOCK_DEVICE_NAME_1 to allow exporting flash
118 as block devices accessible from file systems.
119 * src/fileiodev.c: New file implementing this.
120 * include/flash.h: Add typedefs for the various structures used
121 to configure the block devices.
123 2002-01-18 Paul Fine <pfine@delcomsys.com>
125 * src/flash.c : Modified flash_verify_addr, flash_erase,
126 flash_lock and flash_unlock to to work properly when the location
127 of the flash in the memory map is at the very top of the address
128 space. We check and handle values that may overflow.
130 2001-10-28 Gary Thomas <gthomas@redhat.com>
132 * src/flash.c (flash_erase): Don't call hardware layer if block
133 appears to be already erased [faster and less wear & tear].
135 2001-10-25 Jonathan Larmour <jlarmour@redhat.com>
137 * include/flash_dev.h: Fix test of 4x16-bit flash parts.
138 Spotted by Jose Pascual <josepascual@almudi.com>
140 2001-10-16 Jesper Skov <jskov@redhat.com>
142 * src/flash.c: Include string.h
144 * cdl/io_flash.cdl: Package requires ISOINFRA and string
147 2001-10-15 David Howells <dhowells@redhat.com>
149 * src/flash.c: Include string.h to get mem*() functions.
151 2001-09-25 Gary Thomas <gthomas@redhat.com>
153 * include/flash.h: Remove warning on printf() prototype.
155 2001-08-10 Jesper Skov <jskov@redhat.com>
157 * cdl/io_flash.cdl: Changed flavor of
158 CYGHWR_IO_FLASH_BLOCK_LOCKING to booldata.
159 * include/flash.h: Matching changes.
160 * src/flash.c: Matching changes.
162 2001-07-23 David Howells <dhowells@redhat.com>
164 * cdl/io_flash.cdl: Added software write protect option.
165 * include/flash.h: Ditto.
166 * src/flash.c: Added software write protect option and bank
167 support, and prevented low-level writes from being handed
168 cross-block data chunks.
170 2001-07-20 Gary Thomas <gthomas@redhat.com>
173 * cdl/io_flash.cdl: Name convention: CYGINT_FLASH_WORKSPACE_SIZE
174 renamed to be CYGNUM_FLASH_WORKSPACE_SIZE.
176 2001-07-19 Gary Thomas <gthomas@redhat.com>
179 * cdl/io_flash.cdl: New option CYGINT_FLASH_WORKSPACE_SIZE used
180 to control how much memory is reserved for use by FLASH drivers.
182 2001-06-19 Hugo Tyson <hmt@redhat.com>
184 * src/flash.c (flash_program): Only verify program with memcmp if
185 the status code suggests the programming went OK so far.
186 Otherwise all errors become verify errors.
188 (flash_init): Fix bug in removal of dependency of printf(). The
189 pointer was not initialized until after the call into the driver.
191 2001-06-11 Gary Thomas <gthomas@redhat.com>
194 * include/flash.h: Remove dependency on printf() via user functions.
196 2001-05-23 Jesper Skov <jskov@redhat.com>
198 * include/flash_dev.h (FLASH_P2V): Use CYG_ADDRWORD instead of int.
200 * src/flash.c: Copy functions to RAM iff
201 CYGHWR_IO_FLASH_DEVICE_NOT_IN_RAM defined.
203 * cdl/io_flash.cdl: Changed CYGHWR_IO_FLASH_DEVICE_IN_RAM to
204 CYGHWR_IO_FLASH_DEVICE_NOT_IN_RAM.
206 2001-05-21 Jonathan Larmour <jlarmour@redhat.com>
208 * include/flash_dev.h: Fix cyg_uin16 typo.
210 2001-03-29 Mark Salter <msalter@redhat.com>
212 * cdl/io_flash.cdl (CYGSEM_IO_FLASH_VERIFY_PROGRAM): New option
213 to control whether or not to perform extra verification of flash
215 * src/flash.c (flash_program): No verification unless
216 CYGSEM_IO_FLASH_VERIFY_PROGRAM defined.
218 2001-03-21 Gary Thomas <gthomas@redhat.com>
220 * src/flash.c (flash_program): Verify data after programming.
222 2001-03-21 Jesper Skov <jskov@redhat.com>
224 * include/flash.h: Added low voltage error message.
225 * src/flash.c: And its error message.
227 2001-03-17 Gary Thomas <gthomas@redhat.com>
229 * src/flash.c (flash_program):
230 * include/flash.h: Add support for [StrataFLASH] buffered writes.
231 This requires knowledge of the device write buffer size [saved].
233 2001-03-01 Gary Thomas <gthomas@redhat.com>
236 * include/flash.h: Allow platform to define pre/post routines
237 to enable/disable device access. These may be required, e.g.
238 to turn on some voltage, etc.
240 2001-02-23 Jesper Skov <jskov@redhat.com>
242 * include/flash.h: HAL_FLASH_CACHES_WANT_OPTIMAL replaced with
243 (opposite sense) HAL_FLASH_CACHES_OLD_MACROS.
245 * src/flash.c (__anonymizer): Use to force the compiler to use
246 jumps instead of branches.
248 2001-02-22 Jesper Skov <jskov@redhat.com>
250 * include/flash_dev.h: Added. Contains macros and definitions
251 common to all (new style) flash device drivers.
253 * include/flash.h: Added two new error codes.
254 * cdl/io_flash.cdl: Added CYGHWR_IO_FLASH_DEVICE_IN_RAM.
255 * src/flash.c: Made functions respect
256 CYGHWR_IO_FLASH_DEVICE_IN_RAM and jump directly to the code
257 instead of copying it around.
258 (__arm_broken): Work around problem with ARM tools.
260 2001-02-06 Hugo Tyson <hmt@redhat.com>
262 * src/flash.c (flash_erase): Add an additional argument to the
263 call into the driver, being the blocksize (as discovered). This
264 allows a gross check for actual erase in some drivers. Those that
265 don't use it, it's harmless - after all, this is an API by trust.
267 2000-12-06 Jesper Skov <jskov@redhat.com>
269 * src/flash.c (flash_dev_query): Added. Allows reloc/cache magic
270 to be removed from device drivers (eventually). Also fixed some
271 warnings, and made function references use char[] instead of just
272 char to prevent MIPS compiler from messing up.
274 * include/flash.h: Added FLASH_ERR_DRV_VERIFY and flash_dev_query.
276 2000-11-27 Jesper Skov <jskov@redhat.com>
278 * src/flash.c: Do all flash access inside properly
279 cache-controlled region.
280 * include/flash.h: Cache definitions.
282 2000-11-17 Jesper Skov <jskov@redhat.com>
284 * src/flash.c: Added debug mode, allowing device driver to use printf.
286 2000-11-16 Jesper Skov <jskov@redhat.com>
288 * src/flash.c: Added suspend error messages.
289 * include/flash.h: Same.
291 2000-09-01 Hugo Tyson <hmt@cygnus.co.uk>
294 * src/flash.c: CYGHWR_IO_FLASH_BLOCK_LOCKING is an interface, so
295 it's always defined; look for > 0 instead.
297 2000-08-28 Gary Thomas <gthomas@redhat.com>
301 * cdl/io_flash.cdl: Support block locking (optional by hardware).
303 2000-08-22 Hugo Tyson <hmt@cygnus.co.uk>
305 * src/flash.c (flash_program): Add HAL_ICACHE_DISABLE/ENABLE pairs
306 around calls to RAM copy of programming/erasing function - this is
307 necessary to get reliable operation on EBSA285 and similar.
308 Otherwise, what is in the instruction cache might be run instead.
310 2000-08-14 Gary Thomas <gthomas@redhat.com>
312 * include/flash.h: Add block size mask for finding block boundaries.
314 * src/flash.c: Use block size properly.
316 2000-07-29 Gary Thomas <gthomas@redhat.com>
319 * src/flash.c (flash_get_block_info): New function.
320 (flash_program): Program in block_size chunks as much as possible.
322 //===========================================================================
323 //####ECOSGPLCOPYRIGHTBEGIN####
324 // -------------------------------------------
325 // This file is part of eCos, the Embedded Configurable Operating System.
326 // Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
328 // eCos is free software; you can redistribute it and/or modify it under
329 // the terms of the GNU General Public License as published by the Free
330 // Software Foundation; either version 2 or (at your option) any later version.
332 // eCos is distributed in the hope that it will be useful, but WITHOUT ANY
333 // WARRANTY; without even the implied warranty of MERCHANTABILITY or
334 // FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
337 // You should have received a copy of the GNU General Public License along
338 // with eCos; if not, write to the Free Software Foundation, Inc.,
339 // 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
341 // As a special exception, if other files instantiate templates or use macros
342 // or inline functions from this file, or you compile this file and link it
343 // with other works to produce a work based on this file, this file does not
344 // by itself cause the resulting work to be covered by the GNU General Public
345 // License. However the source code for this file must still be made available
346 // in accordance with section (3) of the GNU General Public License.
348 // This exception does not invalidate any other reasons why a work based on
349 // this file might be covered by the GNU General Public License.
351 // Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
352 // at http://sources.redhat.com/ecos/ecos-license/
353 // -------------------------------------------
354 //####ECOSGPLCOPYRIGHTEND####
355 //===========================================================================