2024-12-18 02:12 PM - edited 2024-12-18 02:13 PM
Hello,
I am attempting to make an external loader for a QuadSPI flash S25FL256SAGMFI000 using the STM32F769 and STM32CubeIDE.
I followed this tutorial: https://www.youtube.com/playlist?list=PLnMKNibPkDnHIrq5BICcFhLsmJFI_ytvE
I was able to run the code to the end of the while loop like described in the video and successfully wrote/read to memory at address 0x90000000.
I am able to generate an stldr file, but when I try to load it in the CubeProgrammer the file displays the error "ERROR PARSING FAIL". The programmer also does not display the right start address, the memory size, page size, or type, which leads me to believe there is a problem with the Dev_Inf.c file.
Has anyone seen this error before and can steer me in the right direction of where to look to correct it? I have attached the Dev_Inf.c, Loader_Src.c, and quadspi.c files. Please let me know what other files I can attach for review.
Thank you!
2024-12-20 09:45 AM
Not for loading the External Loader, but I'm not sure how this will support 4-bit methods.
It could work with 2-bit mode in the memory, so effectively half the bandwidth on the read side.
The connectivity doesn't look familar to me. You've got a single memory IC mounted, right?
2024-12-20 09:50 AM
We have two IC's mounted, identical part numbers.
2024-12-20 09:58 AM - edited 2024-12-20 11:17 AM
@Nawres GHARBI @Aziz BRIGUI can you look at this. Parse error in the (EL) tab
There's a lot of stuff in the STLDR, most of a BSP including SDRAM support, main(), etc. Lot of sections, but a walk through the ELF gets to the salient StorageInfo structure that doesn't look offensive.. Some overlap of the two PT_LOAD blocks.
========================================================================
** Program header #0 (PT_LOAD) [PF_X + PF_W + PF_R]
Size : 28788 bytes (27252 bytes in file)
Virtual address: 0x20000004 (Alignment 4096)
====================================
** Program header #1 (PT_LOAD) [PF_R]
Size : 200 bytes
Virtual address: 0x20006990 (Alignment 4096)
========================================================================
...
** Section #10 '.Dev_info' (SHT_PROGBITS) [SHF_ALLOC]
Size : 200 bytes (alignment 4)
Address: 0x20006990
0x20006990: 53 32 35 46 4c 32 35 36 53 41 47 4d 46 49 30 30 S25FL256SAGMFI00
0x200069a0: 30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0...............
0x200069b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0x200069c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0x200069d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0x200069e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0x200069f0: 00 00 00 00 03 00 00 00 00 00 00 90 00 00 00 02 ................
0x20006a00: 00 01 00 00 ff 00 00 00 00 02 00 00 00 00 01 00 ................
0x20006a10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0x20006a20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0x20006a30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0x20006a40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0x20006a50: 00 00 00 00 00 00 00 00 ........
...
418 StorageInfo 0x20006990 Gb 10 Data De 0xc8