Other Parts Discussed in Thread: AM3703
Hi all:
we are facing a nand issue in our custom AM3703 board,
given below:
I am working with Micron MT29F16G08CBACA . with Am3703 controller.
i am facing an issue ,if first page of the block included for
programming and reading I am getting read error:
NAND read from offset0 failed -74 .
if i exclude the first page, the read and write succeeds for all the
remaining pages of all blocks (excluding bad blocks).
please let me know if you have any idea why read is failing when
including the first page of the block?
The below gives the configuration details for your reference.
GPMC configuration is as below.
#define MICRON_NAND_GPMC_CONFIG1 0x00000800
#define MICRON_NAND_GPMC_CONFIG2 0x00141400
#define MICRON_NAND_GPMC_CONFIG3 0x00141400
#define MICRON_NAND_GPMC_CONFIG4 0x0F010F01
#define MICRON_NAND_GPMC_CONFIG5 0x010C1414
#define MICRON_NAND_GPMC_CONFIG6 0x1F0F0A80
#define MICRON_NAND_GPMC_CONFIG7 0x00000844
and we are using CS7 for micron nand.
#define PAGE_SIZE_MLC 4096
#define BLOCK_SIZE_MLC (PAGE_SIZE_MLC * 256)
#define ERASE_SIZE BLOCK_SIZE_MLC
//Micron Nand Details
{"NAND 2GiB 3,3V 8-bit", 0x48, 4096 , 2048, 0x100000 , LP_OPTIONS}
Erase function : nand_erase_opts(nand, &opts);
Write function : nand_write_skip_bad(nand, off_page, &size, (u_char
*)addr);
Read function : nand_read_skip_bad(nand, off_page, &size, (u_char
*)addr);
I am able to erase all the blocks and it will return success and also i
cross-verified by reading the bytes and it shows 0xff.
if i starts writing the data from first page of the block even though
write succeeds but the read returns
NAND read from offset 0 failed -74.
I skipped write and read operation for the first page and tested the
remaining pages of all the blocks it is working fine ,also i
cross-verified the data by comparing the read bytes.
Regards,
santosh vastrad