NetBurner 3.5.6
PDF Version
AT49BV163D.h
1
/* Revision: 3.3.8 */
2
3
/******************************************************************************
4
* Copyright 1998-2022 NetBurner, Inc. ALL RIGHTS RESERVED
5
*
6
* Permission is hereby granted to purchasers of NetBurner Hardware to use or
7
* modify this computer program for any use as long as the resultant program
8
* is only executed on NetBurner provided hardware.
9
*
10
* No other rights to use this program or its derivatives in part or in
11
* whole are granted.
12
*
13
* It may be possible to license this or other NetBurner software for use on
14
* non-NetBurner Hardware. Contact
[email protected]
for more information.
15
*
16
* NetBurner makes no representation or warranties with respect to the
17
* performance of this computer program, and specifically disclaims any
18
* responsibility for any damages, special or consequential, connected with
19
* the use of this program.
20
*
21
* NetBurner
22
* 16855 W Bernardo Dr
23
* San Diego, CA 92127
24
* www.netburner.com
25
******************************************************************************/
26
27
/*------------------------------------------------------------------------------
28
* EFFS-STD configuration file for Atmel AT49BV163D flash chip. This file is
29
* part of an example that allocates 512kB of flash space to the file system,
30
* and the rest to the application.
31
*
32
* To modify the amount of space allocated to the file system:
33
*
34
* 1. Change the definition in this file: #define FS_SIZE ( 1024 * 1024 )
35
* 2. Change the compcode memory address range for the application in your
36
* NBEclipse project settings so that the end of the application space does
37
* not exceed the start of the file system space. See the EFFS Programmer's
38
* Guide for details, and the header comments in main.cpp of this example
39
* on how to make the changes in the NBEclipse project.
40
* 3. Be sure to add the /nburn/platform/<platform>/original/lib/libStdFFile.a library
41
* to your NBEclipse project C/C++ build linker library options. See the header
42
* comments in main.cpp for this example on how to add the library in the
43
* NBEclipse project.
44
*----------------------------------------------------------------------------*/
45
46
#ifndef _ONCHIPFLASH_H_
47
#define _ONCHIPFLASH_H_
48
49
#include "basictypes.h"
50
#include "hal.h"
51
#include "file/fsf.h"
52
56
extern
int
fs_phy_OnChipFlash(FS_FLASH *flash);
57
58
#define FLASH_NAME "AT49BV163"
59
63
#define FS_FLASHBASE (0xFFC00000)
64
123
#define BLOCKSIZE (64 * 1024)
// Use only the 64k sectors
124
#define SECTORSIZE (16 * 1024)
// 4 sectors per block
125
#define SECTORPERBLOCK (BLOCKSIZE / SECTORSIZE)
126
127
/*
128
* Specify the total amount of flash memory in the system, and the amount
129
* allocated to be used by the file system (the rest is used by the
130
* application).
131
*/
132
#define FLASH_SIZE \
133
(2 * 1024 * 1024)
// Size of total flash in the
134
// system, 2MB
135
#define FS_SIZE \
136
(512 * 1024)
// Amount allocated to file
137
// system, 512kB
138
#define FIRST_ADDR \
139
(FLASH_SIZE - FS_SIZE)
// First file system address to
140
// use in the flash
141
#define BLOCKSTART \
142
(2)
// First block where file system
143
// data starts (first 2
144
// blocks are DESCRIPTORS)
145
146
/*
147
* Descriptor Blocks:
148
* These blocks contain critical information about the file system, block
149
* allocation, wear information, and file/directory information. At least two
150
* descriptor blocks must be included in the system, which can be erased
151
* independently. An optional descriptor write cache may be configured which
152
* improves the performance of the file system. Please refer to the EFFS-STD
153
* implementation guide for additional information.
154
*/
155
#define DESCSIZE (8 * 1024)
// Size of one descriptor
156
#define DESCBLOCKSTART (0)
// Position of first descriptor
157
#define DESCBLOCKEND (1)
// Position of last descriptor
158
#define DESCCACHE (2048)
159
160
#endif
/* _ONCHIPFLASH_H_ */