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
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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