X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs2.git;a=blobdiff_plain;f=mtdemul%2Fnandemul2k.c;h=6f10746e3e433f0752c7f5e39b240f517924e841;hp=ecc96c8e7900ae6aa0fc180debf7694eb956d74e;hb=300a106a291d9d32a71a6dee90b659f46f1cc804;hpb=412a849e17d81802a45dbed775a6461c8c3a72c7 diff --git a/mtdemul/nandemul2k.c b/mtdemul/nandemul2k.c index ecc96c8..6f10746 100644 --- a/mtdemul/nandemul2k.c +++ b/mtdemul/nandemul2k.c @@ -44,13 +44,14 @@ -#define EM_SIZE_IN_MEG 4 -#define PAGE_DATA_SIZE (2048) -#define PAGE_SPARE_SIZE (64) -#define PAGES_PER_BLOCK (64) #define NAND_SHIFT (11) // Shifter for 2k +#define PAGE_DATA_SIZE (1 << NAND_SHIFT) +#define PAGE_SPARE_SIZE (64) +#define BLK_SHIFT 6 +#define PAGES_PER_BLOCK (1 << BLK_SHIFT) // = 64 +#define EM_SIZE_IN_MEG 4 #define EM_SIZE_IN_BYTES (EM_SIZE_IN_MEG * (1<<20)) #define PAGE_TOTAL_SIZE (PAGE_DATA_SIZE+PAGE_SPARE_SIZE) @@ -253,7 +254,7 @@ int nandemul2k_GetNumberOfBlocks(void) {return nandemul2k_CalcNBlocks();} -int nandemul2k_ReadId(__u8 *vendorId, __u8 *deviceId) +static int nandemul2k_ReadId(__u8 *vendorId, __u8 *deviceId) { *vendorId = 'Y'; *deviceId = '2'; @@ -262,7 +263,7 @@ int nandemul2k_ReadId(__u8 *vendorId, __u8 *deviceId) } -int nandemul2k_ReadStatus(__u8 *status) +static int nandemul2k_ReadStatus(__u8 *status) { *status = 0; return 1; @@ -557,8 +558,8 @@ static int nand_erase (struct mtd_info *mtd, struct erase_info *instr) return -EINVAL; } - nBlocks = instr->len >> (NAND_SHIFT + 5); - block = instr->addr >> (NAND_SHIFT + 5); + nBlocks = instr->len >> (NAND_SHIFT + BLK_SHIFT); + block = instr->addr >> (NAND_SHIFT + BLK_SHIFT); for(i = 0; i < nBlocks; i++) { @@ -597,7 +598,7 @@ static void nand_sync (struct mtd_info *mtd) /* * Scan for the NAND device */ -int nand_scan (struct mtd_info *mtd,int nchips) +static int nandemul2k_scan (struct mtd_info *mtd,int nchips) { mtd->oobblock = PAGE_DATA_SIZE; mtd->oobsize = PAGE_SPARE_SIZE; @@ -630,6 +631,8 @@ int nand_scan (struct mtd_info *mtd,int nchips) mtd->suspend = NULL; mtd->resume = NULL; + mtd->name = "NANDemul2k"; + /* Return happy */ return 0; } @@ -648,9 +651,9 @@ __setup("sizeInMB=",sizeInMB); static struct mtd_partition nandemul2k_partition[] = { - { name: "NANDemul partition 1", - offset: 0, - size: 0 }, + { .name = "NANDemul partition 1", + .offset = 0, + .size = 0 }, }; static int nPartitions = sizeof(nandemul2k_partition)/sizeof(nandemul2k_partition[0]); @@ -665,7 +668,7 @@ int __init nandemul2k_init (void) CheckInit(); - nand_scan(&nandemul2k_mtd,1); + nandemul2k_scan(&nandemul2k_mtd,1); // Build the partition table