NetBurner 3.5.6
PDF Version
S29GL032.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 Spansion S29GL032A 4MByte flash chip. This file is
29
* part of an example that allocates 1MB 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 "file/fsf.h"
50
#include "basictypes.h"
51
#include "hal.h"
52
53
#define FLASH_NAME "S29GL032A"
54
55
extern
int
fs_phy_OnChipFlash(FS_FLASH *flash);
56
57
/* Start of flash memory base address */
58
#define FS_FLASHBASE (0xFF800000)
59
115
#define BLOCKSIZE (64 * 1024)
// Use only the 64k sectors
116
#define SECTORSIZE (16 * 1024)
// 4 sectors per block
117
#define SECTORPERBLOCK (BLOCKSIZE / SECTORSIZE)
118
119
/*
120
* Specify the total amount of flash memory in the system, and the amount
121
* allocated to be used by the file system (the rest is used by the
122
* application).
123
*/
124
#define FLASH_SIZE (4 * 1024 * 1024)
// Size of total flash in the system, 4MB
125
#define FS_SIZE (1024 * 1024)
// Amount allocated to file system, 1MB
126
#define FIRST_ADDR (FLASH_SIZE - FS_SIZE)
// First file system address to use in the flash
127
#define BLOCKSTART (2)
// First block where file system data starts (first 2 blocks are DESCRIPTORS)
128
129
/*
130
* Descriptor Blocks:
131
* These blocks contain critical information about the file system, block
132
* allocation, wear information, and file/directory information. At least two
133
* descriptor blocks must be included in the system, which can be erased
134
* independently. An optional descriptor write cache may be configured which
135
* improves the performance of the file system. Please refer to the EFFS-STD
136
* implementation guide for additional information.
137
*/
138
#define DESCSIZE (8 * 1024)
// Size of one descriptor
139
#define DESCBLOCKSTART (0)
// Position of first descriptor
140
#define DESCBLOCKEND (1)
// Position of last descriptor
141
#define DESCCACHE (2048)
142
143
#endif
/* _ONCHIPFLASH_H_ */