Skip to main content
Chandan Bhatia1
Associate III
July 15, 2020
Question

Region `FLASH' overflowed for external flash

  • July 15, 2020
  • 5 replies
  • 6980 views

Hello, region `FLASH' overflowed by 424008 bytes but i didn't added much image. I am using 128 Mb N25Q128A13EF840E QSPI flash. I just wanted to confirm how much QSPI is assigned.

I can see below settings for QSPI.

0693W000001stCiQAI.jpg

I want to know that Where should I check in my firmware to know assigned external flash size. I can't find in linker file?

Also I want to see which all data is saved in QSPI 128Mbit .

Any help

This topic has been closed for replies.

5 replies

Uwe Bonnes
Chief
July 15, 2020

Probably either your linker file is wrong and does not expose QSPI or you do not explicit place your table in QSPI.

Chandan Bhatia1
Associate III
July 15, 2020

Yes but it all generated by CUBEMX. There is some section called `ExtFlashSection' but I am unable to see it in linker file.

Martin KJELDSEN
Principal III
July 15, 2020

Show us the linker script - CubeMX does not know anything about QSPI flash chips, only general configuration for the controller on the mcu.

Chandan Bhatia1
Associate III
July 16, 2020

@Martin KJELDSEN​  Did you get the chance to check ?

Chandan Bhatia1
Associate III
July 16, 2020

I dig a bit more and check using gcc objdump command. Here u can see external flash size is 0xCEB08 which I think In bytes. So this does not cross 128Mbit.

Note : In this case I removed most of images and as per compiler its almost filled.

0693W000001szWAQAY.jpg

Chandan Bhatia1
Associate III
July 15, 2020

Attaching my linker script.

Chandan Bhatia1
Associate III
July 15, 2020
Chandan Bhatia1
Associate III
July 16, 2020

I dig a bit more and check using gcc objdump command. Here u can see external flash size is 0xCEB08 which I think In bytes. So this does not cross 128Mbit.

Note : In this case I removed most of images and as per compiler its almost filled.

0693W000001szU9QAI.jpg

HP_it
Senior II
July 20, 2020

Wait, how do you configure your QSPI?

Are you using the settings you posted in the first picture?

There are two things you need to do:

  1. set the linker script so the ExtFlashSection is actually located in the QSPI region
  2. setup the QSPI so it matches your memory.

In the first picture you have a flash size of '1' - this means that you are using 1 bit for address space effectively limiting your memorysize to 2 bytes..

This is the settings I use for the 746-Disc0 board:

 0693W000001tBrUQAU.png

Chandan Bhatia1
Associate III
July 20, 2020

Yes, I tried with these QSPI setting but still not working. I got this video "https://www.youtube.com/watch?v=237lPdMsDZs ". Here first data is moved to QSPI from internal flash. First he changes linker script (which we already did), next he look for external loader option in debug(at 08:23 ). But I am using different IDE System workbench for STM32 so I can't get that option. Have you also done steps shown in video ?