bbogush/nand_programmer

Operation address exceeded chip size

Closed this issue · 2 comments

hpo14 commented

backup.bin: Backup with nando, 268435456 Bytes (256MB)
Chip1 and Chip2: MX30LF2G18AC, (256MB)

Below logs:

  1. Write backup.bin to chip1 --> success
  2. Write backup.bin to chip2 --> Error: "Programmer sent error: (100) Operation address exceeded chip size"

The error happened sometimes but should less than 10% from my observation.

log of Chip 1:

Info: ID 0xc2 0xda 0x90 0x95 0x06
Info: Writing data ...
Info: Data has been successfully written

log of Chip 2:

Info: ID 0xc2 0xda 0x90 0x95 0x06
Info: Writing data ...
Info: "Skipped bad block at 0x0fb20000 size 0x00020000"
Info: "Skipped bad block at 0x0fca0000 size 0x00020000"
Error: "Programmer sent error: (100) Operation address exceeded chip size"

The error is shown because bad blocks are skipped and available flash size is less then file size. Probably flash backup does not contain useful data at the end so the file can be trimmed by few blocks.

hpo14 commented

The error is shown because bad blocks are skipped and available flash size is less then file size. Probably flash backup does not contain useful data at the end so the file can be trimmed by few blocks.

Thank you for the quick reply.
I took another 3 chips (all chip are same model) to flash the same binary file to verify.
And just like you said, its due to bad blocks and binary content.

chip 3:

Info: ID 0xc2 0xda 0x90 0x95 0x06
Info: Reading bad blocks ...
Info: "Bad block at 0x00ec0000 size 0x00020000"
Info: "Bad block at 0x05940000 size 0x00020000"
Info: "Bad block at 0x09ba0000 size 0x00020000"
Info: "Bad block at 0x09be0000 size 0x00020000"
Info: "Bad block at 0x0bda0000 size 0x00020000"
Info: Bad blocks have been successfully read
Info: Writing data ...
Info: "Skipped bad block at 0x00ec0000 size 0x00020000"
Info: "Skipped bad block at 0x05940000 size 0x00020000"
Info: "Skipped bad block at 0x09ba0000 size 0x00020000"
Info: "Skipped bad block at 0x09be0000 size 0x00020000"
Info: "Skipped bad block at 0x0bda0000 size 0x00020000"
Error: "Programmer sent error: (100) Operation address exceeded chip size"

chip 4:

Info: ID 0xc2 0xda 0x90 0x95 0x06
Info: Reading bad blocks ...
Info: "Bad block at 0x0e940000 size 0x00020000"
Info: "Bad block at 0x0eac0000 size 0x00020000"
Info: Bad blocks have been successfully read
Info: Writing data ...
Info: "Skipped bad block at 0x0e940000 size 0x00020000"
Info: "Skipped bad block at 0x0eac0000 size 0x00020000"
Error: "Programmer sent error: (100) Operation address exceeded chip size"

chip 5:

Info: Detecting chip ...
Info: ID 0xc2 0xda 0x90 0x95 0x06
Info: Reading bad blocks ...
Info: "Bad block at 0x01480000 size 0x00020000"
Info: "Bad block at 0x04c60000 size 0x00020000"
Info: Bad blocks have been successfully read
Info: Writing data ...
Info: "Skipped bad block at 0x01480000 size 0x00020000"
Info: "Skipped bad block at 0x04c60000 size 0x00020000"
Error: "Programmer sent error: (100) Operation address exceeded chip size"