NetBurner 3.5.6
PDF Version
AM29LV160B.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 AM29LV160B 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 * Note: The AM29LV160B is identical to the Spansion S29AL016D.
33 *
34 * To modify the amount of space allocated to the file system:
35 *
36 * 1. Change the definition in this file: #define FS_SIZE ( 1024 * 1024 )
37 * 2. Change the compcode memory address range for the application in your
38 * NBEclipse project settings so that the end of the application space does
39 * not exceed the start of the file system space. See the EFFS Programmer's
40 * Guide for details, and the header comments in main.cpp of this example
41 * on how to make the changes in the NBEclipse project.
42 * 3. Be sure to add the /nburn/platform/<platform>/original/lib/libStdFFile.a library
43 * to your NBEclipse project C/C++ build linker library options. See the header
44 * comments in main.cpp for this example on how to add the library in the
45 * NBEclipse project.
46 *----------------------------------------------------------------------------*/
47
48#ifndef _ONCHIPFLASH_H_
49#define _ONCHIPFLASH_H_
50
51#include "file/fsf.h"
52#include "basictypes.h"
53#include "hal.h"
54
58extern int fs_phy_OnChipFlash(FS_FLASH *flash);
59
60#define FLASH_NAME "S29AL016/AMDLV160"
61
65#define FS_FLASHBASE (0xFFC00000)
66
125#define BLOCKSIZE (64 * 1024) // Use only the 64k sectors
126#define SECTORSIZE (16 * 1024) // 4 sectors per block
127#define SECTORPERBLOCK (BLOCKSIZE / SECTORSIZE)
128
129/*
130 * Specify the total amount of flash memory in the system, and the amount
131 * allocated to be used by the file system (the rest is used by the
132 * application).
133 */
134#define FLASH_SIZE \
135 (2 * 1024 * 1024) // Size of total flash in the
136 // system, 2MB
137#define FS_SIZE \
138 (512 * 1024) // Amount allocated to file
139 // system, 512kB
140//#define FS_SIZE ( 1024 * 1024 ) // Amount allocated to file
141// system, 1MB
142#define FIRST_ADDR \
143 (FLASH_SIZE - FS_SIZE) // First file system address to
144 // use in the flash
145#define BLOCKSTART \
146 (2) // First block where file system
147 // data starts (first 2
148 // blocks are DESCRIPTORS)
149
150/*
151 * Descriptor Blocks:
152 * These blocks contain critical information about the file system, block
153 * allocation, wear information, and file/directory information. At least two
154 * descriptor blocks must be included in the system, which can be erased
155 * independently. An optional descriptor write cache may be configured which
156 * improves the performance of the file system. Please refer to the EFFS-STD
157 * implementation guide for additional information.
158 */
159#define DESCSIZE (8 * 1024) // Size of one descriptor
160#define DESCBLOCKSTART (0) // Position of first descriptor
161#define DESCBLOCKEND (1) // Position of last descriptor
162#define DESCCACHE (2048)
163
164#endif /* _ONCHIPFLASH_H_ */
Embedded Flash File System, EFFS-STD.
NetBurner Hardware Abstraction Layer (HAL)