Warning: The core is locked up U575

Post here first, or if you can't find a relevant section!
Post Reply
User avatar
Mangy_Dog
Posts: 133
Joined: Sat May 02, 2020 11:45 pm
Answers: 1

Warning: The core is locked up U575

Post by Mangy_Dog »

We recently moved out project over to the U575 based chip.
But I'm running into a big issue that I cant seem to figure out.
Firstly as far as I can tell I got the power pins correctly wired up
575wireup.JPG
575wireup.JPG (73.67 KiB) Viewed 1083 times
But even after configuring cubeides clock setup and putting that into the variant clock file.
Im still getting the warning core is locked up.

And not even a basic blink program will run.

I have tried multiple clock and divider options including using the internal oscillators.

But I just cant get anything to run on the chip.

Have I missed something in hardware? Is my boot option wrong?

Any ideas whats causing the warning to show up?
Just a dogs body developer, mostly making props and stuff...
User avatar
Mangy_Dog
Posts: 133
Joined: Sat May 02, 2020 11:45 pm
Answers: 1

Re: Warning: The core is locked up U575

Post by Mangy_Dog »

clock.jpg
clock.jpg (89.16 KiB) Viewed 1082 times
Even trying a basic internal clock setup at low speeds and still getting the warning and no led blinky....

Im starting to think its not the clock setup itself but something else wrong in the variant build up.
Just a dogs body developer, mostly making props and stuff...
User avatar
Mangy_Dog
Posts: 133
Joined: Sat May 02, 2020 11:45 pm
Answers: 1

Re: Warning: The core is locked up U575

Post by Mangy_Dog »

Hi all update on the situation ....
its nothing to do with the clock config, and more to do with the variant I've built.
Ether something is missing from the basic core files that is required or I made a mistake or missed something...
Im going to go through it again to see what I could have missed.

But I got a blink program working from cubeide in HAL. So I can rule out hardware issues and clock settings.
Just a dogs body developer, mostly making props and stuff...
User avatar
Mangy_Dog
Posts: 133
Joined: Sat May 02, 2020 11:45 pm
Answers: 1

Re: Warning: The core is locked up U575

Post by Mangy_Dog »

FIXED IT!!!
Ok managed to get building and working on my IDE, the main issue is step 5 of the make a varient...

Code: Select all

/* Memories definition */
 MEMORY
 {
-  RAM    (xrw)    : ORIGIN = 0x20000000,   LENGTH = 144K
-  FLASH    (rx)    : ORIGIN = 0x8000000,   LENGTH = 512K
+  RAM    (xrw)    : ORIGIN = 0x20000000,   LENGTH = LD_MAX_DATA_SIZE
+  FLASH    (rx)    : ORIGIN = 0x8000000 + LD_FLASH_OFFSET, LENGTH = LD_MAX_SIZE - LD_FLASH_OFFSET
 }
basically for the u575 dont do this... Keep the fixed values in the linker script.

Code: Select all

/* Memories definition */
MEMORY
{
  RAM	(xrw)	: ORIGIN = 0x20000000,	LENGTH = 768K
  SRAM4	(xrw)	: ORIGIN = 0x28000000,	LENGTH = 16K
  FLASH	(rx)	: ORIGIN = 0x08000000,	LENGTH = 1024K
}
Just a dogs body developer, mostly making props and stuff...
User avatar
Mangy_Dog
Posts: 133
Joined: Sat May 02, 2020 11:45 pm
Answers: 1

Re: Warning: The core is locked up U575

Post by Mangy_Dog »

Just to add, there was also a mistake in my OG variant that was causing the lock up... but reworking the whole thing after fixing that, it was step 5 that was the final thing breaking stuff :D
Just a dogs body developer, mostly making props and stuff...
fpiSTM
Posts: 1951
Joined: Wed Dec 11, 2019 7:11 pm
Answers: 109
Location: Le Mans
Contact:

Re: Warning: The core is locked up U575

Post by fpiSTM »

Mangy_Dog wrote: Thu Jun 05, 2025 9:45 am FIXED IT!!!
Ok managed to get building and working on my IDE, the main issue is step 5 of the make a varient...

Code: Select all

/* Memories definition */
 MEMORY
 {
-  RAM    (xrw)    : ORIGIN = 0x20000000,   LENGTH = 144K
-  FLASH    (rx)    : ORIGIN = 0x8000000,   LENGTH = 512K
+  RAM    (xrw)    : ORIGIN = 0x20000000,   LENGTH = LD_MAX_DATA_SIZE
+  FLASH    (rx)    : ORIGIN = 0x8000000 + LD_FLASH_OFFSET, LENGTH = LD_MAX_SIZE - LD_FLASH_OFFSET
 }
basically for the u575 dont do this... Keep the fixed values in the linker script.

Code: Select all

/* Memories definition */
MEMORY
{
  RAM	(xrw)	: ORIGIN = 0x20000000,	LENGTH = 768K
  SRAM4	(xrw)	: ORIGIN = 0x28000000,	LENGTH = 16K
  FLASH	(rx)	: ORIGIN = 0x08000000,	LENGTH = 1024K
}
In the wiki it is an example for the STM32G0B1RE but it have to be adapted depending of your target.
See the one for the U575ZIxQ:
https://github.com/stm32duino/Arduino_C ... ld#L48-L50

Then in the boards.txt the 16k of the SRAM4 have been simply removed from the maximum data size:
GenU5.menu.pnum.GENERIC_U575ZGTXQ.upload.maximum_data_size=786432
https://github.com/stm32duino/Arduino_C ... txt#L12784
While the board_entry.txt it is the full size:
GenU5.menu.pnum.GENERIC_U575ZITXQ.upload.maximum_data_size=804864
https://github.com/stm32duino/Arduino_C ... 18C1-L19C1

Note that a dedicated variant can also used a custom linker script.
Ex:
GenH7.menu.pnum.DAISY_SEED.build.ldscript=DAISY_SEED.ld
https://github.com/stm32duino/Arduino_C ... .txt#L9244
Post Reply

Return to “General discussion”