annotate packages/io/flash/current/ChangeLog @ 1744:f854ed1e81db

Fix reads on legacy devices
author bartv
date Sun, 21 Nov 2004 12:09:40 +0000
parents 0d824ba900cc
children 49e24a462730
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1743
0d824ba900cc Encapsulate various bits of optional functionality inside macros, to
bartv
parents: 1742
diff changeset
1 2004-11-21 Bart Veer <bartv@ecoscentric.com>
0d824ba900cc Encapsulate various bits of optional functionality inside macros, to
bartv
parents: 1742
diff changeset
2
1744
f854ed1e81db Fix reads on legacy devices
bartv
parents: 1743
diff changeset
3 * src/legacy_dev.c (legacy_flash_read): only needed if the
f854ed1e81db Fix reads on legacy devices
bartv
parents: 1743
diff changeset
4 underlying legacy driver required indirect reads.
1743
0d824ba900cc Encapsulate various bits of optional functionality inside macros, to
bartv
parents: 1742
diff changeset
5 * src/flash.c: encapsulate various optional bits of code in
0d824ba900cc Encapsulate various bits of optional functionality inside macros, to
bartv
parents: 1742
diff changeset
6 macros, to cut down on the #ifdef's in the main code
0d824ba900cc Encapsulate various bits of optional functionality inside macros, to
bartv
parents: 1742
diff changeset
7
1741
9464c6747e99 Sort out the various loops to cope with boundary conditions,
bartv
parents: 1735
diff changeset
8 2004-11-20 Bart Veer <bartv@ecoscentric.com>
9464c6747e99 Sort out the various loops to cope with boundary conditions,
bartv
parents: 1735
diff changeset
9
1742
a668b95e5f2e Only include the support for indirect flash reads if there are devices
bartv
parents: 1741
diff changeset
10 * cdl/io_flash.cdl, src/flash.c(cyg_flash_read): add an interface
a668b95e5f2e Only include the support for indirect flash reads if there are devices
bartv
parents: 1741
diff changeset
11 for hardware which requires indirect reads, and suppress
a668b95e5f2e Only include the support for indirect flash reads if there are devices
bartv
parents: 1741
diff changeset
12 unnecessary code if direct reads are always available.
1741
9464c6747e99 Sort out the various loops to cope with boundary conditions,
bartv
parents: 1735
diff changeset
13 * src/flash.c: rearrange loops to avoid address comparisons, which
9464c6747e99 Sort out the various loops to cope with boundary conditions,
bartv
parents: 1735
diff changeset
14 tend to go wrong if the flash is at the end of the address space
9464c6747e99 Sort out the various loops to cope with boundary conditions,
bartv
parents: 1735
diff changeset
15
1735
e308039f4579 * src/legacy_dev.c (legacy_flash_init): The end is the size plus
asl
parents: 1730
diff changeset
16 2004-10-06 Andrew Lunn <andrew.lunn@ascom.ch>
e308039f4579 * src/legacy_dev.c (legacy_flash_init): The end is the size plus
asl
parents: 1730
diff changeset
17
e308039f4579 * src/legacy_dev.c (legacy_flash_init): The end is the size plus
asl
parents: 1730
diff changeset
18 * src/legacy_dev.c (legacy_flash_init): The end is the size plus
e308039f4579 * src/legacy_dev.c (legacy_flash_init): The end is the size plus
asl
parents: 1730
diff changeset
19 the start.
e308039f4579 * src/legacy_dev.c (legacy_flash_init): The end is the size plus
asl
parents: 1730
diff changeset
20
1730
3f6b1c304c7a * src/flash.c: Offset into the block is not calculated correctly
asl
parents: 1729
diff changeset
21 2004-09-30 Savin Zlobec <savin@elatec.si>
3f6b1c304c7a * src/flash.c: Offset into the block is not calculated correctly
asl
parents: 1729
diff changeset
22
3f6b1c304c7a * src/flash.c: Offset into the block is not calculated correctly
asl
parents: 1729
diff changeset
23 * src/flash.c: Offset into the block is not calculated correctly
3f6b1c304c7a * src/flash.c: Offset into the block is not calculated correctly
asl
parents: 1729
diff changeset
24 when the flash start is not aligned on a flash block.
3f6b1c304c7a * src/flash.c: Offset into the block is not calculated correctly
asl
parents: 1729
diff changeset
25 * src/legacy_dev.c (legacy_flash_read): Fixed typo.
3f6b1c304c7a * src/flash.c: Offset into the block is not calculated correctly
asl
parents: 1729
diff changeset
26
1729
e290a0372578 * src/flash.c (cyg_flash_init): Add assert checking that the
asl
parents: 1723
diff changeset
27 2004-09-14 Andrew Lunn <andrew.lunn@ascom.ch>
e290a0372578 * src/flash.c (cyg_flash_init): Add assert checking that the
asl
parents: 1723
diff changeset
28
e290a0372578 * src/flash.c (cyg_flash_init): Add assert checking that the
asl
parents: 1723
diff changeset
29 * src/flash.c (cyg_flash_init): Add assert checking that the
e290a0372578 * src/flash.c (cyg_flash_init): Add assert checking that the
asl
parents: 1723
diff changeset
30 end address matches the block information.
e290a0372578 * src/flash.c (cyg_flash_init): Add assert checking that the
asl
parents: 1723
diff changeset
31 * src/legacy_dev.c (legacy_flash_init): Ensure that the end
e290a0372578 * src/flash.c (cyg_flash_init): Add assert checking that the
asl
parents: 1723
diff changeset
32 address is the last valid address, not the first invalid address.
e290a0372578 * src/flash.c (cyg_flash_init): Add assert checking that the
asl
parents: 1723
diff changeset
33
1723
0cc13d07a67e * src/flash.c: Support flash blocks of arbitary size. The
asl
parents: 1722
diff changeset
34 2004-09-09 Andrew Lunn <andrew.lunn@ascom.ch>
0cc13d07a67e * src/flash.c: Support flash blocks of arbitary size. The
asl
parents: 1722
diff changeset
35
0cc13d07a67e * src/flash.c: Support flash blocks of arbitary size. The
asl
parents: 1722
diff changeset
36 * src/flash.c: Support flash blocks of arbitary size. The
0cc13d07a67e * src/flash.c: Support flash blocks of arbitary size. The
asl
parents: 1722
diff changeset
37 DataFlash devices for example have block of 528 bytes.
0cc13d07a67e * src/flash.c: Support flash blocks of arbitary size. The
asl
parents: 1722
diff changeset
38
1722
c4240af0fa28 * removed the functions cyg_flash_get_limits and
asl
parents: 1719
diff changeset
39 2004-08-21 Andrew Lunn <andrew.lunn@ascom.ch>
c4240af0fa28 * removed the functions cyg_flash_get_limits and
asl
parents: 1719
diff changeset
40
c4240af0fa28 * removed the functions cyg_flash_get_limits and
asl
parents: 1719
diff changeset
41 * removed the functions cyg_flash_get_limits and
c4240af0fa28 * removed the functions cyg_flash_get_limits and
asl
parents: 1719
diff changeset
42 cyg_flash_get_block_info. Reimplemented the legacy functions
c4240af0fa28 * removed the functions cyg_flash_get_limits and
asl
parents: 1719
diff changeset
43 that depended on them and flashiodev.c
c4240af0fa28 * removed the functions cyg_flash_get_limits and
asl
parents: 1719
diff changeset
44
1719
c506b95a6346 * src/flashiodev.c Ordering problem again. If an invalid name is
asl
parents: 1715
diff changeset
45 2004-08-19 Andrew Lunn <andrew.lunn@ascom.ch>
c506b95a6346 * src/flashiodev.c Ordering problem again. If an invalid name is
asl
parents: 1715
diff changeset
46
c506b95a6346 * src/flashiodev.c Ordering problem again. If an invalid name is
asl
parents: 1715
diff changeset
47 * src/flashiodev.c Ordering problem again. If an invalid name is
c506b95a6346 * src/flashiodev.c Ordering problem again. If an invalid name is
asl
parents: 1715
diff changeset
48 configured the lookup would fail and it then was impossible to do
c506b95a6346 * src/flashiodev.c Ordering problem again. If an invalid name is
asl
parents: 1715
diff changeset
49 a cyg_io_config_set. Lookup cannot fail because the name does not
c506b95a6346 * src/flashiodev.c Ordering problem again. If an invalid name is
asl
parents: 1715
diff changeset
50 exist in FIS.
c506b95a6346 * src/flashiodev.c Ordering problem again. If an invalid name is
asl
parents: 1715
diff changeset
51
1715
868c3fa9315f * src/flash.c: Make the flock lock/unlock code compile without
asl
parents: 1714
diff changeset
52 2004-08-13 Andrew Lunn <andrew.lunn@ascom.ch>
868c3fa9315f * src/flash.c: Make the flock lock/unlock code compile without
asl
parents: 1714
diff changeset
53
868c3fa9315f * src/flash.c: Make the flock lock/unlock code compile without
asl
parents: 1714
diff changeset
54 * src/flash.c: Make the flock lock/unlock code compile without
868c3fa9315f * src/flash.c: Make the flock lock/unlock code compile without
asl
parents: 1714
diff changeset
55 warnings.
868c3fa9315f * src/flash.c: Make the flock lock/unlock code compile without
asl
parents: 1714
diff changeset
56 * src/flashiodev.c (flashiodev_lookup): Only initialize the device
868c3fa9315f * src/flash.c: Make the flock lock/unlock code compile without
asl
parents: 1714
diff changeset
57 if we have not already been initialized via cyg_set_config().
868c3fa9315f * src/flash.c: Make the flock lock/unlock code compile without
asl
parents: 1714
diff changeset
58 This stopped redboots mount -f working.
868c3fa9315f * src/flash.c: Make the flock lock/unlock code compile without
asl
parents: 1714
diff changeset
59
1714
39063f315a19 * src/flashiodev.c (flashiodev_lookup): Moved most of the
asl
parents: 1711
diff changeset
60 2004-08-09 Andrew Lunn <andrew.lunn@ascom.ch>
39063f315a19 * src/flashiodev.c (flashiodev_lookup): Moved most of the
asl
parents: 1711
diff changeset
61
39063f315a19 * src/flashiodev.c (flashiodev_lookup): Moved most of the
asl
parents: 1711
diff changeset
62 * src/flashiodev.c (flashiodev_lookup): Moved most of the
39063f315a19 * src/flashiodev.c (flashiodev_lookup): Moved most of the
asl
parents: 1711
diff changeset
63 flashiodev_init into this new function. This fixed the ordering
39063f315a19 * src/flashiodev.c (flashiodev_lookup): Moved most of the
asl
parents: 1711
diff changeset
64 issue with redboot startup. When doing a FIS name lookup in
1715
868c3fa9315f * src/flash.c: Make the flock lock/unlock code compile without
asl
parents: 1714
diff changeset
65 flashiodev_init, redboot was not yet nitialised so lookup
1714
39063f315a19 * src/flashiodev.c (flashiodev_lookup): Moved most of the
asl
parents: 1711
diff changeset
66 failed. Moving this into flashiodev_lookup solves this problem.
39063f315a19 * src/flashiodev.c (flashiodev_lookup): Moved most of the
asl
parents: 1711
diff changeset
67 Its now possible for redboot to mount the jffs2 filesystem with
39063f315a19 * src/flashiodev.c (flashiodev_lookup): Moved most of the
asl
parents: 1711
diff changeset
68 -d /dev/flash1.
39063f315a19 * src/flashiodev.c (flashiodev_lookup): Moved most of the
asl
parents: 1711
diff changeset
69
1711
3bafac44ac03 * src/flashiodev.c: Fix typo in macro and configuration options
asl
parents: 1706
diff changeset
70 2004-08-06 Andrew Lunn <andrew.lunn@ascom.ch>
3bafac44ac03 * src/flashiodev.c: Fix typo in macro and configuration options
asl
parents: 1706
diff changeset
71
3bafac44ac03 * src/flashiodev.c: Fix typo in macro and configuration options
asl
parents: 1706
diff changeset
72 * src/flashiodev.c: Fix typo in macro and configuration options
3bafac44ac03 * src/flashiodev.c: Fix typo in macro and configuration options
asl
parents: 1706
diff changeset
73
1706
3845779eca10 * src/flash.c: Major rewrite to implement a new API
asl
parents: 1675
diff changeset
74 2004-08-05 Andrew Lunn <andrew.lunn@ascom.ch>
3845779eca10 * src/flash.c: Major rewrite to implement a new API
asl
parents: 1675
diff changeset
75
3845779eca10 * src/flash.c: Major rewrite to implement a new API
asl
parents: 1675
diff changeset
76 * src/flash.c: Major rewrite to implement a new API
3845779eca10 * src/flash.c: Major rewrite to implement a new API
asl
parents: 1675
diff changeset
77 * src/legacy_api.c: Support the legacy API
3845779eca10 * src/flash.c: Major rewrite to implement a new API
asl
parents: 1675
diff changeset
78 * src/legacy_drv.c: Support the legacy driver API
3845779eca10 * src/flash.c: Major rewrite to implement a new API
asl
parents: 1675
diff changeset
79 * src/flashiodev.c: Support the new API and multiple devices
3845779eca10 * src/flash.c: Major rewrite to implement a new API
asl
parents: 1675
diff changeset
80 * include/flash_priv.h: Interface devices should use
3845779eca10 * src/flash.c: Major rewrite to implement a new API
asl
parents: 1675
diff changeset
81 * cdl/io_flash.cdl: Updates for new interface and multiple devices.
3845779eca10 * src/flash.c: Major rewrite to implement a new API
asl
parents: 1675
diff changeset
82
1674
2a83c3d9c985 Added documentation of the FLASH API.
asl
parents: 1615
diff changeset
83 2004-06-20 Andrew Lunn <andrew.lunn@ascom.ch>
2a83c3d9c985 Added documentation of the FLASH API.
asl
parents: 1615
diff changeset
84
1675
e1d094896914 Don't check if the flash is write protected before performing a read.
asl
parents: 1674
diff changeset
85 * src/flash.c (flash_read): Don't check if the flash is write
e1d094896914 Don't check if the flash is write protected before performing a read.
asl
parents: 1674
diff changeset
86 protected before performing a read.
1674
2a83c3d9c985 Added documentation of the FLASH API.
asl
parents: 1615
diff changeset
87 * doc/flash.sgml
2a83c3d9c985 Added documentation of the FLASH API.
asl
parents: 1615
diff changeset
88 * cdl/io_flash.cdl: Added documentation of the FLASH API
2a83c3d9c985 Added documentation of the FLASH API.
asl
parents: 1615
diff changeset
89
1615
5118f42e7e62 * src/flashiodev.c: When checking flash upper bound, allow for end
jlarmour
parents: 1411
diff changeset
90 2004-04-29 Sebastien Couret <sebastien.couret@elios-informatique.com>
5118f42e7e62 * src/flashiodev.c: When checking flash upper bound, allow for end
jlarmour
parents: 1411
diff changeset
91 2004-04-29 Jonathan Larmour <jifl@eCosCentric.com>
5118f42e7e62 * src/flashiodev.c: When checking flash upper bound, allow for end
jlarmour
parents: 1411
diff changeset
92
5118f42e7e62 * src/flashiodev.c: When checking flash upper bound, allow for end
jlarmour
parents: 1411
diff changeset
93 * src/flashiodev.c: When checking flash upper bound, allow for end
5118f42e7e62 * src/flashiodev.c: When checking flash upper bound, allow for end
jlarmour
parents: 1411
diff changeset
94 of flash at 0xffffffff.
5118f42e7e62 * src/flashiodev.c: When checking flash upper bound, allow for end
jlarmour
parents: 1411
diff changeset
95
1411
5e52f3febc7d Specify flash block device names at runtime - from David Woodhouse
gthomas
parents: 1400
diff changeset
96 2003-11-27 David Woodhouse <dwmw2@infradead.org>
5e52f3febc7d Specify flash block device names at runtime - from David Woodhouse
gthomas
parents: 1400
diff changeset
97
5e52f3febc7d Specify flash block device names at runtime - from David Woodhouse
gthomas
parents: 1400
diff changeset
98 * src/flashiodev.c: Enable set_config() and implement
5e52f3febc7d Specify flash block device names at runtime - from David Woodhouse
gthomas
parents: 1400
diff changeset
99 CYG_IO_SET_CONFIG_FLASH_FIS_NAME.
5e52f3febc7d Specify flash block device names at runtime - from David Woodhouse
gthomas
parents: 1400
diff changeset
100
1400
707a873489c8 * src/flash.c: gcc 3.x vs gcc 2.x problems.
asl
parents: 1394
diff changeset
101 2003-11-25 Andrew Lunn <andrew.lunn@ascom.ch>
707a873489c8 * src/flash.c: gcc 3.x vs gcc 2.x problems.
asl
parents: 1394
diff changeset
102
707a873489c8 * src/flash.c: gcc 3.x vs gcc 2.x problems.
asl
parents: 1394
diff changeset
103 * src/flash.c: gcc 3.x vs gcc 2.x problems.
707a873489c8 * src/flash.c: gcc 3.x vs gcc 2.x problems.
asl
parents: 1394
diff changeset
104
1394
86d40b65e079 * cdl/io_flash.cdl:
asl
parents: 1391
diff changeset
105 2003-11-24 Jani Monoses <jani@iv.ro>
86d40b65e079 * cdl/io_flash.cdl:
asl
parents: 1391
diff changeset
106
86d40b65e079 * cdl/io_flash.cdl:
asl
parents: 1391
diff changeset
107 * cdl/io_flash.cdl:
86d40b65e079 * cdl/io_flash.cdl:
asl
parents: 1391
diff changeset
108 * include/flash.h: Remove CYGNUM_FLASH_WORKSPACE_SIZE cdl option.
86d40b65e079 * cdl/io_flash.cdl:
asl
parents: 1391
diff changeset
109
1391
c1f61c891552 * src/flashiodev.c (flashiodev_bwrite): Use flash_read rather than
asl
parents: 1389
diff changeset
110 2003-11-24 Roland Ca�ebohm <roland.cassebohm@visionsystems.de>
c1f61c891552 * src/flashiodev.c (flashiodev_bwrite): Use flash_read rather than
asl
parents: 1389
diff changeset
111
c1f61c891552 * src/flashiodev.c (flashiodev_bwrite): Use flash_read rather than
asl
parents: 1389
diff changeset
112 * src/flashiodev.c (flashiodev_bwrite): Use flash_read rather than
c1f61c891552 * src/flashiodev.c (flashiodev_bwrite): Use flash_read rather than
asl
parents: 1389
diff changeset
113 directly doing a memcpy.
c1f61c891552 * src/flashiodev.c (flashiodev_bwrite): Use flash_read rather than
asl
parents: 1389
diff changeset
114
1389
587b0b1c6927 * src/flash.c:
asl
parents: 1371
diff changeset
115 2003-11-20 Jani Monoses <jani@iv.ro>
587b0b1c6927 * src/flash.c:
asl
parents: 1371
diff changeset
116
587b0b1c6927 * src/flash.c:
asl
parents: 1371
diff changeset
117 * src/flash.c:
587b0b1c6927 * src/flash.c:
asl
parents: 1371
diff changeset
118 * src/flashiodev.c:
587b0b1c6927 * src/flash.c:
asl
parents: 1371
diff changeset
119 * include/flash.h: Remove references to work_space and work_space_size
587b0b1c6927 * src/flash.c:
asl
parents: 1371
diff changeset
120 since they are no longer used.
587b0b1c6927 * src/flash.c:
asl
parents: 1371
diff changeset
121
1371
e4d78a7a628d Remove support for non-RAM drivers (depricated)
gthomas
parents: 1290
diff changeset
122 2003-11-20 Jani Monoses <jani@iv.ro>
e4d78a7a628d Remove support for non-RAM drivers (depricated)
gthomas
parents: 1290
diff changeset
123
e4d78a7a628d Remove support for non-RAM drivers (depricated)
gthomas
parents: 1290
diff changeset
124 * cdl/io_flash.cdl:
e4d78a7a628d Remove support for non-RAM drivers (depricated)
gthomas
parents: 1290
diff changeset
125 * src/flash.c: Remove handling of CYGHWR_IO_FLASH_DEVICE_NOT_IN_RAM
e4d78a7a628d Remove support for non-RAM drivers (depricated)
gthomas
parents: 1290
diff changeset
126 now that all flash drivers use ELF sections to specify which parts
e4d78a7a628d Remove support for non-RAM drivers (depricated)
gthomas
parents: 1290
diff changeset
127 go in RAM.
e4d78a7a628d Remove support for non-RAM drivers (depricated)
gthomas
parents: 1290
diff changeset
128
1290
7fb73b26ec8a Fix compile error
gthomas
parents: 1223
diff changeset
129 2003-10-08 Roland Cassebohm <roland.cassebohm@visionsystems.de>
7fb73b26ec8a Fix compile error
gthomas
parents: 1223
diff changeset
130
7fb73b26ec8a Fix compile error
gthomas
parents: 1223
diff changeset
131 * src/flash.c: Fix parse error if CYGSEM_IO_FLASH_READ_INDIRECT
7fb73b26ec8a Fix compile error
gthomas
parents: 1223
diff changeset
132 is not defined.
7fb73b26ec8a Fix compile error
gthomas
parents: 1223
diff changeset
133
1223
dbcfe4e0dbd2 New platform - TAMS MOAB - and generic changes to support it
gthomas
parents: 944
diff changeset
134 2003-09-19 Gary Thomas <gary@mlbassoc.com>
dbcfe4e0dbd2 New platform - TAMS MOAB - and generic changes to support it
gthomas
parents: 944
diff changeset
135
dbcfe4e0dbd2 New platform - TAMS MOAB - and generic changes to support it
gthomas
parents: 944
diff changeset
136 * src/flash.c:
dbcfe4e0dbd2 New platform - TAMS MOAB - and generic changes to support it
gthomas
parents: 944
diff changeset
137 * include/flash.h:
dbcfe4e0dbd2 New platform - TAMS MOAB - and generic changes to support it
gthomas
parents: 944
diff changeset
138 * cdl/io_flash.cdl: Add support for NAND (indirectly accessed)
dbcfe4e0dbd2 New platform - TAMS MOAB - and generic changes to support it
gthomas
parents: 944
diff changeset
139 devices. This includes a generic "flash_read_buf()" function.
dbcfe4e0dbd2 New platform - TAMS MOAB - and generic changes to support it
gthomas
parents: 944
diff changeset
140
944
f493618bc252 * include/flash_dev.h: Include <cyg/infra/cyg_type.h>
jlarmour
parents: 842
diff changeset
141 2003-04-14 Jani Monoses <jani@iv.ro>
f493618bc252 * include/flash_dev.h: Include <cyg/infra/cyg_type.h>
jlarmour
parents: 842
diff changeset
142
f493618bc252 * include/flash_dev.h: Include <cyg/infra/cyg_type.h>
jlarmour
parents: 842
diff changeset
143 * include/flash_dev.h: Include <cyg/infra/cyg_type.h>
f493618bc252 * include/flash_dev.h: Include <cyg/infra/cyg_type.h>
jlarmour
parents: 842
diff changeset
144
842
3c5c8c8ffa30 Fix compile/syntax error - from Thomas Koeller
gthomas
parents: 791
diff changeset
145 2003-03-19 Thomas Koeller <thomas.koeller@baslerweb.com>
3c5c8c8ffa30 Fix compile/syntax error - from Thomas Koeller
gthomas
parents: 791
diff changeset
146
3c5c8c8ffa30 Fix compile/syntax error - from Thomas Koeller
gthomas
parents: 791
diff changeset
147 * src/flashiodev.c: Fixed trivial error.
3c5c8c8ffa30 Fix compile/syntax error - from Thomas Koeller
gthomas
parents: 791
diff changeset
148
791
a2dfa8bf3c57 Export RedBoot FIS functions - from Knud Woehler <knud.woehler@microplex.de>
gthomas
parents: 713
diff changeset
149 2003-03-03 Knud Woehler <knud.woehler@microplex.de>
a2dfa8bf3c57 Export RedBoot FIS functions - from Knud Woehler <knud.woehler@microplex.de>
gthomas
parents: 713
diff changeset
150
a2dfa8bf3c57 Export RedBoot FIS functions - from Knud Woehler <knud.woehler@microplex.de>
gthomas
parents: 713
diff changeset
151 * src/flashiodev.c:
a2dfa8bf3c57 Export RedBoot FIS functions - from Knud Woehler <knud.woehler@microplex.de>
gthomas
parents: 713
diff changeset
152 * cdl/io_flash.cdl: Add CYGNUM_IO_FLASH_BLOCK_CFG_FIS_1 /
a2dfa8bf3c57 Export RedBoot FIS functions - from Knud Woehler <knud.woehler@microplex.de>
gthomas
parents: 713
diff changeset
153 CYGNUM_IO_FLASH_BLOCK_CFG_STATIC_1. Initialize the block device
a2dfa8bf3c57 Export RedBoot FIS functions - from Knud Woehler <knud.woehler@microplex.de>
gthomas
parents: 713
diff changeset
154 from the FIS table.
a2dfa8bf3c57 Export RedBoot FIS functions - from Knud Woehler <knud.woehler@microplex.de>
gthomas
parents: 713
diff changeset
155
713
769b19e0b086 * cdl/io_flash.cdl: Remove irrelevant doc link - default to top
jlarmour
parents: 210
diff changeset
156 2003-02-24 Jonathan Larmour <jifl@eCosCentric.com>
769b19e0b086 * cdl/io_flash.cdl: Remove irrelevant doc link - default to top
jlarmour
parents: 210
diff changeset
157
769b19e0b086 * cdl/io_flash.cdl: Remove irrelevant doc link - default to top
jlarmour
parents: 210
diff changeset
158 * cdl/io_flash.cdl: Remove irrelevant doc link - default to top
769b19e0b086 * cdl/io_flash.cdl: Remove irrelevant doc link - default to top
jlarmour
parents: 210
diff changeset
159 level.
769b19e0b086 * cdl/io_flash.cdl: Remove irrelevant doc link - default to top
jlarmour
parents: 210
diff changeset
160
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
161 2002-01-31 Jonathan Larmour <jlarmour@redhat.com>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
162
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
163 * src/flashiodev.c: Fix bounds checking and offsetting.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
164
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
165 * cdl/io_flash.cdl (CYGNUM_IO_FLASH_BLOCK_LENGTH_1): Default to
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
166 0x100000 for convenience.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
167
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
168 2002-01-30 Jonathan Larmour <jlarmour@redhat.com>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
169
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
170 * cdl/io_flash.cdl: Allow specification of an offset and length
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
171 of the region of flash.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
172 * src/flashiodev.c: Use it.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
173
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
174 2002-01-24 Jesper Skov <jskov@redhat.com>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
175
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
176 * include/flash.h: Add a comment about the obvious: the flash
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
177 caching macros should be called with interrupts disabled.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
178
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
179 2002-01-23 Jonathan Larmour <jlarmour@redhat.com>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
180
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
181 * cdl/io_flash.cdl: Add CYGPKG_IO_FLASH_BLOCK_DEVICE and
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
182 CYGDAT_IO_FLASH_BLOCK_DEVICE_NAME_1 to allow exporting flash
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
183 as block devices accessible from file systems.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
184 * src/fileiodev.c: New file implementing this.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
185 * include/flash.h: Add typedefs for the various structures used
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
186 to configure the block devices.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
187
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
188 2002-01-18 Paul Fine <pfine@delcomsys.com>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
189
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
190 * src/flash.c : Modified flash_verify_addr, flash_erase,
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
191 flash_lock and flash_unlock to to work properly when the location
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
192 of the flash in the memory map is at the very top of the address
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
193 space. We check and handle values that may overflow.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
194
195
67850532eebb Merge from eCos master repository on 2001-11-02-06:43:03-GMT
jlarmour
parents: 194
diff changeset
195 2001-10-28 Gary Thomas <gthomas@redhat.com>
67850532eebb Merge from eCos master repository on 2001-11-02-06:43:03-GMT
jlarmour
parents: 194
diff changeset
196
67850532eebb Merge from eCos master repository on 2001-11-02-06:43:03-GMT
jlarmour
parents: 194
diff changeset
197 * src/flash.c (flash_erase): Don't call hardware layer if block
67850532eebb Merge from eCos master repository on 2001-11-02-06:43:03-GMT
jlarmour
parents: 194
diff changeset
198 appears to be already erased [faster and less wear & tear].
67850532eebb Merge from eCos master repository on 2001-11-02-06:43:03-GMT
jlarmour
parents: 194
diff changeset
199
194
feb0fcf83327 Merge from eCos master repository on 2001-10-26-06:43:03-BST
jlarmour
parents: 191
diff changeset
200 2001-10-25 Jonathan Larmour <jlarmour@redhat.com>
feb0fcf83327 Merge from eCos master repository on 2001-10-26-06:43:03-BST
jlarmour
parents: 191
diff changeset
201
feb0fcf83327 Merge from eCos master repository on 2001-10-26-06:43:03-BST
jlarmour
parents: 191
diff changeset
202 * include/flash_dev.h: Fix test of 4x16-bit flash parts.
feb0fcf83327 Merge from eCos master repository on 2001-10-26-06:43:03-BST
jlarmour
parents: 191
diff changeset
203 Spotted by Jose Pascual <josepascual@almudi.com>
feb0fcf83327 Merge from eCos master repository on 2001-10-26-06:43:03-BST
jlarmour
parents: 191
diff changeset
204
191
678094f34118 Merge from eCos master repository on 2001-10-19-06:43:02-BST
jlarmour
parents: 184
diff changeset
205 2001-10-16 Jesper Skov <jskov@redhat.com>
678094f34118 Merge from eCos master repository on 2001-10-19-06:43:02-BST
jlarmour
parents: 184
diff changeset
206
678094f34118 Merge from eCos master repository on 2001-10-19-06:43:02-BST
jlarmour
parents: 184
diff changeset
207 * src/flash.c: Include string.h
678094f34118 Merge from eCos master repository on 2001-10-19-06:43:02-BST
jlarmour
parents: 184
diff changeset
208
678094f34118 Merge from eCos master repository on 2001-10-19-06:43:02-BST
jlarmour
parents: 184
diff changeset
209 * cdl/io_flash.cdl: Package requires ISOINFRA and string
678094f34118 Merge from eCos master repository on 2001-10-19-06:43:02-BST
jlarmour
parents: 184
diff changeset
210 functions.
678094f34118 Merge from eCos master repository on 2001-10-19-06:43:02-BST
jlarmour
parents: 184
diff changeset
211
678094f34118 Merge from eCos master repository on 2001-10-19-06:43:02-BST
jlarmour
parents: 184
diff changeset
212 2001-10-15 David Howells <dhowells@redhat.com>
678094f34118 Merge from eCos master repository on 2001-10-19-06:43:02-BST
jlarmour
parents: 184
diff changeset
213
678094f34118 Merge from eCos master repository on 2001-10-19-06:43:02-BST
jlarmour
parents: 184
diff changeset
214 * src/flash.c: Include string.h to get mem*() functions.
678094f34118 Merge from eCos master repository on 2001-10-19-06:43:02-BST
jlarmour
parents: 184
diff changeset
215
184
022f1e506033 Merge from eCos master repository on 2001-10-02-17:59:22-BST
jlarmour
parents: 177
diff changeset
216 2001-09-25 Gary Thomas <gthomas@redhat.com>
022f1e506033 Merge from eCos master repository on 2001-10-02-17:59:22-BST
jlarmour
parents: 177
diff changeset
217
022f1e506033 Merge from eCos master repository on 2001-10-02-17:59:22-BST
jlarmour
parents: 177
diff changeset
218 * include/flash.h: Remove warning on printf() prototype.
022f1e506033 Merge from eCos master repository on 2001-10-02-17:59:22-BST
jlarmour
parents: 177
diff changeset
219
177
4c750ce71ae3 Merge from eCos master repository on 2001-08-10-19:22:57-BST
jlarmour
parents: 174
diff changeset
220 2001-08-10 Jesper Skov <jskov@redhat.com>
4c750ce71ae3 Merge from eCos master repository on 2001-08-10-19:22:57-BST
jlarmour
parents: 174
diff changeset
221
4c750ce71ae3 Merge from eCos master repository on 2001-08-10-19:22:57-BST
jlarmour
parents: 174
diff changeset
222 * cdl/io_flash.cdl: Changed flavor of
4c750ce71ae3 Merge from eCos master repository on 2001-08-10-19:22:57-BST
jlarmour
parents: 174
diff changeset
223 CYGHWR_IO_FLASH_BLOCK_LOCKING to booldata.
4c750ce71ae3 Merge from eCos master repository on 2001-08-10-19:22:57-BST
jlarmour
parents: 174
diff changeset
224 * include/flash.h: Matching changes.
4c750ce71ae3 Merge from eCos master repository on 2001-08-10-19:22:57-BST
jlarmour
parents: 174
diff changeset
225 * src/flash.c: Matching changes.
4c750ce71ae3 Merge from eCos master repository on 2001-08-10-19:22:57-BST
jlarmour
parents: 174
diff changeset
226
174
38892b97b685 Merge from eCos master repository on 2001-07-28-00:17:32-BST
jlarmour
parents: 172
diff changeset
227 2001-07-23 David Howells <dhowells@redhat.com>
38892b97b685 Merge from eCos master repository on 2001-07-28-00:17:32-BST
jlarmour
parents: 172
diff changeset
228
38892b97b685 Merge from eCos master repository on 2001-07-28-00:17:32-BST
jlarmour
parents: 172
diff changeset
229 * cdl/io_flash.cdl: Added software write protect option.
38892b97b685 Merge from eCos master repository on 2001-07-28-00:17:32-BST
jlarmour
parents: 172
diff changeset
230 * include/flash.h: Ditto.
38892b97b685 Merge from eCos master repository on 2001-07-28-00:17:32-BST
jlarmour
parents: 172
diff changeset
231 * src/flash.c: Added software write protect option and bank
38892b97b685 Merge from eCos master repository on 2001-07-28-00:17:32-BST
jlarmour
parents: 172
diff changeset
232 support, and prevented low-level writes from being handed
38892b97b685 Merge from eCos master repository on 2001-07-28-00:17:32-BST
jlarmour
parents: 172
diff changeset
233 cross-block data chunks.
38892b97b685 Merge from eCos master repository on 2001-07-28-00:17:32-BST
jlarmour
parents: 172
diff changeset
234
38892b97b685 Merge from eCos master repository on 2001-07-28-00:17:32-BST
jlarmour
parents: 172
diff changeset
235 2001-07-20 Gary Thomas <gthomas@redhat.com>
38892b97b685 Merge from eCos master repository on 2001-07-28-00:17:32-BST
jlarmour
parents: 172
diff changeset
236
38892b97b685 Merge from eCos master repository on 2001-07-28-00:17:32-BST
jlarmour
parents: 172
diff changeset
237 * include/flash.h:
38892b97b685 Merge from eCos master repository on 2001-07-28-00:17:32-BST
jlarmour
parents: 172
diff changeset
238 * cdl/io_flash.cdl: Name convention: CYGINT_FLASH_WORKSPACE_SIZE
38892b97b685 Merge from eCos master repository on 2001-07-28-00:17:32-BST
jlarmour
parents: 172
diff changeset
239 renamed to be CYGNUM_FLASH_WORKSPACE_SIZE.
38892b97b685 Merge from eCos master repository on 2001-07-28-00:17:32-BST
jlarmour
parents: 172
diff changeset
240
172
cd45958b28ff Merge from eCos master repository on 2001-07-20-10:24:43-BST
jlarmour
parents: 163
diff changeset
241 2001-07-19 Gary Thomas <gthomas@redhat.com>
cd45958b28ff Merge from eCos master repository on 2001-07-20-10:24:43-BST
jlarmour
parents: 163
diff changeset
242
cd45958b28ff Merge from eCos master repository on 2001-07-20-10:24:43-BST
jlarmour
parents: 163
diff changeset
243 * include/flash.h:
cd45958b28ff Merge from eCos master repository on 2001-07-20-10:24:43-BST
jlarmour
parents: 163
diff changeset
244 * cdl/io_flash.cdl: New option CYGINT_FLASH_WORKSPACE_SIZE used
cd45958b28ff Merge from eCos master repository on 2001-07-20-10:24:43-BST
jlarmour
parents: 163
diff changeset
245 to control how much memory is reserved for use by FLASH drivers.
cd45958b28ff Merge from eCos master repository on 2001-07-20-10:24:43-BST
jlarmour
parents: 163
diff changeset
246
163
0d2b193a635f Merge from eCos master repository on 2001-06-22-17:38:39-BST
jlarmour
parents: 162
diff changeset
247 2001-06-19 Hugo Tyson <hmt@redhat.com>
0d2b193a635f Merge from eCos master repository on 2001-06-22-17:38:39-BST
jlarmour
parents: 162
diff changeset
248
0d2b193a635f Merge from eCos master repository on 2001-06-22-17:38:39-BST
jlarmour
parents: 162
diff changeset
249 * src/flash.c (flash_program): Only verify program with memcmp if
0d2b193a635f Merge from eCos master repository on 2001-06-22-17:38:39-BST
jlarmour
parents: 162
diff changeset
250 the status code suggests the programming went OK so far.
0d2b193a635f Merge from eCos master repository on 2001-06-22-17:38:39-BST
jlarmour
parents: 162
diff changeset
251 Otherwise all errors become verify errors.
0d2b193a635f Merge from eCos master repository on 2001-06-22-17:38:39-BST
jlarmour
parents: 162
diff changeset
252
0d2b193a635f Merge from eCos master repository on 2001-06-22-17:38:39-BST
jlarmour
parents: 162
diff changeset
253 (flash_init): Fix bug in removal of dependency of printf(). The
0d2b193a635f Merge from eCos master repository on 2001-06-22-17:38:39-BST
jlarmour
parents: 162
diff changeset
254 pointer was not initialized until after the call into the driver.
0d2b193a635f Merge from eCos master repository on 2001-06-22-17:38:39-BST
jlarmour
parents: 162
diff changeset
255
162
2395031e7a66 Merge from eCos master repository on 2001-06-15-06:43:03-BST
jlarmour
parents: 160
diff changeset
256 2001-06-11 Gary Thomas <gthomas@redhat.com>
2395031e7a66 Merge from eCos master repository on 2001-06-15-06:43:03-BST
jlarmour
parents: 160
diff changeset
257
2395031e7a66 Merge from eCos master repository on 2001-06-15-06:43:03-BST
jlarmour
parents: 160
diff changeset
258 * src/flash.c:
2395031e7a66 Merge from eCos master repository on 2001-06-15-06:43:03-BST
jlarmour
parents: 160
diff changeset
259 * include/flash.h: Remove dependency on printf() via user functions.
2395031e7a66 Merge from eCos master repository on 2001-06-15-06:43:03-BST
jlarmour
parents: 160
diff changeset
260
160
0d0f03f76f6a Merge from eCos master repository on 2001-06-01-18:52:13-BST
jlarmour
parents: 157
diff changeset
261 2001-05-23 Jesper Skov <jskov@redhat.com>
0d0f03f76f6a Merge from eCos master repository on 2001-06-01-18:52:13-BST
jlarmour
parents: 157
diff changeset
262
0d0f03f76f6a Merge from eCos master repository on 2001-06-01-18:52:13-BST
jlarmour
parents: 157
diff changeset
263 * include/flash_dev.h (FLASH_P2V): Use CYG_ADDRWORD instead of int.
0d0f03f76f6a Merge from eCos master repository on 2001-06-01-18:52:13-BST
jlarmour
parents: 157
diff changeset
264
0d0f03f76f6a Merge from eCos master repository on 2001-06-01-18:52:13-BST
jlarmour
parents: 157
diff changeset
265 * src/flash.c: Copy functions to RAM iff
0d0f03f76f6a Merge from eCos master repository on 2001-06-01-18:52:13-BST
jlarmour
parents: 157
diff changeset
266 CYGHWR_IO_FLASH_DEVICE_NOT_IN_RAM defined.
0d0f03f76f6a Merge from eCos master repository on 2001-06-01-18:52:13-BST
jlarmour
parents: 157
diff changeset
267
0d0f03f76f6a Merge from eCos master repository on 2001-06-01-18:52:13-BST
jlarmour
parents: 157
diff changeset
268 * cdl/io_flash.cdl: Changed CYGHWR_IO_FLASH_DEVICE_IN_RAM to
0d0f03f76f6a Merge from eCos master repository on 2001-06-01-18:52:13-BST
jlarmour
parents: 157
diff changeset
269 CYGHWR_IO_FLASH_DEVICE_NOT_IN_RAM.
0d0f03f76f6a Merge from eCos master repository on 2001-06-01-18:52:13-BST
jlarmour
parents: 157
diff changeset
270
0d0f03f76f6a Merge from eCos master repository on 2001-06-01-18:52:13-BST
jlarmour
parents: 157
diff changeset
271 2001-05-21 Jonathan Larmour <jlarmour@redhat.com>
0d0f03f76f6a Merge from eCos master repository on 2001-06-01-18:52:13-BST
jlarmour
parents: 157
diff changeset
272
0d0f03f76f6a Merge from eCos master repository on 2001-06-01-18:52:13-BST
jlarmour
parents: 157
diff changeset
273 * include/flash_dev.h: Fix cyg_uin16 typo.
0d0f03f76f6a Merge from eCos master repository on 2001-06-01-18:52:13-BST
jlarmour
parents: 157
diff changeset
274
157
b65ec671dd4c Merge from eCos master repository on 2001-04-06-18:28:36-BST
jlarmour
parents: 156
diff changeset
275 2001-03-29 Mark Salter <msalter@redhat.com>
b65ec671dd4c Merge from eCos master repository on 2001-04-06-18:28:36-BST
jlarmour
parents: 156
diff changeset
276
b65ec671dd4c Merge from eCos master repository on 2001-04-06-18:28:36-BST
jlarmour
parents: 156
diff changeset
277 * cdl/io_flash.cdl (CYGSEM_IO_FLASH_VERIFY_PROGRAM): New option
b65ec671dd4c Merge from eCos master repository on 2001-04-06-18:28:36-BST
jlarmour
parents: 156
diff changeset
278 to control whether or not to perform extra verification of flash
b65ec671dd4c Merge from eCos master repository on 2001-04-06-18:28:36-BST
jlarmour
parents: 156
diff changeset
279 programming.
b65ec671dd4c Merge from eCos master repository on 2001-04-06-18:28:36-BST
jlarmour
parents: 156
diff changeset
280 * src/flash.c (flash_program): No verification unless
b65ec671dd4c Merge from eCos master repository on 2001-04-06-18:28:36-BST
jlarmour
parents: 156
diff changeset
281 CYGSEM_IO_FLASH_VERIFY_PROGRAM defined.
b65ec671dd4c Merge from eCos master repository on 2001-04-06-18:28:36-BST
jlarmour
parents: 156
diff changeset
282
156
b939e9cada46 Merge from eCos master repository on 2001-03-29-21:44:39-BST
jlarmour
parents: 154
diff changeset
283 2001-03-21 Gary Thomas <gthomas@redhat.com>
b939e9cada46 Merge from eCos master repository on 2001-03-29-21:44:39-BST
jlarmour
parents: 154
diff changeset
284
b939e9cada46 Merge from eCos master repository on 2001-03-29-21:44:39-BST
jlarmour
parents: 154
diff changeset
285 * src/flash.c (flash_program): Verify data after programming.
b939e9cada46 Merge from eCos master repository on 2001-03-29-21:44:39-BST
jlarmour
parents: 154
diff changeset
286
b939e9cada46 Merge from eCos master repository on 2001-03-29-21:44:39-BST
jlarmour
parents: 154
diff changeset
287 2001-03-21 Jesper Skov <jskov@redhat.com>
b939e9cada46 Merge from eCos master repository on 2001-03-29-21:44:39-BST
jlarmour
parents: 154
diff changeset
288
b939e9cada46 Merge from eCos master repository on 2001-03-29-21:44:39-BST
jlarmour
parents: 154
diff changeset
289 * include/flash.h: Added low voltage error message.
b939e9cada46 Merge from eCos master repository on 2001-03-29-21:44:39-BST
jlarmour
parents: 154
diff changeset
290 * src/flash.c: And its error message.
b939e9cada46 Merge from eCos master repository on 2001-03-29-21:44:39-BST
jlarmour
parents: 154
diff changeset
291
b939e9cada46 Merge from eCos master repository on 2001-03-29-21:44:39-BST
jlarmour
parents: 154
diff changeset
292 2001-03-17 Gary Thomas <gthomas@redhat.com>
b939e9cada46 Merge from eCos master repository on 2001-03-29-21:44:39-BST
jlarmour
parents: 154
diff changeset
293
b939e9cada46 Merge from eCos master repository on 2001-03-29-21:44:39-BST
jlarmour
parents: 154
diff changeset
294 * src/flash.c (flash_program):
b939e9cada46 Merge from eCos master repository on 2001-03-29-21:44:39-BST
jlarmour
parents: 154
diff changeset
295 * include/flash.h: Add support for [StrataFLASH] buffered writes.
b939e9cada46 Merge from eCos master repository on 2001-03-29-21:44:39-BST
jlarmour
parents: 154
diff changeset
296 This requires knowledge of the device write buffer size [saved].
b939e9cada46 Merge from eCos master repository on 2001-03-29-21:44:39-BST
jlarmour
parents: 154
diff changeset
297
b939e9cada46 Merge from eCos master repository on 2001-03-29-21:44:39-BST
jlarmour
parents: 154
diff changeset
298 2001-03-01 Gary Thomas <gthomas@redhat.com>
b939e9cada46 Merge from eCos master repository on 2001-03-29-21:44:39-BST
jlarmour
parents: 154
diff changeset
299
b939e9cada46 Merge from eCos master repository on 2001-03-29-21:44:39-BST
jlarmour
parents: 154
diff changeset
300 * src/flash.c:
b939e9cada46 Merge from eCos master repository on 2001-03-29-21:44:39-BST
jlarmour
parents: 154
diff changeset
301 * include/flash.h: Allow platform to define pre/post routines
b939e9cada46 Merge from eCos master repository on 2001-03-29-21:44:39-BST
jlarmour
parents: 154
diff changeset
302 to enable/disable device access. These may be required, e.g.
b939e9cada46 Merge from eCos master repository on 2001-03-29-21:44:39-BST
jlarmour
parents: 154
diff changeset
303 to turn on some voltage, etc.
b939e9cada46 Merge from eCos master repository on 2001-03-29-21:44:39-BST
jlarmour
parents: 154
diff changeset
304
154
e2d866e32dac Merge from eCos master repository on 2001-02-26-23:18:05-GMT
jlarmour
parents: 151
diff changeset
305 2001-02-23 Jesper Skov <jskov@redhat.com>
e2d866e32dac Merge from eCos master repository on 2001-02-26-23:18:05-GMT
jlarmour
parents: 151
diff changeset
306
e2d866e32dac Merge from eCos master repository on 2001-02-26-23:18:05-GMT
jlarmour
parents: 151
diff changeset
307 * include/flash.h: HAL_FLASH_CACHES_WANT_OPTIMAL replaced with
e2d866e32dac Merge from eCos master repository on 2001-02-26-23:18:05-GMT
jlarmour
parents: 151
diff changeset
308 (opposite sense) HAL_FLASH_CACHES_OLD_MACROS.
e2d866e32dac Merge from eCos master repository on 2001-02-26-23:18:05-GMT
jlarmour
parents: 151
diff changeset
309
e2d866e32dac Merge from eCos master repository on 2001-02-26-23:18:05-GMT
jlarmour
parents: 151
diff changeset
310 * src/flash.c (__anonymizer): Use to force the compiler to use
e2d866e32dac Merge from eCos master repository on 2001-02-26-23:18:05-GMT
jlarmour
parents: 151
diff changeset
311 jumps instead of branches.
e2d866e32dac Merge from eCos master repository on 2001-02-26-23:18:05-GMT
jlarmour
parents: 151
diff changeset
312
e2d866e32dac Merge from eCos master repository on 2001-02-26-23:18:05-GMT
jlarmour
parents: 151
diff changeset
313 2001-02-22 Jesper Skov <jskov@redhat.com>
e2d866e32dac Merge from eCos master repository on 2001-02-26-23:18:05-GMT
jlarmour
parents: 151
diff changeset
314
e2d866e32dac Merge from eCos master repository on 2001-02-26-23:18:05-GMT
jlarmour
parents: 151
diff changeset
315 * include/flash_dev.h: Added. Contains macros and definitions
e2d866e32dac Merge from eCos master repository on 2001-02-26-23:18:05-GMT
jlarmour
parents: 151
diff changeset
316 common to all (new style) flash device drivers.
e2d866e32dac Merge from eCos master repository on 2001-02-26-23:18:05-GMT
jlarmour
parents: 151
diff changeset
317
e2d866e32dac Merge from eCos master repository on 2001-02-26-23:18:05-GMT
jlarmour
parents: 151
diff changeset
318 * include/flash.h: Added two new error codes.
e2d866e32dac Merge from eCos master repository on 2001-02-26-23:18:05-GMT
jlarmour
parents: 151
diff changeset
319 * cdl/io_flash.cdl: Added CYGHWR_IO_FLASH_DEVICE_IN_RAM.
e2d866e32dac Merge from eCos master repository on 2001-02-26-23:18:05-GMT
jlarmour
parents: 151
diff changeset
320 * src/flash.c: Made functions respect
e2d866e32dac Merge from eCos master repository on 2001-02-26-23:18:05-GMT
jlarmour
parents: 151
diff changeset
321 CYGHWR_IO_FLASH_DEVICE_IN_RAM and jump directly to the code
e2d866e32dac Merge from eCos master repository on 2001-02-26-23:18:05-GMT
jlarmour
parents: 151
diff changeset
322 instead of copying it around.
e2d866e32dac Merge from eCos master repository on 2001-02-26-23:18:05-GMT
jlarmour
parents: 151
diff changeset
323 (__arm_broken): Work around problem with ARM tools.
e2d866e32dac Merge from eCos master repository on 2001-02-26-23:18:05-GMT
jlarmour
parents: 151
diff changeset
324
151
25e238959bae Merge from eCos master repository on 2001-02-12-23:44:24-GMT
jlarmour
parents: 143
diff changeset
325 2001-02-06 Hugo Tyson <hmt@redhat.com>
25e238959bae Merge from eCos master repository on 2001-02-12-23:44:24-GMT
jlarmour
parents: 143
diff changeset
326
25e238959bae Merge from eCos master repository on 2001-02-12-23:44:24-GMT
jlarmour
parents: 143
diff changeset
327 * src/flash.c (flash_erase): Add an additional argument to the
25e238959bae Merge from eCos master repository on 2001-02-12-23:44:24-GMT
jlarmour
parents: 143
diff changeset
328 call into the driver, being the blocksize (as discovered). This
25e238959bae Merge from eCos master repository on 2001-02-12-23:44:24-GMT
jlarmour
parents: 143
diff changeset
329 allows a gross check for actual erase in some drivers. Those that
25e238959bae Merge from eCos master repository on 2001-02-12-23:44:24-GMT
jlarmour
parents: 143
diff changeset
330 don't use it, it's harmless - after all, this is an API by trust.
25e238959bae Merge from eCos master repository on 2001-02-12-23:44:24-GMT
jlarmour
parents: 143
diff changeset
331
143
6b5f480c6929 Merge from eCos master repository on 2000-12-08-02:09:36-GMT
jlarmour
parents: 141
diff changeset
332 2000-12-06 Jesper Skov <jskov@redhat.com>
6b5f480c6929 Merge from eCos master repository on 2000-12-08-02:09:36-GMT
jlarmour
parents: 141
diff changeset
333
6b5f480c6929 Merge from eCos master repository on 2000-12-08-02:09:36-GMT
jlarmour
parents: 141
diff changeset
334 * src/flash.c (flash_dev_query): Added. Allows reloc/cache magic
6b5f480c6929 Merge from eCos master repository on 2000-12-08-02:09:36-GMT
jlarmour
parents: 141
diff changeset
335 to be removed from device drivers (eventually). Also fixed some
6b5f480c6929 Merge from eCos master repository on 2000-12-08-02:09:36-GMT
jlarmour
parents: 141
diff changeset
336 warnings, and made function references use char[] instead of just
6b5f480c6929 Merge from eCos master repository on 2000-12-08-02:09:36-GMT
jlarmour
parents: 141
diff changeset
337 char to prevent MIPS compiler from messing up.
6b5f480c6929 Merge from eCos master repository on 2000-12-08-02:09:36-GMT
jlarmour
parents: 141
diff changeset
338
6b5f480c6929 Merge from eCos master repository on 2000-12-08-02:09:36-GMT
jlarmour
parents: 141
diff changeset
339 * include/flash.h: Added FLASH_ERR_DRV_VERIFY and flash_dev_query.
6b5f480c6929 Merge from eCos master repository on 2000-12-08-02:09:36-GMT
jlarmour
parents: 141
diff changeset
340
141
450e4e1f1e80 Merge from eCos master repository on 2000-11-27-23:09:27-GMT
jlarmour
parents: 136
diff changeset
341 2000-11-27 Jesper Skov <jskov@redhat.com>
450e4e1f1e80 Merge from eCos master repository on 2000-11-27-23:09:27-GMT
jlarmour
parents: 136
diff changeset
342
450e4e1f1e80 Merge from eCos master repository on 2000-11-27-23:09:27-GMT
jlarmour
parents: 136
diff changeset
343 * src/flash.c: Do all flash access inside properly
450e4e1f1e80 Merge from eCos master repository on 2000-11-27-23:09:27-GMT
jlarmour
parents: 136
diff changeset
344 cache-controlled region.
450e4e1f1e80 Merge from eCos master repository on 2000-11-27-23:09:27-GMT
jlarmour
parents: 136
diff changeset
345 * include/flash.h: Cache definitions.
450e4e1f1e80 Merge from eCos master repository on 2000-11-27-23:09:27-GMT
jlarmour
parents: 136
diff changeset
346
136
a9ac27ec7abc Merge from eCos master repository on 2000-11-17-18:24:25-GMT
jlarmour
parents: 121
diff changeset
347 2000-11-17 Jesper Skov <jskov@redhat.com>
a9ac27ec7abc Merge from eCos master repository on 2000-11-17-18:24:25-GMT
jlarmour
parents: 121
diff changeset
348
a9ac27ec7abc Merge from eCos master repository on 2000-11-17-18:24:25-GMT
jlarmour
parents: 121
diff changeset
349 * src/flash.c: Added debug mode, allowing device driver to use printf.
a9ac27ec7abc Merge from eCos master repository on 2000-11-17-18:24:25-GMT
jlarmour
parents: 121
diff changeset
350
a9ac27ec7abc Merge from eCos master repository on 2000-11-17-18:24:25-GMT
jlarmour
parents: 121
diff changeset
351 2000-11-16 Jesper Skov <jskov@redhat.com>
a9ac27ec7abc Merge from eCos master repository on 2000-11-17-18:24:25-GMT
jlarmour
parents: 121
diff changeset
352
a9ac27ec7abc Merge from eCos master repository on 2000-11-17-18:24:25-GMT
jlarmour
parents: 121
diff changeset
353 * src/flash.c: Added suspend error messages.
a9ac27ec7abc Merge from eCos master repository on 2000-11-17-18:24:25-GMT
jlarmour
parents: 121
diff changeset
354 * include/flash.h: Same.
a9ac27ec7abc Merge from eCos master repository on 2000-11-17-18:24:25-GMT
jlarmour
parents: 121
diff changeset
355
121
6bd9d475ed4b Merge from eCos master repository on 2000-09-04-20:50:20-BST
jlarmour
parents: 119
diff changeset
356 2000-09-01 Hugo Tyson <hmt@cygnus.co.uk>
6bd9d475ed4b Merge from eCos master repository on 2000-09-04-20:50:20-BST
jlarmour
parents: 119
diff changeset
357
6bd9d475ed4b Merge from eCos master repository on 2000-09-04-20:50:20-BST
jlarmour
parents: 119
diff changeset
358 * include/flash.h:
6bd9d475ed4b Merge from eCos master repository on 2000-09-04-20:50:20-BST
jlarmour
parents: 119
diff changeset
359 * src/flash.c: CYGHWR_IO_FLASH_BLOCK_LOCKING is an interface, so
6bd9d475ed4b Merge from eCos master repository on 2000-09-04-20:50:20-BST
jlarmour
parents: 119
diff changeset
360 it's always defined; look for > 0 instead.
6bd9d475ed4b Merge from eCos master repository on 2000-09-04-20:50:20-BST
jlarmour
parents: 119
diff changeset
361
119
77cec8369160 Merge from eCos master repository on 2000-09-01-07:47:03-BST
jlarmour
parents: 117
diff changeset
362 2000-08-28 Gary Thomas <gthomas@redhat.com>
77cec8369160 Merge from eCos master repository on 2000-09-01-07:47:03-BST
jlarmour
parents: 117
diff changeset
363
77cec8369160 Merge from eCos master repository on 2000-09-01-07:47:03-BST
jlarmour
parents: 117
diff changeset
364 * src/flash.c:
77cec8369160 Merge from eCos master repository on 2000-09-01-07:47:03-BST
jlarmour
parents: 117
diff changeset
365 * include/flash.h:
77cec8369160 Merge from eCos master repository on 2000-09-01-07:47:03-BST
jlarmour
parents: 117
diff changeset
366 * cdl/io_flash.cdl: Support block locking (optional by hardware).
77cec8369160 Merge from eCos master repository on 2000-09-01-07:47:03-BST
jlarmour
parents: 117
diff changeset
367
117
bd1a71e3e476 Merge from eCos master repository on 2000-08-25-19:22:58-BST
jlarmour
parents: 115
diff changeset
368 2000-08-22 Hugo Tyson <hmt@cygnus.co.uk>
bd1a71e3e476 Merge from eCos master repository on 2000-08-25-19:22:58-BST
jlarmour
parents: 115
diff changeset
369
bd1a71e3e476 Merge from eCos master repository on 2000-08-25-19:22:58-BST
jlarmour
parents: 115
diff changeset
370 * src/flash.c (flash_program): Add HAL_ICACHE_DISABLE/ENABLE pairs
bd1a71e3e476 Merge from eCos master repository on 2000-08-25-19:22:58-BST
jlarmour
parents: 115
diff changeset
371 around calls to RAM copy of programming/erasing function - this is
bd1a71e3e476 Merge from eCos master repository on 2000-08-25-19:22:58-BST
jlarmour
parents: 115
diff changeset
372 necessary to get reliable operation on EBSA285 and similar.
bd1a71e3e476 Merge from eCos master repository on 2000-08-25-19:22:58-BST
jlarmour
parents: 115
diff changeset
373 Otherwise, what is in the instruction cache might be run instead.
bd1a71e3e476 Merge from eCos master repository on 2000-08-25-19:22:58-BST
jlarmour
parents: 115
diff changeset
374
115
6ed91473a1cd Merge from eCos master repository on 2000-08-21-22:40:54-BST
jlarmour
parents:
diff changeset
375 2000-08-14 Gary Thomas <gthomas@redhat.com>
6ed91473a1cd Merge from eCos master repository on 2000-08-21-22:40:54-BST
jlarmour
parents:
diff changeset
376
6ed91473a1cd Merge from eCos master repository on 2000-08-21-22:40:54-BST
jlarmour
parents:
diff changeset
377 * include/flash.h: Add block size mask for finding block boundaries.
6ed91473a1cd Merge from eCos master repository on 2000-08-21-22:40:54-BST
jlarmour
parents:
diff changeset
378
6ed91473a1cd Merge from eCos master repository on 2000-08-21-22:40:54-BST
jlarmour
parents:
diff changeset
379 * src/flash.c: Use block size properly.
6ed91473a1cd Merge from eCos master repository on 2000-08-21-22:40:54-BST
jlarmour
parents:
diff changeset
380
6ed91473a1cd Merge from eCos master repository on 2000-08-21-22:40:54-BST
jlarmour
parents:
diff changeset
381 2000-07-29 Gary Thomas <gthomas@redhat.com>
6ed91473a1cd Merge from eCos master repository on 2000-08-21-22:40:54-BST
jlarmour
parents:
diff changeset
382
6ed91473a1cd Merge from eCos master repository on 2000-08-21-22:40:54-BST
jlarmour
parents:
diff changeset
383 * include/flash.h:
6ed91473a1cd Merge from eCos master repository on 2000-08-21-22:40:54-BST
jlarmour
parents:
diff changeset
384 * src/flash.c (flash_get_block_info): New function.
6ed91473a1cd Merge from eCos master repository on 2000-08-21-22:40:54-BST
jlarmour
parents:
diff changeset
385 (flash_program): Program in block_size chunks as much as possible.
6ed91473a1cd Merge from eCos master repository on 2000-08-21-22:40:54-BST
jlarmour
parents:
diff changeset
386
6ed91473a1cd Merge from eCos master repository on 2000-08-21-22:40:54-BST
jlarmour
parents:
diff changeset
387 //===========================================================================
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
388 //####ECOSGPLCOPYRIGHTBEGIN####
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
389 // -------------------------------------------
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
390 // This file is part of eCos, the Embedded Configurable Operating System.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
391 // Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
392 //
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
393 // eCos is free software; you can redistribute it and/or modify it under
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
394 // the terms of the GNU General Public License as published by the Free
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
395 // Software Foundation; either version 2 or (at your option) any later version.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
396 //
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
397 // eCos is distributed in the hope that it will be useful, but WITHOUT ANY
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
398 // WARRANTY; without even the implied warranty of MERCHANTABILITY or
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
399 // FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
400 // for more details.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
401 //
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
402 // You should have received a copy of the GNU General Public License along
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
403 // with eCos; if not, write to the Free Software Foundation, Inc.,
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
404 // 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
405 //
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
406 // As a special exception, if other files instantiate templates or use macros
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
407 // or inline functions from this file, or you compile this file and link it
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
408 // with other works to produce a work based on this file, this file does not
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
409 // by itself cause the resulting work to be covered by the GNU General Public
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
410 // License. However the source code for this file must still be made available
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
411 // in accordance with section (3) of the GNU General Public License.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
412 //
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
413 // This exception does not invalidate any other reasons why a work based on
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
414 // this file might be covered by the GNU General Public License.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
415 //
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
416 // Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
417 // at http://sources.redhat.com/ecos/ecos-license/
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
418 // -------------------------------------------
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents: 195
diff changeset
419 //####ECOSGPLCOPYRIGHTEND####
115
6ed91473a1cd Merge from eCos master repository on 2000-08-21-22:40:54-BST
jlarmour
parents:
diff changeset
420 //===========================================================================