Configuration of BSP variants

I’ve built the tools, and built the 7/arm-rtems toolset. Then I built the arm/stm32f4 BSP. Then I built the hello world. It didn’t work because when I tried to load with gdb it loaded at 0x0 instead of 0x08000000 which is where it was expected to be.

To fix that, I went into the files where the BSP was loaded (in my case $HOME/.local/rtems/7 and edited $HOME/.local/rtems/7/arm-rtems7/stem32f4/lib/linkcmds.stm32f4 to have the correct address for flash. There are bunch of different files in there, the one named $HOME/.local/rtems/7/arm-rtems7/stm32f4/lib/linkcmds had one line which was INCLUDE linkcmds.stm32f4.

So now I’m wondering if there is a way to tell waf what ‘variant’ of linker script to use?

–Chuck

Of course, since I’m actually running on an STM32F469I-DiscoveryTh that I could just copy the stm32f4 BSP, edit the files in it to be appropriate for that dev kit, and then build that BSP as the BSP I use.

I wonder though, as there is a lot of ‘base’ code (USART/I2C/SPI low level things) which work the same across many variants of the F4, how to capture that without having separate repositories for each one. My experience here is with libopencm3 which does a good job of being a base library for a wide range of parts.