-
Notifications
You must be signed in to change notification settings - Fork 145
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
QSPI data is incorrect when using the APP_TYPE = BOOT_SRAM #587
Comments
Note: as an experiment I changed the QSPI MEMRY segment in the _SRAM.LDS file to this:
This fixes the issue. I was wondering if there was an alignment issue happening due to the 0x90040000. I'm not sure if that was really this issue, but once I changed the to the 0x90100000 the QSPI flash seems to be returning correct data for me now across restarts. Also, please note: the 6M in the above may not be accurate, I placed something there to give the starting memory location change a try and I wanted to share this update. Hope this helps. |
I had two thoughts this morning, I will try one of the two later tonight my time. 😊
I was thinking about both of these because when I looked into the memory before and after the Flash, then restart, then read the memory was consistently "corrupted" in the same way. Example from above: array items 7-10 were always zero. This type of pattern was common no matter the type of data I was using. I wanted to share that idea in case it helped. |
Hi Brett, |
The main issue you're probably facing is that your original code was using the same address space in QSPI for the program itself and anything you later wrote to it. The Daisy bootloader uses the region beginning at I wouldn't mess with the packed attribute or the alignment in the linker. If you're storing arrays, the data is already "packed." If you're storing a lot of your own structs, just place data types of similar size together if you're really worried about the density. Using the packed attribute or changing the alignment might result in read or write issues if the QSPI peripheral doesn't support unaligned operations. I haven't specifically checked the manual on whether it's an error, but it's generally not a robust approach. |
QSPI data is being corrupted when using APP_TYPE = BOOT_SRAM.
Repro:
Expect: the QSPI data remains the same over restarts.
Notes:
The text was updated successfully, but these errors were encountered: