Mercurial > ecos-v3_0-branch
annotate packages/devs/flash/synthv2/current/include/synth.h @ 2729:74dbf4c3f2e1 after-copyright-change-20090129
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
| author | jlarmour |
|---|---|
| date | Thu, 29 Jan 2009 17:47:46 +0000 |
| parents | 50cf5ea58609 |
| children |
| rev | line source |
|---|---|
|
2629
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
1 #ifndef DEV_FLASH_SYNTHV2_SYNTH_H |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
2 #define DEV_FLASH_SYNTHV2_SYNTH_H |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
3 //========================================================================== |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
4 // |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
5 // synth.h |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
6 // |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
7 // Synthetic Flash driver header |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
8 // |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
9 //========================================================================== |
|
2729
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
10 // ####ECOSGPLCOPYRIGHTBEGIN#### |
|
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
11 // ------------------------------------------- |
|
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
12 // This file is part of eCos, the Embedded Configurable Operating System. |
|
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
13 // Copyright (C) 2004 Free Software Foundation, Inc. |
|
2629
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
14 // |
|
2729
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
15 // eCos is free software; you can redistribute it and/or modify it under |
|
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
16 // the terms of the GNU General Public License as published by the Free |
|
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
17 // Software Foundation; either version 2 or (at your option) any later |
|
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
18 // version. |
|
2629
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
19 // |
|
2729
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
20 // eCos is distributed in the hope that it will be useful, but WITHOUT |
|
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
21 // ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
|
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
22 // FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
|
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
23 // for more details. |
|
2629
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
24 // |
|
2729
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
25 // You should have received a copy of the GNU General Public License |
|
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
26 // along with eCos; if not, write to the Free Software Foundation, Inc., |
|
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
27 // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. |
|
2629
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
28 // |
|
2729
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
29 // As a special exception, if other files instantiate templates or use |
|
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
30 // macros or inline functions from this file, or you compile this file |
|
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
31 // and link it with other works to produce a work based on this file, |
|
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
32 // this file does not by itself cause the resulting work to be covered by |
|
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
33 // the GNU General Public License. However the source code for this file |
|
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
34 // must still be made available in accordance with section (3) of the GNU |
|
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
35 // General Public License v2. |
|
2629
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
36 // |
|
2729
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
37 // This exception does not invalidate any other reasons why a work based |
|
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
38 // on this file might be covered by the GNU General Public License. |
|
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
39 // ------------------------------------------- |
|
74dbf4c3f2e1
Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents:
2629
diff
changeset
|
40 // ####ECOSGPLCOPYRIGHTEND#### |
|
2629
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
41 //========================================================================== |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
42 //#####DESCRIPTIONBEGIN#### |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
43 // |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
44 // Author(s): Andrew Lunn |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
45 // Contributors: Andrew Lunn |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
46 // Date: 2004-07-03 |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
47 // Purpose: Header file for the synthetic flash device |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
48 // Description: |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
49 // |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
50 //####DESCRIPTIONEND#### |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
51 // |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
52 //========================================================================== |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
53 |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
54 #include <cyg/io/flash.h> |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
55 #include <cyg/io/flash_dev.h> |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
56 |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
57 // Structure of data private to each flash device |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
58 struct cyg_flash_synth_priv |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
59 { |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
60 // Configuration parameters, |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
61 size_t block_size; |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
62 cyg_uint32 blocks; |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
63 size_t boot_block_size; |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
64 cyg_uint32 boot_blocks; |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
65 cyg_bool boot_block_bottom; |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
66 char * filename; |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
67 // Run-time data |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
68 int flashfd; |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
69 // Space for the block layout |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
70 struct cyg_flash_block_info block_info[2]; |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
71 }; |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
72 |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
73 extern const struct cyg_flash_dev_funs cyg_flash_synth_funs; |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
74 |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
75 #endif |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
76 |
|
50cf5ea58609
Merge flashv2 branch to trunk, with eCosCentric additions
jlarmour
parents:
diff
changeset
|
77 |
