Dear all, I am trying to get the flash on my dsp56l307evm board working. However I do not fully understand how to fill in the non_cfi data. The variable names are not so descriptive.
My flash chip is an AT29LV010A that is a 128kbyte chip of atmel. It has 1024 sectors of 128bits. See http://www.mouser.com/ds/2/36/atmel_AT29LV010A-341298.pdf for a datasheet. I have now added the following to the non_cfi.c file: { .mfr = CFI_MFR_ATMEL, /* Atmel AT29LV010A */ .id = 0x02, // <-- This should be 0x35 but I am currently reading 0x02 .pri_id = 0x02, // <-- I can choose 0x00 or 0x02 .dev_size = 128*KB, // <-- size of my chip 128kByte .interface_desc = 0x0, /* x8 only device */ .max_buf_write_size = 128, //< -- is this needed? .status_poll_mask = CFI_STATUS_POLL_MASK_DQ6_DQ7, .num_erase_regions = 1, .erase_region_info = { ERASE_REGION(1024, 128) // I wonder if this works!!! } }, This more or less works however I do like to know if this works. Are my supplied values correct / do I have the right understanding how I should ? I have especially a problem with the ERASE_REGION macro. I think my cell size is too small because it expands to ERASE_REGION(num, size) (((size/256) << 16) | (num-1)), which results in 0 for 128/256 and gives then 0x3FF back. What should I do here? I do have more issues that my second read of the device ID is actually not returning the device ID but the data in the flash. Maybe I don't read quick enough or I am toggling some lines which I shouldn't do. Has someone an advice on this issue as well? Many thanks in advance!!! Kind regards, Han
_______________________________________________ OpenOCD-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/openocd-devel
