-
Notifications
You must be signed in to change notification settings - Fork 224
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Able to program flash only with -v
flag
#330
Comments
Are you using latest |
I am using the bundled version inside OSS CAD suite. As I downloaded it a month ago or so, I don't think is the latest version. I can try to compile fresh from source and see what happens. |
Cannot reproduce. With and without -v flag it works for me.
I am thinking maybe we could record the issue with rr (https://github.com/rr-debugger/rr), but then again if the issue is timing related, rr could mess with that. |
Yeah, I know it's not an issue super easy to reproduce. Also because it has something to do with the chip itself, as on all the other boards (all commercial, different flash chips than what I am using) |
I think the problem is as follows: When there is a verification failure, we do this:
mpsse_error ultimately exits: So the following code does not execute:
This would explain why the chip select bus is never released after a failed verification. Could you try my fork to see if the chip select issue persists? https://github.com/RCoeurjoly/icestorm |
I tried it out, but I still experience the same behaviour. After the verification failure, the |
Could you try again? I made a mistake that should be fixed now. |
Yes, now it's working. The |
Thanks for confirming. The solution for the cs bus is already in main after #331 got merged. Regarding the flashing issue, could you include the failure message of the verification check? |
I am experiencing this weird behavior where if I try to program the flash normally using something like
iceprog hardware.bin
, it fails. However, if I add the verbose flag to actually see why it fails, it programs the flash without a problem. Specifically, it fails the verification check, so it programs the flash, and then when it reads back the content, it fails.If I have to guess, it is something related to timing, as the
printf()
calls slow down the programming process. I tried to use the slow SPI flag, but I experience the same behavior. Also, the chip select bus is never released after this unsuccessful command, so other devices connected to the SPI bus cannot drive it low. I have to run a command that successfully completes (iceprog -t
is enough) to release CS.The flash chip that I have is the
MT25QL128ABA1ESE-0SIT
.The text was updated successfully, but these errors were encountered: