This is an automated email from the ASF dual-hosted git repository.

jerzy pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/mynewt-core.git


The following commit(s) were added to refs/heads/master by this push:
     new db77b0248 link: Add link_tables to all ld scripts
db77b0248 is described below

commit db77b02486ab428bd2f588eb9eea650ac81df49f
Author: Jerzy Kasenberg <jerzy.kasenb...@codecoup.pl>
AuthorDate: Mon Mar 25 07:52:43 2024 +0100

    link: Add link_tables to all ld scripts
    
    newt tool can create link_tables.ld.h file from
    pkg.link_table section
    This modifies all linker scripts to have this
    functionality.
    
    Signed-off-by: Jerzy Kasenberg <jerzy.kasenb...@codecoup.pl>
---
 hw/bsp/ada_feather_nrf52/ada_feather_nrf52_no_boot.ld     | 1 +
 hw/bsp/ada_feather_nrf52/split_ada_feather_nrf52.ld       | 1 +
 hw/bsp/ada_feather_stm32f405/run_from_sram.ld             | 1 +
 hw/bsp/arduino_primo_nrf52/primo_no_boot.ld               | 1 +
 hw/bsp/arduino_primo_nrf52/split-primo.ld                 | 1 +
 hw/bsp/bbc_microbit/split-microbit.ld                     | 1 +
 hw/bsp/black_vet6/run_from_sram.ld                        | 1 +
 hw/bsp/ble400/ble400_no_boot.ld                           | 1 +
 hw/bsp/ble400/split-ble400.ld                             | 1 +
 hw/bsp/bmd200/nrf51dk_no_boot.ld                          | 1 +
 hw/bsp/bmd200/split-nrf51dk.ld                            | 1 +
 hw/bsp/bmd300eval/bmd300eval_no_boot.ld                   | 1 +
 hw/bsp/bmd300eval/split-bmd300eval.ld                     | 1 +
 hw/bsp/calliope_mini/split-calliope_mini.ld               | 1 +
 hw/bsp/dwm1001-dev/dwm1001-dev_no_boot.ld                 | 1 +
 hw/bsp/dwm1001-dev/split-dwm1001-dev.ld                   | 1 +
 hw/bsp/fanstel-ev-bt840/fanstel-ev-bt840_no_boot.ld       | 1 +
 hw/bsp/fanstel-ev-bt840/split-fanstel-ev-bt840.ld         | 1 +
 hw/bsp/frdm-k64f/MK64FN1M0xxx12_flash.ld                  | 1 +
 hw/bsp/frdm-k64f/boot-MK64FN1M0xxx12_flash.ld             | 1 +
 hw/bsp/frdm-k82f/MK82FN256xxx15_flash.ld                  | 1 +
 hw/bsp/frdm-k82f/boot-MK82FN256xxx15_flash.ld             | 1 +
 hw/bsp/hifive1/hifive1.ld                                 | 1 +
 hw/bsp/nina-b1/nrf52dk_no_boot.ld                         | 1 +
 hw/bsp/nina-b1/split-nrf52dk.ld                           | 1 +
 hw/bsp/nordic_pca10028-16k/nordic_pca10028-16k_no_boot.ld | 1 +
 hw/bsp/nordic_pca10028-16k/split-nordic_pca10028-16k.ld   | 1 +
 hw/bsp/nordic_pca10028/nordic_pca10028_no_boot.ld         | 1 +
 hw/bsp/nordic_pca10028/split-nordic_pca10028.ld           | 1 +
 hw/bsp/nordic_pca10040/nordic_pca10040_no_boot.ld         | 1 +
 hw/bsp/nordic_pca10040/split-nordic_pca10040.ld           | 1 +
 hw/bsp/nordic_pca10056/nordic_pca10056_no_boot.ld         | 1 +
 hw/bsp/nordic_pca10056/split-nordic_pca10056.ld           | 1 +
 hw/bsp/nordic_pca10059/nordic_pca10059_no_boot.ld         | 1 +
 hw/bsp/nordic_pca10059/split-nordic_pca10059.ld           | 1 +
 hw/bsp/nordic_pca10090/split-nordic_pca10090.ld           | 1 +
 hw/bsp/nordic_pca10095/nordic_pca10095_no_boot.ld         | 1 +
 hw/bsp/nordic_pca10095_net/nordic_pca10095_net_no_boot.ld | 1 +
 hw/bsp/nordic_pca10121/net/no_boot.ld                     | 1 +
 hw/bsp/nordic_pca10121/no_boot.ld                         | 1 +
 hw/bsp/nordic_pca20020/nordic_pca20020_no_boot.ld         | 1 +
 hw/bsp/nordic_pca20020/split-nordic_pca20020.ld           | 1 +
 hw/bsp/nrf51-arduino_101/nrf51dk-16kbram_no_boot.ld       | 1 +
 hw/bsp/nrf51-blenano/nrf51dk_no_boot.ld                   | 1 +
 hw/bsp/nrf51-blenano/split-nrf51dk.ld                     | 1 +
 hw/bsp/olimex_stm32-e407_devboard/run_from_sram.ld        | 1 +
 hw/bsp/puckjs/puckjs_no_boot.ld                           | 1 +
 hw/bsp/puckjs/split_puckjs.ld                             | 1 +
 hw/bsp/rb-blend2/rb-blend2_no_boot.ld                     | 1 +
 hw/bsp/rb-blend2/split-rb-blend2.ld                       | 1 +
 hw/bsp/rb-nano2/rb-nano2_no_boot.ld                       | 1 +
 hw/bsp/rb-nano2/split-rb-nano2.ld                         | 1 +
 hw/bsp/reel_board/reel_board_no_boot.ld                   | 1 +
 hw/bsp/reel_board/split-reel_board.ld                     | 1 +
 hw/bsp/ruuvitag_rev_b/ruuvitag_rev_b_no_boot.ld           | 1 +
 hw/bsp/ruuvitag_rev_b/split-ruuvitag_rev_b.ld             | 1 +
 hw/bsp/telee02/split-telee02.ld                           | 1 +
 hw/bsp/telee02/telee02_no_boot.ld                         | 1 +
 hw/bsp/ublox_bmd_345/split-ublox_bmd_345.ld               | 1 +
 hw/bsp/ublox_bmd_345/ublox_bmd_345_no_boot.ld             | 1 +
 hw/bsp/usbmkw41z/boot-mkw41z512.ld                        | 1 +
 hw/bsp/usbmkw41z/mkw41z512.ld                             | 1 +
 hw/bsp/usbmkw41z/no-boot-mkw41z512.ld                     | 1 +
 hw/bsp/vbluno51/split-vbluno51.ld                         | 1 +
 hw/bsp/vbluno51/vbluno51_no_boot.ld                       | 1 +
 hw/bsp/vbluno52/split-vbluno52.ld                         | 1 +
 hw/bsp/vbluno52/vbluno52_no_boot.ld                       | 1 +
 hw/mcu/ambiq/apollo2/apollo2.ld                           | 1 +
 hw/mcu/ambiq/apollo3/apollo3.ld                           | 1 +
 hw/mcu/atmel/samd21xx/samd21xx.ld                         | 1 +
 hw/mcu/dialog/cmac/cmac.ld                                | 1 +
 hw/mcu/dialog/da1469x/da1469x.ld                          | 1 +
 hw/mcu/dialog/da1469x/da1469x_ram_resident.ld             | 1 +
 hw/mcu/nordic/nrf51xxx/nrf51.ld                           | 1 +
 hw/mcu/nordic/nrf52xxx/nrf52.ld                           | 1 +
 hw/mcu/nordic/nrf52xxx/nrf52_ram_resident.ld              | 1 +
 hw/mcu/nordic/nrf5340/nrf5340.ld                          | 1 +
 hw/mcu/nordic/nrf5340/nrf5340_ram_resident.ld             | 1 +
 hw/mcu/nordic/nrf5340_net/nrf5340_net.ld                  | 1 +
 hw/mcu/nordic/nrf5340_net/nrf5340_net_ram_resident.ld     | 1 +
 hw/mcu/nordic/nrf91xx/nrf91.ld                            | 1 +
 hw/mcu/nordic/nrf91xx/nrf91_ram_resident.ld               | 1 +
 hw/mcu/stm/stm32f0xx/stm32f0xx.ld                         | 1 +
 hw/mcu/stm/stm32f1xx/stm32f103.ld                         | 1 +
 hw/mcu/stm/stm32f3xx/stm32f303.ld                         | 1 +
 hw/mcu/stm/stm32f4xx/stm32f401.ld                         | 1 +
 hw/mcu/stm/stm32f4xx/stm32f407.ld                         | 1 +
 hw/mcu/stm/stm32f4xx/stm32f411.ld                         | 1 +
 hw/mcu/stm/stm32f4xx/stm32f413.ld                         | 1 +
 hw/mcu/stm/stm32f4xx/stm32f427.ld                         | 1 +
 hw/mcu/stm/stm32f4xx/stm32f429.ld                         | 1 +
 hw/mcu/stm/stm32f4xx/stm32f439.ld                         | 1 +
 hw/mcu/stm/stm32f7xx/stm32f746.ld                         | 1 +
 hw/mcu/stm/stm32f7xx/stm32f767.ld                         | 1 +
 hw/mcu/stm/stm32h7xx/stm32h723.ld                         | 1 +
 hw/mcu/stm/stm32l0xx/stm32l072.ld                         | 1 +
 hw/mcu/stm/stm32l0xx/stm32l073.ld                         | 1 +
 hw/mcu/stm/stm32l1xx/stm32l152.ld                         | 1 +
 hw/mcu/stm/stm32l4xx/stm32l476.ld                         | 1 +
 hw/mcu/stm/stm32u5xx/stm32u5xx.ld                         | 1 +
 hw/mcu/stm/stm32wbxx/stm32wb55.ld                         | 1 +
 101 files changed, 101 insertions(+)

diff --git a/hw/bsp/ada_feather_nrf52/ada_feather_nrf52_no_boot.ld 
b/hw/bsp/ada_feather_nrf52/ada_feather_nrf52_no_boot.ld
index 3d8cf2270..a627bf105 100644
--- a/hw/bsp/ada_feather_nrf52/ada_feather_nrf52_no_boot.ld
+++ b/hw/bsp/ada_feather_nrf52/ada_feather_nrf52_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/ada_feather_nrf52/split_ada_feather_nrf52.ld 
b/hw/bsp/ada_feather_nrf52/split_ada_feather_nrf52.ld
index 696b6c416..af231bdda 100644
--- a/hw/bsp/ada_feather_nrf52/split_ada_feather_nrf52.ld
+++ b/hw/bsp/ada_feather_nrf52/split_ada_feather_nrf52.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/ada_feather_stm32f405/run_from_sram.ld 
b/hw/bsp/ada_feather_stm32f405/run_from_sram.ld
index 4984da436..df4869bac 100644
--- a/hw/bsp/ada_feather_stm32f405/run_from_sram.ld
+++ b/hw/bsp/ada_feather_stm32f405/run_from_sram.ld
@@ -89,6 +89,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         KEEP(*(.eh_frame*))
diff --git a/hw/bsp/arduino_primo_nrf52/primo_no_boot.ld 
b/hw/bsp/arduino_primo_nrf52/primo_no_boot.ld
index 3d8cf2270..a627bf105 100644
--- a/hw/bsp/arduino_primo_nrf52/primo_no_boot.ld
+++ b/hw/bsp/arduino_primo_nrf52/primo_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/arduino_primo_nrf52/split-primo.ld 
b/hw/bsp/arduino_primo_nrf52/split-primo.ld
index 696b6c416..af231bdda 100644
--- a/hw/bsp/arduino_primo_nrf52/split-primo.ld
+++ b/hw/bsp/arduino_primo_nrf52/split-primo.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/bbc_microbit/split-microbit.ld 
b/hw/bsp/bbc_microbit/split-microbit.ld
index 6df17d300..c9c4675e6 100644
--- a/hw/bsp/bbc_microbit/split-microbit.ld
+++ b/hw/bsp/bbc_microbit/split-microbit.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/black_vet6/run_from_sram.ld 
b/hw/bsp/black_vet6/run_from_sram.ld
index c78988375..41e5ad5c0 100644
--- a/hw/bsp/black_vet6/run_from_sram.ld
+++ b/hw/bsp/black_vet6/run_from_sram.ld
@@ -89,6 +89,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         KEEP(*(.eh_frame*))
diff --git a/hw/bsp/ble400/ble400_no_boot.ld b/hw/bsp/ble400/ble400_no_boot.ld
index b7a27b308..8ff1e6915 100644
--- a/hw/bsp/ble400/ble400_no_boot.ld
+++ b/hw/bsp/ble400/ble400_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/ble400/split-ble400.ld b/hw/bsp/ble400/split-ble400.ld
index 4ac1f31e3..b98080440 100644
--- a/hw/bsp/ble400/split-ble400.ld
+++ b/hw/bsp/ble400/split-ble400.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/bmd200/nrf51dk_no_boot.ld b/hw/bsp/bmd200/nrf51dk_no_boot.ld
index b7a27b308..8ff1e6915 100644
--- a/hw/bsp/bmd200/nrf51dk_no_boot.ld
+++ b/hw/bsp/bmd200/nrf51dk_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/bmd200/split-nrf51dk.ld b/hw/bsp/bmd200/split-nrf51dk.ld
index 4ac1f31e3..b98080440 100644
--- a/hw/bsp/bmd200/split-nrf51dk.ld
+++ b/hw/bsp/bmd200/split-nrf51dk.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/bmd300eval/bmd300eval_no_boot.ld 
b/hw/bsp/bmd300eval/bmd300eval_no_boot.ld
index 82e0aa20c..5294c7ff7 100644
--- a/hw/bsp/bmd300eval/bmd300eval_no_boot.ld
+++ b/hw/bsp/bmd300eval/bmd300eval_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/bmd300eval/split-bmd300eval.ld 
b/hw/bsp/bmd300eval/split-bmd300eval.ld
index 696b6c416..af231bdda 100644
--- a/hw/bsp/bmd300eval/split-bmd300eval.ld
+++ b/hw/bsp/bmd300eval/split-bmd300eval.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/calliope_mini/split-calliope_mini.ld 
b/hw/bsp/calliope_mini/split-calliope_mini.ld
index 740e6977b..b5dc492b9 100644
--- a/hw/bsp/calliope_mini/split-calliope_mini.ld
+++ b/hw/bsp/calliope_mini/split-calliope_mini.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/dwm1001-dev/dwm1001-dev_no_boot.ld 
b/hw/bsp/dwm1001-dev/dwm1001-dev_no_boot.ld
index 3d8cf2270..a627bf105 100644
--- a/hw/bsp/dwm1001-dev/dwm1001-dev_no_boot.ld
+++ b/hw/bsp/dwm1001-dev/dwm1001-dev_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/dwm1001-dev/split-dwm1001-dev.ld 
b/hw/bsp/dwm1001-dev/split-dwm1001-dev.ld
index 696b6c416..af231bdda 100644
--- a/hw/bsp/dwm1001-dev/split-dwm1001-dev.ld
+++ b/hw/bsp/dwm1001-dev/split-dwm1001-dev.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/fanstel-ev-bt840/fanstel-ev-bt840_no_boot.ld 
b/hw/bsp/fanstel-ev-bt840/fanstel-ev-bt840_no_boot.ld
index a55bcd8ed..4ddd42c2a 100644
--- a/hw/bsp/fanstel-ev-bt840/fanstel-ev-bt840_no_boot.ld
+++ b/hw/bsp/fanstel-ev-bt840/fanstel-ev-bt840_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/fanstel-ev-bt840/split-fanstel-ev-bt840.ld 
b/hw/bsp/fanstel-ev-bt840/split-fanstel-ev-bt840.ld
index 047e4fd7b..526108c46 100644
--- a/hw/bsp/fanstel-ev-bt840/split-fanstel-ev-bt840.ld
+++ b/hw/bsp/fanstel-ev-bt840/split-fanstel-ev-bt840.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/frdm-k64f/MK64FN1M0xxx12_flash.ld 
b/hw/bsp/frdm-k64f/MK64FN1M0xxx12_flash.ld
index a3276b2a7..45bc773f2 100644
--- a/hw/bsp/frdm-k64f/MK64FN1M0xxx12_flash.ld
+++ b/hw/bsp/frdm-k64f/MK64FN1M0xxx12_flash.ld
@@ -96,6 +96,7 @@ SECTIONS
     . = ALIGN(4);
     *(.text)                 /* .text sections (code) */
     *(.text*)                /* .text* sections (code) */
+INCLUDE "link_tables.ld.h"
     *(.rodata)               /* .rodata sections (constants, strings, etc.) */
     *(.rodata*)              /* .rodata* sections (constants, strings, etc.) */
     *(.glue_7)               /* glue arm to thumb code */
diff --git a/hw/bsp/frdm-k64f/boot-MK64FN1M0xxx12_flash.ld 
b/hw/bsp/frdm-k64f/boot-MK64FN1M0xxx12_flash.ld
index bea71abfa..dde619b15 100644
--- a/hw/bsp/frdm-k64f/boot-MK64FN1M0xxx12_flash.ld
+++ b/hw/bsp/frdm-k64f/boot-MK64FN1M0xxx12_flash.ld
@@ -89,6 +89,7 @@ SECTIONS
     . = ALIGN(4);
     *(.text)                 /* .text sections (code) */
     *(.text*)                /* .text* sections (code) */
+INCLUDE "link_tables.ld.h"
     *(.rodata)               /* .rodata sections (constants, strings, etc.) */
     *(.rodata*)              /* .rodata* sections (constants, strings, etc.) */
     *(.glue_7)               /* glue arm to thumb code */
diff --git a/hw/bsp/frdm-k82f/MK82FN256xxx15_flash.ld 
b/hw/bsp/frdm-k82f/MK82FN256xxx15_flash.ld
index ccf5b652b..3390a0944 100644
--- a/hw/bsp/frdm-k82f/MK82FN256xxx15_flash.ld
+++ b/hw/bsp/frdm-k82f/MK82FN256xxx15_flash.ld
@@ -65,6 +65,7 @@ SECTIONS
     . = ALIGN(4);
     *(.text)                 /* .text sections (code) */
     *(.text*)                /* .text* sections (code) */
+INCLUDE "link_tables.ld.h"
     *(.rodata)               /* .rodata sections (constants, strings, etc.) */
     *(.rodata*)              /* .rodata* sections (constants, strings, etc.) */
     *(.glue_7)               /* glue arm to thumb code */
diff --git a/hw/bsp/frdm-k82f/boot-MK82FN256xxx15_flash.ld 
b/hw/bsp/frdm-k82f/boot-MK82FN256xxx15_flash.ld
index 7abac84d7..129adef51 100644
--- a/hw/bsp/frdm-k82f/boot-MK82FN256xxx15_flash.ld
+++ b/hw/bsp/frdm-k82f/boot-MK82FN256xxx15_flash.ld
@@ -76,6 +76,7 @@ SECTIONS
     . = ALIGN(4);
     *(.text)                 /* .text sections (code) */
     *(.text*)                /* .text* sections (code) */
+INCLUDE "link_tables.ld.h"
     *(.rodata)               /* .rodata sections (constants, strings, etc.) */
     *(.rodata*)              /* .rodata* sections (constants, strings, etc.) */
     *(.glue_7)               /* glue arm to thumb code */
diff --git a/hw/bsp/hifive1/hifive1.ld b/hw/bsp/hifive1/hifive1.ld
index accf18a2d..3676d39f9 100644
--- a/hw/bsp/hifive1/hifive1.ld
+++ b/hw/bsp/hifive1/hifive1.ld
@@ -57,6 +57,7 @@ SECTIONS
   .rodata         :
   {
     *(.rdata)
+INCLUDE "link_tables.ld.h"
     *(.rodata .rodata.*)
     *(.gnu.linkonce.r.*)
   } >flash
diff --git a/hw/bsp/nina-b1/nrf52dk_no_boot.ld 
b/hw/bsp/nina-b1/nrf52dk_no_boot.ld
index 3d8cf2270..a627bf105 100644
--- a/hw/bsp/nina-b1/nrf52dk_no_boot.ld
+++ b/hw/bsp/nina-b1/nrf52dk_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/nina-b1/split-nrf52dk.ld b/hw/bsp/nina-b1/split-nrf52dk.ld
index 81bc25191..ddb09e59f 100644
--- a/hw/bsp/nina-b1/split-nrf52dk.ld
+++ b/hw/bsp/nina-b1/split-nrf52dk.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/nordic_pca10028-16k/nordic_pca10028-16k_no_boot.ld 
b/hw/bsp/nordic_pca10028-16k/nordic_pca10028-16k_no_boot.ld
index ef03282fd..3160f2d11 100644
--- a/hw/bsp/nordic_pca10028-16k/nordic_pca10028-16k_no_boot.ld
+++ b/hw/bsp/nordic_pca10028-16k/nordic_pca10028-16k_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/nordic_pca10028-16k/split-nordic_pca10028-16k.ld 
b/hw/bsp/nordic_pca10028-16k/split-nordic_pca10028-16k.ld
index 6df17d300..c9c4675e6 100644
--- a/hw/bsp/nordic_pca10028-16k/split-nordic_pca10028-16k.ld
+++ b/hw/bsp/nordic_pca10028-16k/split-nordic_pca10028-16k.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/nordic_pca10028/nordic_pca10028_no_boot.ld 
b/hw/bsp/nordic_pca10028/nordic_pca10028_no_boot.ld
index b7a27b308..8ff1e6915 100644
--- a/hw/bsp/nordic_pca10028/nordic_pca10028_no_boot.ld
+++ b/hw/bsp/nordic_pca10028/nordic_pca10028_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/nordic_pca10028/split-nordic_pca10028.ld 
b/hw/bsp/nordic_pca10028/split-nordic_pca10028.ld
index 4ac1f31e3..b98080440 100644
--- a/hw/bsp/nordic_pca10028/split-nordic_pca10028.ld
+++ b/hw/bsp/nordic_pca10028/split-nordic_pca10028.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/nordic_pca10040/nordic_pca10040_no_boot.ld 
b/hw/bsp/nordic_pca10040/nordic_pca10040_no_boot.ld
index 3d8cf2270..a627bf105 100644
--- a/hw/bsp/nordic_pca10040/nordic_pca10040_no_boot.ld
+++ b/hw/bsp/nordic_pca10040/nordic_pca10040_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/nordic_pca10040/split-nordic_pca10040.ld 
b/hw/bsp/nordic_pca10040/split-nordic_pca10040.ld
index 696b6c416..af231bdda 100644
--- a/hw/bsp/nordic_pca10040/split-nordic_pca10040.ld
+++ b/hw/bsp/nordic_pca10040/split-nordic_pca10040.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/nordic_pca10056/nordic_pca10056_no_boot.ld 
b/hw/bsp/nordic_pca10056/nordic_pca10056_no_boot.ld
index a55bcd8ed..4ddd42c2a 100644
--- a/hw/bsp/nordic_pca10056/nordic_pca10056_no_boot.ld
+++ b/hw/bsp/nordic_pca10056/nordic_pca10056_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/nordic_pca10056/split-nordic_pca10056.ld 
b/hw/bsp/nordic_pca10056/split-nordic_pca10056.ld
index 047e4fd7b..526108c46 100644
--- a/hw/bsp/nordic_pca10056/split-nordic_pca10056.ld
+++ b/hw/bsp/nordic_pca10056/split-nordic_pca10056.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/nordic_pca10059/nordic_pca10059_no_boot.ld 
b/hw/bsp/nordic_pca10059/nordic_pca10059_no_boot.ld
index a55bcd8ed..4ddd42c2a 100644
--- a/hw/bsp/nordic_pca10059/nordic_pca10059_no_boot.ld
+++ b/hw/bsp/nordic_pca10059/nordic_pca10059_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/nordic_pca10059/split-nordic_pca10059.ld 
b/hw/bsp/nordic_pca10059/split-nordic_pca10059.ld
index 047e4fd7b..526108c46 100644
--- a/hw/bsp/nordic_pca10059/split-nordic_pca10059.ld
+++ b/hw/bsp/nordic_pca10059/split-nordic_pca10059.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/nordic_pca10090/split-nordic_pca10090.ld 
b/hw/bsp/nordic_pca10090/split-nordic_pca10090.ld
index 696b6c416..af231bdda 100644
--- a/hw/bsp/nordic_pca10090/split-nordic_pca10090.ld
+++ b/hw/bsp/nordic_pca10090/split-nordic_pca10090.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/nordic_pca10095/nordic_pca10095_no_boot.ld 
b/hw/bsp/nordic_pca10095/nordic_pca10095_no_boot.ld
index 41c0dd179..ad449838c 100644
--- a/hw/bsp/nordic_pca10095/nordic_pca10095_no_boot.ld
+++ b/hw/bsp/nordic_pca10095/nordic_pca10095_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/nordic_pca10095_net/nordic_pca10095_net_no_boot.ld 
b/hw/bsp/nordic_pca10095_net/nordic_pca10095_net_no_boot.ld
index 336c688bd..1b0dd456d 100644
--- a/hw/bsp/nordic_pca10095_net/nordic_pca10095_net_no_boot.ld
+++ b/hw/bsp/nordic_pca10095_net/nordic_pca10095_net_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/nordic_pca10121/net/no_boot.ld 
b/hw/bsp/nordic_pca10121/net/no_boot.ld
index 336c688bd..1b0dd456d 100644
--- a/hw/bsp/nordic_pca10121/net/no_boot.ld
+++ b/hw/bsp/nordic_pca10121/net/no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/nordic_pca10121/no_boot.ld 
b/hw/bsp/nordic_pca10121/no_boot.ld
index 41c0dd179..ad449838c 100644
--- a/hw/bsp/nordic_pca10121/no_boot.ld
+++ b/hw/bsp/nordic_pca10121/no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/nordic_pca20020/nordic_pca20020_no_boot.ld 
b/hw/bsp/nordic_pca20020/nordic_pca20020_no_boot.ld
index 3d8cf2270..a627bf105 100644
--- a/hw/bsp/nordic_pca20020/nordic_pca20020_no_boot.ld
+++ b/hw/bsp/nordic_pca20020/nordic_pca20020_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/nordic_pca20020/split-nordic_pca20020.ld 
b/hw/bsp/nordic_pca20020/split-nordic_pca20020.ld
index 696b6c416..af231bdda 100644
--- a/hw/bsp/nordic_pca20020/split-nordic_pca20020.ld
+++ b/hw/bsp/nordic_pca20020/split-nordic_pca20020.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/nrf51-arduino_101/nrf51dk-16kbram_no_boot.ld 
b/hw/bsp/nrf51-arduino_101/nrf51dk-16kbram_no_boot.ld
index 99131e16b..748c00ca2 100644
--- a/hw/bsp/nrf51-arduino_101/nrf51dk-16kbram_no_boot.ld
+++ b/hw/bsp/nrf51-arduino_101/nrf51dk-16kbram_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/nrf51-blenano/nrf51dk_no_boot.ld 
b/hw/bsp/nrf51-blenano/nrf51dk_no_boot.ld
index b7a27b308..8ff1e6915 100644
--- a/hw/bsp/nrf51-blenano/nrf51dk_no_boot.ld
+++ b/hw/bsp/nrf51-blenano/nrf51dk_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/nrf51-blenano/split-nrf51dk.ld 
b/hw/bsp/nrf51-blenano/split-nrf51dk.ld
index 4ac1f31e3..b98080440 100644
--- a/hw/bsp/nrf51-blenano/split-nrf51dk.ld
+++ b/hw/bsp/nrf51-blenano/split-nrf51dk.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/olimex_stm32-e407_devboard/run_from_sram.ld 
b/hw/bsp/olimex_stm32-e407_devboard/run_from_sram.ld
index fab36a87b..e2be7f0e5 100644
--- a/hw/bsp/olimex_stm32-e407_devboard/run_from_sram.ld
+++ b/hw/bsp/olimex_stm32-e407_devboard/run_from_sram.ld
@@ -89,6 +89,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         KEEP(*(.eh_frame*))
diff --git a/hw/bsp/puckjs/puckjs_no_boot.ld b/hw/bsp/puckjs/puckjs_no_boot.ld
index 3d8cf2270..a627bf105 100644
--- a/hw/bsp/puckjs/puckjs_no_boot.ld
+++ b/hw/bsp/puckjs/puckjs_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/puckjs/split_puckjs.ld b/hw/bsp/puckjs/split_puckjs.ld
index 696b6c416..af231bdda 100644
--- a/hw/bsp/puckjs/split_puckjs.ld
+++ b/hw/bsp/puckjs/split_puckjs.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/rb-blend2/rb-blend2_no_boot.ld 
b/hw/bsp/rb-blend2/rb-blend2_no_boot.ld
index 3d8cf2270..a627bf105 100644
--- a/hw/bsp/rb-blend2/rb-blend2_no_boot.ld
+++ b/hw/bsp/rb-blend2/rb-blend2_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/rb-blend2/split-rb-blend2.ld 
b/hw/bsp/rb-blend2/split-rb-blend2.ld
index 696b6c416..af231bdda 100644
--- a/hw/bsp/rb-blend2/split-rb-blend2.ld
+++ b/hw/bsp/rb-blend2/split-rb-blend2.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/rb-nano2/rb-nano2_no_boot.ld 
b/hw/bsp/rb-nano2/rb-nano2_no_boot.ld
index 3d8cf2270..a627bf105 100644
--- a/hw/bsp/rb-nano2/rb-nano2_no_boot.ld
+++ b/hw/bsp/rb-nano2/rb-nano2_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/rb-nano2/split-rb-nano2.ld 
b/hw/bsp/rb-nano2/split-rb-nano2.ld
index 696b6c416..af231bdda 100644
--- a/hw/bsp/rb-nano2/split-rb-nano2.ld
+++ b/hw/bsp/rb-nano2/split-rb-nano2.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/reel_board/reel_board_no_boot.ld 
b/hw/bsp/reel_board/reel_board_no_boot.ld
index a55bcd8ed..4ddd42c2a 100644
--- a/hw/bsp/reel_board/reel_board_no_boot.ld
+++ b/hw/bsp/reel_board/reel_board_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/reel_board/split-reel_board.ld 
b/hw/bsp/reel_board/split-reel_board.ld
index 047e4fd7b..526108c46 100644
--- a/hw/bsp/reel_board/split-reel_board.ld
+++ b/hw/bsp/reel_board/split-reel_board.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/ruuvitag_rev_b/ruuvitag_rev_b_no_boot.ld 
b/hw/bsp/ruuvitag_rev_b/ruuvitag_rev_b_no_boot.ld
index 3d8cf2270..a627bf105 100644
--- a/hw/bsp/ruuvitag_rev_b/ruuvitag_rev_b_no_boot.ld
+++ b/hw/bsp/ruuvitag_rev_b/ruuvitag_rev_b_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/ruuvitag_rev_b/split-ruuvitag_rev_b.ld 
b/hw/bsp/ruuvitag_rev_b/split-ruuvitag_rev_b.ld
index 696b6c416..af231bdda 100644
--- a/hw/bsp/ruuvitag_rev_b/split-ruuvitag_rev_b.ld
+++ b/hw/bsp/ruuvitag_rev_b/split-ruuvitag_rev_b.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/telee02/split-telee02.ld b/hw/bsp/telee02/split-telee02.ld
index 696b6c416..af231bdda 100644
--- a/hw/bsp/telee02/split-telee02.ld
+++ b/hw/bsp/telee02/split-telee02.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/telee02/telee02_no_boot.ld 
b/hw/bsp/telee02/telee02_no_boot.ld
index 3d8cf2270..a627bf105 100644
--- a/hw/bsp/telee02/telee02_no_boot.ld
+++ b/hw/bsp/telee02/telee02_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/ublox_bmd_345/split-ublox_bmd_345.ld 
b/hw/bsp/ublox_bmd_345/split-ublox_bmd_345.ld
index 047e4fd7b..526108c46 100644
--- a/hw/bsp/ublox_bmd_345/split-ublox_bmd_345.ld
+++ b/hw/bsp/ublox_bmd_345/split-ublox_bmd_345.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/ublox_bmd_345/ublox_bmd_345_no_boot.ld 
b/hw/bsp/ublox_bmd_345/ublox_bmd_345_no_boot.ld
index a55bcd8ed..4ddd42c2a 100644
--- a/hw/bsp/ublox_bmd_345/ublox_bmd_345_no_boot.ld
+++ b/hw/bsp/ublox_bmd_345/ublox_bmd_345_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/usbmkw41z/boot-mkw41z512.ld 
b/hw/bsp/usbmkw41z/boot-mkw41z512.ld
index 99c766a0d..57dd8518b 100644
--- a/hw/bsp/usbmkw41z/boot-mkw41z512.ld
+++ b/hw/bsp/usbmkw41z/boot-mkw41z512.ld
@@ -97,6 +97,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/usbmkw41z/mkw41z512.ld b/hw/bsp/usbmkw41z/mkw41z512.ld
index 491a1ac40..315685d2c 100644
--- a/hw/bsp/usbmkw41z/mkw41z512.ld
+++ b/hw/bsp/usbmkw41z/mkw41z512.ld
@@ -87,6 +87,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/usbmkw41z/no-boot-mkw41z512.ld 
b/hw/bsp/usbmkw41z/no-boot-mkw41z512.ld
index 6dff11457..df475caa2 100644
--- a/hw/bsp/usbmkw41z/no-boot-mkw41z512.ld
+++ b/hw/bsp/usbmkw41z/no-boot-mkw41z512.ld
@@ -97,6 +97,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/vbluno51/split-vbluno51.ld 
b/hw/bsp/vbluno51/split-vbluno51.ld
index 4ac1f31e3..b98080440 100644
--- a/hw/bsp/vbluno51/split-vbluno51.ld
+++ b/hw/bsp/vbluno51/split-vbluno51.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/vbluno51/vbluno51_no_boot.ld 
b/hw/bsp/vbluno51/vbluno51_no_boot.ld
index b7a27b308..8ff1e6915 100644
--- a/hw/bsp/vbluno51/vbluno51_no_boot.ld
+++ b/hw/bsp/vbluno51/vbluno51_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/vbluno52/split-vbluno52.ld 
b/hw/bsp/vbluno52/split-vbluno52.ld
index 696b6c416..af231bdda 100644
--- a/hw/bsp/vbluno52/split-vbluno52.ld
+++ b/hw/bsp/vbluno52/split-vbluno52.ld
@@ -83,6 +83,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/bsp/vbluno52/vbluno52_no_boot.ld 
b/hw/bsp/vbluno52/vbluno52_no_boot.ld
index 3d8cf2270..a627bf105 100644
--- a/hw/bsp/vbluno52/vbluno52_no_boot.ld
+++ b/hw/bsp/vbluno52/vbluno52_no_boot.ld
@@ -80,6 +80,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/mcu/ambiq/apollo2/apollo2.ld b/hw/mcu/ambiq/apollo2/apollo2.ld
index 3c15b58fe..421b1c187 100644
--- a/hw/mcu/ambiq/apollo2/apollo2.ld
+++ b/hw/mcu/ambiq/apollo2/apollo2.ld
@@ -79,6 +79,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/mcu/ambiq/apollo3/apollo3.ld b/hw/mcu/ambiq/apollo3/apollo3.ld
index b2f308311..3aa2098ee 100644
--- a/hw/mcu/ambiq/apollo3/apollo3.ld
+++ b/hw/mcu/ambiq/apollo3/apollo3.ld
@@ -43,6 +43,7 @@ SECTIONS
 
     /* .rodata */
     . = ALIGN(4);
+INCLUDE "link_tables.ld.h"
     *(.rodata)
     *(.rodata*)
 
diff --git a/hw/mcu/atmel/samd21xx/samd21xx.ld 
b/hw/mcu/atmel/samd21xx/samd21xx.ld
index 35e064e18..8a12ab7a2 100644
--- a/hw/mcu/atmel/samd21xx/samd21xx.ld
+++ b/hw/mcu/atmel/samd21xx/samd21xx.ld
@@ -107,6 +107,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         KEEP(*(.eh_frame*))
diff --git a/hw/mcu/dialog/cmac/cmac.ld b/hw/mcu/dialog/cmac/cmac.ld
index f7eb6cec0..f5097f442 100644
--- a/hw/mcu/dialog/cmac/cmac.ld
+++ b/hw/mcu/dialog/cmac/cmac.ld
@@ -67,6 +67,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/mcu/dialog/da1469x/da1469x.ld b/hw/mcu/dialog/da1469x/da1469x.ld
index 9f1e29bd5..4345d18e4 100644
--- a/hw/mcu/dialog/da1469x/da1469x.ld
+++ b/hw/mcu/dialog/da1469x/da1469x.ld
@@ -105,6 +105,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/mcu/dialog/da1469x/da1469x_ram_resident.ld 
b/hw/mcu/dialog/da1469x/da1469x_ram_resident.ld
index 0caf676f2..8e3ed7dc4 100644
--- a/hw/mcu/dialog/da1469x/da1469x_ram_resident.ld
+++ b/hw/mcu/dialog/da1469x/da1469x_ram_resident.ld
@@ -69,6 +69,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/mcu/nordic/nrf51xxx/nrf51.ld b/hw/mcu/nordic/nrf51xxx/nrf51.ld
index ea89e0f3e..710407c12 100644
--- a/hw/mcu/nordic/nrf51xxx/nrf51.ld
+++ b/hw/mcu/nordic/nrf51xxx/nrf51.ld
@@ -99,6 +99,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/mcu/nordic/nrf52xxx/nrf52.ld b/hw/mcu/nordic/nrf52xxx/nrf52.ld
index af7de107e..4c25985d5 100644
--- a/hw/mcu/nordic/nrf52xxx/nrf52.ld
+++ b/hw/mcu/nordic/nrf52xxx/nrf52.ld
@@ -99,6 +99,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/mcu/nordic/nrf52xxx/nrf52_ram_resident.ld 
b/hw/mcu/nordic/nrf52xxx/nrf52_ram_resident.ld
index f482248ee..9cc5b105b 100644
--- a/hw/mcu/nordic/nrf52xxx/nrf52_ram_resident.ld
+++ b/hw/mcu/nordic/nrf52xxx/nrf52_ram_resident.ld
@@ -95,6 +95,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/mcu/nordic/nrf5340/nrf5340.ld b/hw/mcu/nordic/nrf5340/nrf5340.ld
index d8e27e769..339ac60ab 100644
--- a/hw/mcu/nordic/nrf5340/nrf5340.ld
+++ b/hw/mcu/nordic/nrf5340/nrf5340.ld
@@ -99,6 +99,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/mcu/nordic/nrf5340/nrf5340_ram_resident.ld 
b/hw/mcu/nordic/nrf5340/nrf5340_ram_resident.ld
index 05dfd466e..ef482672c 100644
--- a/hw/mcu/nordic/nrf5340/nrf5340_ram_resident.ld
+++ b/hw/mcu/nordic/nrf5340/nrf5340_ram_resident.ld
@@ -95,6 +95,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/mcu/nordic/nrf5340_net/nrf5340_net.ld 
b/hw/mcu/nordic/nrf5340_net/nrf5340_net.ld
index f235d6d5f..74a20ff49 100644
--- a/hw/mcu/nordic/nrf5340_net/nrf5340_net.ld
+++ b/hw/mcu/nordic/nrf5340_net/nrf5340_net.ld
@@ -99,6 +99,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/mcu/nordic/nrf5340_net/nrf5340_net_ram_resident.ld 
b/hw/mcu/nordic/nrf5340_net/nrf5340_net_ram_resident.ld
index f482248ee..9cc5b105b 100644
--- a/hw/mcu/nordic/nrf5340_net/nrf5340_net_ram_resident.ld
+++ b/hw/mcu/nordic/nrf5340_net/nrf5340_net_ram_resident.ld
@@ -95,6 +95,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/mcu/nordic/nrf91xx/nrf91.ld b/hw/mcu/nordic/nrf91xx/nrf91.ld
index af7de107e..4c25985d5 100644
--- a/hw/mcu/nordic/nrf91xx/nrf91.ld
+++ b/hw/mcu/nordic/nrf91xx/nrf91.ld
@@ -99,6 +99,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/mcu/nordic/nrf91xx/nrf91_ram_resident.ld 
b/hw/mcu/nordic/nrf91xx/nrf91_ram_resident.ld
index f482248ee..9cc5b105b 100644
--- a/hw/mcu/nordic/nrf91xx/nrf91_ram_resident.ld
+++ b/hw/mcu/nordic/nrf91xx/nrf91_ram_resident.ld
@@ -95,6 +95,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         *(.eh_frame*)
diff --git a/hw/mcu/stm/stm32f0xx/stm32f0xx.ld 
b/hw/mcu/stm/stm32f0xx/stm32f0xx.ld
index a9602ac84..d06161921 100644
--- a/hw/mcu/stm/stm32f0xx/stm32f0xx.ld
+++ b/hw/mcu/stm/stm32f0xx/stm32f0xx.ld
@@ -107,6 +107,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         KEEP(*(.eh_frame*))
diff --git a/hw/mcu/stm/stm32f1xx/stm32f103.ld 
b/hw/mcu/stm/stm32f1xx/stm32f103.ld
index 5a646e5ee..7055654ac 100644
--- a/hw/mcu/stm/stm32f1xx/stm32f103.ld
+++ b/hw/mcu/stm/stm32f1xx/stm32f103.ld
@@ -107,6 +107,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         KEEP(*(.eh_frame*))
diff --git a/hw/mcu/stm/stm32f3xx/stm32f303.ld 
b/hw/mcu/stm/stm32f3xx/stm32f303.ld
index b7ee776c3..8636a22fd 100644
--- a/hw/mcu/stm/stm32f3xx/stm32f303.ld
+++ b/hw/mcu/stm/stm32f3xx/stm32f303.ld
@@ -108,6 +108,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         KEEP(*(.eh_frame*))
diff --git a/hw/mcu/stm/stm32f4xx/stm32f401.ld 
b/hw/mcu/stm/stm32f4xx/stm32f401.ld
index 40a35de32..e5dd916f0 100644
--- a/hw/mcu/stm/stm32f4xx/stm32f401.ld
+++ b/hw/mcu/stm/stm32f4xx/stm32f401.ld
@@ -105,6 +105,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         KEEP(*(.eh_frame*))
diff --git a/hw/mcu/stm/stm32f4xx/stm32f407.ld 
b/hw/mcu/stm/stm32f4xx/stm32f407.ld
index 51eaa3b47..1b4526b73 100644
--- a/hw/mcu/stm/stm32f4xx/stm32f407.ld
+++ b/hw/mcu/stm/stm32f4xx/stm32f407.ld
@@ -105,6 +105,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         KEEP(*(.eh_frame*))
diff --git a/hw/mcu/stm/stm32f4xx/stm32f411.ld 
b/hw/mcu/stm/stm32f4xx/stm32f411.ld
index 40a35de32..e5dd916f0 100644
--- a/hw/mcu/stm/stm32f4xx/stm32f411.ld
+++ b/hw/mcu/stm/stm32f4xx/stm32f411.ld
@@ -105,6 +105,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         KEEP(*(.eh_frame*))
diff --git a/hw/mcu/stm/stm32f4xx/stm32f413.ld 
b/hw/mcu/stm/stm32f4xx/stm32f413.ld
index 7615341cd..90b0e3655 100644
--- a/hw/mcu/stm/stm32f4xx/stm32f413.ld
+++ b/hw/mcu/stm/stm32f4xx/stm32f413.ld
@@ -107,6 +107,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         KEEP(*(.eh_frame*))
diff --git a/hw/mcu/stm/stm32f4xx/stm32f427.ld 
b/hw/mcu/stm/stm32f4xx/stm32f427.ld
index 51eaa3b47..1b4526b73 100644
--- a/hw/mcu/stm/stm32f4xx/stm32f427.ld
+++ b/hw/mcu/stm/stm32f4xx/stm32f427.ld
@@ -105,6 +105,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         KEEP(*(.eh_frame*))
diff --git a/hw/mcu/stm/stm32f4xx/stm32f429.ld 
b/hw/mcu/stm/stm32f4xx/stm32f429.ld
index e473e33ff..eea022765 100644
--- a/hw/mcu/stm/stm32f4xx/stm32f429.ld
+++ b/hw/mcu/stm/stm32f4xx/stm32f429.ld
@@ -108,6 +108,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         KEEP(*(.eh_frame*))
diff --git a/hw/mcu/stm/stm32f4xx/stm32f439.ld 
b/hw/mcu/stm/stm32f4xx/stm32f439.ld
index e473e33ff..eea022765 100644
--- a/hw/mcu/stm/stm32f4xx/stm32f439.ld
+++ b/hw/mcu/stm/stm32f4xx/stm32f439.ld
@@ -108,6 +108,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         KEEP(*(.eh_frame*))
diff --git a/hw/mcu/stm/stm32f7xx/stm32f746.ld 
b/hw/mcu/stm/stm32f7xx/stm32f746.ld
index 2b017b47a..e1929bfbd 100644
--- a/hw/mcu/stm/stm32f7xx/stm32f746.ld
+++ b/hw/mcu/stm/stm32f7xx/stm32f746.ld
@@ -107,6 +107,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         KEEP(*(.eh_frame*))
diff --git a/hw/mcu/stm/stm32f7xx/stm32f767.ld 
b/hw/mcu/stm/stm32f7xx/stm32f767.ld
index 2b017b47a..e1929bfbd 100644
--- a/hw/mcu/stm/stm32f7xx/stm32f767.ld
+++ b/hw/mcu/stm/stm32f7xx/stm32f767.ld
@@ -107,6 +107,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         KEEP(*(.eh_frame*))
diff --git a/hw/mcu/stm/stm32h7xx/stm32h723.ld 
b/hw/mcu/stm/stm32h7xx/stm32h723.ld
index 2e41eed0b..72557cdfc 100644
--- a/hw/mcu/stm/stm32h7xx/stm32h723.ld
+++ b/hw/mcu/stm/stm32h7xx/stm32h723.ld
@@ -107,6 +107,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         KEEP(*(.eh_frame*))
diff --git a/hw/mcu/stm/stm32l0xx/stm32l072.ld 
b/hw/mcu/stm/stm32l0xx/stm32l072.ld
index 15b0a8007..d18107458 100644
--- a/hw/mcu/stm/stm32l0xx/stm32l072.ld
+++ b/hw/mcu/stm/stm32l0xx/stm32l072.ld
@@ -106,6 +106,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         KEEP(*(.eh_frame*))
diff --git a/hw/mcu/stm/stm32l0xx/stm32l073.ld 
b/hw/mcu/stm/stm32l0xx/stm32l073.ld
index 15b0a8007..d18107458 100644
--- a/hw/mcu/stm/stm32l0xx/stm32l073.ld
+++ b/hw/mcu/stm/stm32l0xx/stm32l073.ld
@@ -106,6 +106,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         KEEP(*(.eh_frame*))
diff --git a/hw/mcu/stm/stm32l1xx/stm32l152.ld 
b/hw/mcu/stm/stm32l1xx/stm32l152.ld
index 5a646e5ee..7055654ac 100644
--- a/hw/mcu/stm/stm32l1xx/stm32l152.ld
+++ b/hw/mcu/stm/stm32l1xx/stm32l152.ld
@@ -107,6 +107,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         KEEP(*(.eh_frame*))
diff --git a/hw/mcu/stm/stm32l4xx/stm32l476.ld 
b/hw/mcu/stm/stm32l4xx/stm32l476.ld
index e0b6bf2cf..3a9e4b474 100644
--- a/hw/mcu/stm/stm32l4xx/stm32l476.ld
+++ b/hw/mcu/stm/stm32l4xx/stm32l476.ld
@@ -106,6 +106,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         KEEP(*(.eh_frame*))
diff --git a/hw/mcu/stm/stm32u5xx/stm32u5xx.ld 
b/hw/mcu/stm/stm32u5xx/stm32u5xx.ld
index e0b6bf2cf..3a9e4b474 100644
--- a/hw/mcu/stm/stm32u5xx/stm32u5xx.ld
+++ b/hw/mcu/stm/stm32u5xx/stm32u5xx.ld
@@ -106,6 +106,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         KEEP(*(.eh_frame*))
diff --git a/hw/mcu/stm/stm32wbxx/stm32wb55.ld 
b/hw/mcu/stm/stm32wbxx/stm32wb55.ld
index bc61dc028..411ec7a60 100644
--- a/hw/mcu/stm/stm32wbxx/stm32wb55.ld
+++ b/hw/mcu/stm/stm32wbxx/stm32wb55.ld
@@ -107,6 +107,7 @@ SECTIONS
         *(SORT(.dtors.*))
         *(.dtors)
 
+INCLUDE "link_tables.ld.h"
         *(.rodata*)
 
         KEEP(*(.eh_frame*))


Reply via email to