X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fcpu%2Fcortex-m3%2Fdrv%2Fmt29f_sam3.h;h=969496a97805991ef6d15fec9fefdd13893ff353;hb=a003d4c2a077f7c60ab84a6894bcb9c423ec09a7;hp=c3fa31d5b6f9b4c3eb05b4c5caae57bcccc8b84e;hpb=f725c29420c27b7e094f09480013dd1ce2d87ec4;p=bertos.git diff --git a/bertos/cpu/cortex-m3/drv/mt29f_sam3.h b/bertos/cpu/cortex-m3/drv/mt29f_sam3.h index c3fa31d5..969496a9 100644 --- a/bertos/cpu/cortex-m3/drv/mt29f_sam3.h +++ b/bertos/cpu/cortex-m3/drv/mt29f_sam3.h @@ -42,12 +42,23 @@ // MT29F2G08AAD, FIXME: configurable -#define MT29F_DATA_SIZE 0x800 // 2048 B -#define MT29F_SPARE_SIZE 0x40 // 64 B -#define MT29F_PAGE_SIZE (MT29F_DATA_SIZE + MT29F_SPARE_SIZE) -#define MT29F_BLOCK_SIZE 0x20000 // 128 kB -#define MT29F_SIZE 0x10000000 // 256 MB -#define MT29F_ECC_NWORDS (MT29F_DATA_SIZE / 256) +#define MT29F_DATA_SIZE 0x800 // 2048 B +#define MT29F_SPARE_SIZE 0x40 // 64 B +#define MT29F_PAGE_SIZE (MT29F_DATA_SIZE + MT29F_SPARE_SIZE) +#define MT29F_PAGES_PER_BLOCK 64 +#define MT29F_BLOCK_SIZE (MT29F_DATA_SIZE * MT29F_PAGES_PER_BLOCK) +#define MT29F_NUM_BLOCKS 2048 +#define MT29F_ECC_NWORDS (MT29F_DATA_SIZE / 256) +#define MT29F_REMAP_TAG_OFFSET 0x38 +#define MT29F_REMAP_TAG 0x3e10c8ed +// Used to setup a dummy remup +#define MT29F_NULL_REMAP 0xfffe + +// Number of reserved block for remapping +#define MT29F_NUM_REMAP_BLOCKS 128 +// Number of usable blocks, and index of first remapping block +#define MT29F_NUM_USER_BLOCKS (MT29F_NUM_BLOCKS - MT29F_NUM_REMAP_BLOCKS) + /* * PIO definitions.