On 23.01.2008 05:25, ron minnich wrote:
OK, with 3073, something went worse.
r3073 and r3072 did not have any changes affecting you.
Last night, I was flashing just fine. As of today, it's not id'ing it and it is reading 0xff back for that pass.
Maybe the port it reads from gives 0xff for every read? Cause could be - a LPC misconfiguration (port not passed through anymore) - flaky wire.
I am attaching a failed (first) and successfull on the 4mbit part (second half) of the file.
The log you posted does not seem to be the log you refer to. What I read from the log is: First run in verbose mode with SST25VF016B. Second run (not verbose) with a duplicated line "serial flash pin 29", SST25VF040B. Cut-and-paste error? Can you post the logs again as separate files with verbose execution?
Besides that, I am confused how many chips you already have tried. There were some Macronix and some SST chips, right?
I'm trying to get to the point of trying to figure out if this 2M part will ever work on this board. I am beginning to have my doubts.
My only remaining differences are this:
Yes, this is the patch I sent earlier.
Index: spi.c
--- spi.c (revision 3073) +++ spi.c (working copy) @@ -155,6 +155,12 @@ 0xFFF80000, 0xFFFEFFFF, (tmp & 1 << 3) ? "en" : "dis"); printf("LPC write to serial flash %sabled\n", (tmp & 1 << 4) ? "en" : "dis");
if (!(tmp & 1 << 4)) {
printf("Force enabling LPC write to serial flash\n");
tmp |= 1 << 4;
regwrite(port, 0x24, tmp);
}
printf("serial flash pin %i\n", (tmp & 1 << 5) ? 87 : 29); printf("serial flash pin %i\n", (tmp & 1 << 5) ? 87 : 29); /* LDN 0x7, reg 0x64/0x65 */ regwrite(port, 0x07, 0x7);
@@ -375,7 +381,8 @@ switch (flash->manufacture_id) { case ST_ID: case MX_ID:
if ((flash->model_id & 0xff00) == 0x2000)
if (((flash->model_id & 0xff00) == 0x2000) ||
((flash->model_id & 0xff00) == 0x2500)) spi_prettyprint_status_register_st_m25p(status); break; case SST_ID:
Regards, Carl-Daniel