Electronics > Repair
Agilent 34461A corrupted flash
<< < (14/41) > >>
analogRF:

--- Quote from: ElectronMan on July 30, 2023, 06:31:46 pm ---
--- Quote from: analogRF on July 30, 2023, 06:01:05 pm ---
--- Quote from: ElectronMan on July 30, 2023, 05:36:20 pm ---
The PBOOT loader is trying to read the config from sector 0x180 in flash. It appears to be using flash page-sized sectors of 2048 bytes, so that puts it at the beginning of the 7th flash block at byte 0xC0000. In my flash, that contains this config, with a CRC32 in the first 4 bytes. It looks similar to the UBOOT config, but is null-separated (I've attached a copy). If you can read that flash location and see what is there, it may illuminate things.

With any luck, that block just needs rewritten.

--- End quote ---

yes it seems a duplicate of the environment variables that I see in uboot and everything looks normal exactly like what I see in the uboot variables
the image addresses and MAC are correct.
note that I had changed my ipaddr variable to 10.0.0.242 (my tftp server) the default value is 000.000.000.000
but it is not related to the problem

is it possible that this is the place that uboot environment variables are stored? which we can see by printenv command. Because it is exactly those information

--- End quote ---

It is likely, if they are sharing the config. If you change a variable in uboot, does it change at that flash location?

On a related note, have you tried changing the uboot config since the problem started? The reason I ask, is because page ECC data is re-written with the data. So if for some reason PBOOT is seeing bad ECC on that page, re-writing it by a config change may fix it.

--- End quote ---

the only thing that I had done was just changed "serverip" variable to my tftp server address because at that point I though I could recover it through tftp which was stupid because there is no lan available but other than that no. I have not played with uboot variables anymore
analogRF:

--- Quote from: ElectronMan on July 30, 2023, 05:36:20 pm ---


The PBOOT loader is trying to read the config from sector 0x180 in flash. It appears to be using flash page-sized sectors of 2048 bytes, so that puts it at the beginning of the 7th flash block at byte 0xC0000. In my flash, that contains this config, with a CRC32 in the first 4 bytes. It looks similar to the UBOOT config, but is null-separated (I've attached a copy). If you can read that flash location and see what is there, it may illuminate things.

With any luck, that block just needs rewritten.

--- End quote ---

I cannot reproduce your CRC32 checksum so that I can check mine.
but the end of that dump looks out of place to me
ElectronMan:

--- Quote from: analogRF on July 30, 2023, 06:36:17 pm ---
--- Quote from: ElectronMan on July 30, 2023, 05:36:20 pm ---


The PBOOT loader is trying to read the config from sector 0x180 in flash. It appears to be using flash page-sized sectors of 2048 bytes, so that puts it at the beginning of the 7th flash block at byte 0xC0000. In my flash, that contains this config, with a CRC32 in the first 4 bytes. It looks similar to the UBOOT config, but is null-separated (I've attached a copy). If you can read that flash location and see what is there, it may illuminate things.

With any luck, that block just needs rewritten.

--- End quote ---

I cannot reproduce your CRC32 checksum so that I can check mine.
but the end of that dump looks out of place to me

--- End quote ---

Your checksum is good assuming you had 00's out to the end of that sector. I had to pad it out with zeros to the end of that page (like it should be in your flash). If the rest of that sector is not filled with 00's in your copy, then something is wrong.
analogRF:
I changed that serverip back to its original value and actually when you run "saveenv" in uboot it in fact erases one page of nand at that 0xC0000 address and writes the variables back into that place. Messages on screen are clearly saying this.
So 0xC0000 is in fact where the uboot variables are stored.

Now I am not sure pboot is getting its parameters from there

ElectronMan:

--- Quote from: analogRF on July 30, 2023, 06:46:36 pm ---I changed that serverip back to its original value and actually when you run "saveenv" in uboot it in fact erases one page of nand at that 0xC0000 address and writes the variables back into that place. Messages on screen are clearly saying this.
So 0xC0000 is in fact where the uboot variables are stored.

Now I am not sure pboot is getting its parameters from there

--- End quote ---

So since they are sharing the config, there must be some other reason PBOOT doesn't like that block the data is stored in, that does not bother UBOOT.

Looking at the PBOOT code, I am trying to find where it checks the ECC/Error status flag and not finding it so far. I am starting to wonder if they are storing their own data in the spare area of that page that might be corrupted.
Navigation
Message Index
Next page
Previous page
There was an error while thanking
Thanking...

Go to full version
Powered by SMFPacks Advanced Attachments Uploader Mod