| Electronics > Repair |
| Agilent 34461A corrupted flash |
| << < (19/41) > >> |
| analogRF:
can you point me to what errors/problems you see in that last bin file with .oob data? |
| ElectronMan:
--- Quote from: analogRF on July 30, 2023, 09:03:37 pm ---can you point me to what errors/problems you see in that last bin file with .oob data? --- End quote --- Without knowing the exact structure they are using, I can't say what is wrong with it exactly, except that the structure appears to be different. There could be a lot of reasons for this. See my spare on the first page for the config below. --- Code: ---FF FF FF FF FF FF FF FF 95 A5 6A 69 59 FF FF FF 6A F3 3F CC FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF --- End code --- Yours has more actual data in it, and is only filling the one side. Since these are structured in a very specific way, it is unusual to see such a large difference. |
| ElectronMan:
--- Quote from: analogRF on July 30, 2023, 09:01:42 pm ---it does not look out of ordinary to me by the way, if i want to dump the nand and write it back into the nand in uboot I cannot write into those out of band areas. "nand dump" dumps one page at a time with those oob but nand write has no way of writing in those oob area unless they are calculated automatically and updated by the nand controller in that case I can just read the data by nand read and write it back instead of sumping one page at a time I am only concerned about nand write command because still I am not sure what is the third parameter is it a page size or is it # of bytes or some other block size? that scares me :scared: :scared: --- End quote --- DO NOT try to write the OOB data. Just rewrite the block normally. The functions that write the block SHOULD calculate the data that needs to go into the OOB and write it for you! |
| ElectronMan:
--- Quote from: ElectronMan on July 30, 2023, 09:09:00 pm --- --- Quote from: analogRF on July 30, 2023, 09:01:42 pm ---it does not look out of ordinary to me by the way, if i want to dump the nand and write it back into the nand in uboot I cannot write into those out of band areas. "nand dump" dumps one page at a time with those oob but nand write has no way of writing in those oob area unless they are calculated automatically and updated by the nand controller in that case I can just read the data by nand read and write it back instead of sumping one page at a time I am only concerned about nand write command because still I am not sure what is the third parameter is it a page size or is it # of bytes or some other block size? that scares me :scared: :scared: --- End quote --- DO NOT try to write the OOB data. Just rewrite the block normally. The functions that write the block SHOULD calculate the data that needs to go into the OOB and write it for you! --- End quote --- From what I can see in the uboot help, the commands should be similar to the read command. Have you tried the "nand bad" command to see if any bad blocks are known? You could also try writing this to the NEXT block assuming it is completely blank already. If you noticed during bootup, it does try the next block all the way to the end of flash. |
| analogRF:
--- Quote from: ElectronMan on July 30, 2023, 09:09:00 pm --- DO NOT try to write the OOB data. Just rewrite the block normally. The functions that write the block SHOULD calculate the data that needs to go into the OOB and write it for you! --- End quote --- yeah but still I am not quite sure how the nand write command behaves. Is it taking # of bytes for the size parameter or number of 2kB pages or some other block size For example, in the uboot variables I see some commands like this: --- Code: ---nand erase 0x00620000 ${blocksize};nand write 0x4000000 0x00620000 ${blocksize} --- End code --- but i cannot find where the blocksize was defined. Help on nand commands in uboot gives me this: --- Code: ---p510> help nand nand - NAND sub-system Usage: nand info - show available NAND devices nand device [dev] - show or set current device nand read - addr off|partition size nand write - addr off|partition size read/write 'size' bytes starting at offset 'off' to/from memory address 'addr', skipping bad blocks. nand erase [clean] [off size] - erase 'size' bytes from offset 'off' (entire device if not specified) nand bad - show bad blocks nand dump[.oob] off - dump page nand scrub - really clean NAND erasing bad blocks (UNSAFE) nand markbad off [...] - mark bad block(s) at offset (UNSAFE) nand biterr off - make a bit error at offset (UNSAFE) --- End code --- which seems to suggest the third parameter is just # of bytes but those in the uboot variables confuse me |
| Navigation |
| Message Index |
| Next page |
| Previous page |