
Okay,
I really didn't mean to rip out someone's code, I know it was there for a reason. In any case, I like to understand which Intel flash is behaving badly. The spec does not say unprotect unlocks all blocks.
If no one has any objection, I will remove the part of the code that relock each sector, for submission.
First, That behavior is required because some Intel flash parts incorrectly unlock all sectors (not just current sector) so after unlocking the current sector we must redo the locking of all others that were supposed to remain locked. Again, the comment in that code reflects and explains this.
I am sorry, my interpretation of your comment led me to think you are suggesting all Intel flashes behave this way. Really my original post came from a confusion of the comment. A better comment may include what you just said above.
Do you know which parts behave this way? Has Intel confirmed this?
Certainly not all flashes need to have this workaround, perhaps it is sensible to option it out? Anyway, I have no problem with this code being there. Since I have not seen the same behaviour you saw, and google did not turn up and evidence to support this, I was just curious if this has been solved since the code was first submitted.
David