nandflash.h File Reference

EFM32GG_STK3700 nandflash driver. More...

Go to the source code of this file.

Data Structures

struct  NANDFLASH_Info_TypeDef
 NANDFLASH device information structure. More...

Defines

#define NAND256W3A_SPARESIZE   16
 Spare area size of Numonyx NAND256W3A.
#define NAND_SPARE_BADBLOCK_POS   5
 Spare area position of bad-block marker.
#define NAND_SPARE_ECC0_POS   6
 Spare area position of ECC byte 0 (LSB).
#define NAND_SPARE_ECC1_POS   7
 Spare area position of ECC byte 1.
#define NAND_SPARE_ECC2_POS   8
 Spare area position of ECC byte 2 (MSB).

Enumerations

enum  NANDFLASH_Status_TypeDef {
  NANDFLASH_STATUS_OK = 0,
  NANDFLASH_INVALID_DEVICE = -1,
  NANDFLASH_INVALID_ADDRESS = -2,
  NANDFLASH_WRITE_ERROR = -3,
  NANDFLASH_ECC_ERROR = -4,
  NANDFLASH_ECC_UNCORRECTABLE = -5,
  NANDFLASH_INVALID_SETUP = -6,
  NANDFLASH_NOT_INITIALIZED = -7
}
 

NANDFLASH status enumerator.

More...

Functions

bool NANDFLASH_AddressValid (uint32_t addr)
 Check if an address is valid for the nand flash device.
int NANDFLASH_CopyPage (uint32_t dstAddr, uint32_t srcAddr)
 Copy a page within the device to a new location.
NANDFLASH_Info_TypeDefNANDFLASH_DeviceInfo (void)
 Return a pointer to a NANDFLASH_Info_TypeDef structure, which contain vital nand flash device information.
int NANDFLASH_EccCorrect (uint32_t generatedEcc, uint32_t readEcc, uint8_t *data)
 Check generated ECC against ECC read from device and correct data if possible.
int NANDFLASH_EraseBlock (uint32_t address)
 Erase a block in the nand flash.
int NANDFLASH_Init (int dmaCh)
 Initialize the NANDFLASH module.
int NANDFLASH_MarkBadBlock (uint32_t address)
 Mark a block as bad.
int NANDFLASH_ReadPage (uint32_t address, uint8_t *buffer)
 Read a page from nand device.
int NANDFLASH_ReadSpare (uint32_t address, uint8_t *buffer)
 Read the spare area content of a page.
int NANDFLASH_WritePage (uint32_t address, uint8_t *buffer)
 Write a page in nand device.

Detailed Description

EFM32GG_STK3700 nandflash driver.

Author:
Energy Micro AS
Version:
3.20.0

License

(C) Copyright 2012 Energy Micro AS, http://www.energymicro.com

Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:

1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. 4. The source and compiled code may only be used on Energy Micro "EFM32" microcontrollers and "EFR4" radios.

DISCLAIMER OF WARRANTY/LIMITATION OF REMEDIES: Energy Micro AS has no obligation to support this Software. Energy Micro AS is providing the Software "AS IS", with no express or implied warranties of any kind, including, but not limited to, any implied warranties of merchantability or fitness for any particular purpose or warranties against infringement of any proprietary rights of a third party.

Energy Micro AS will not be liable for any consequential, incidental, or special damages, or any other relief, or for any claim by any third party, arising from your use of this Software.

Definition in file nandflash.h.