summaryrefslogtreecommitdiff
path: root/lib/bt/linker_esp_ble_controller.lf
diff options
context:
space:
mode:
Diffstat (limited to 'lib/bt/linker_esp_ble_controller.lf')
-rw-r--r--lib/bt/linker_esp_ble_controller.lf42
1 files changed, 42 insertions, 0 deletions
diff --git a/lib/bt/linker_esp_ble_controller.lf b/lib/bt/linker_esp_ble_controller.lf
index fe859811..0af407f8 100644
--- a/lib/bt/linker_esp_ble_controller.lf
+++ b/lib/bt/linker_esp_ble_controller.lf
@@ -1,3 +1,45 @@
+[sections:bt_iram_text]
+entries:
+ .iram1+
+
+[sections:high_perf_iram_text]
+entries:
+ .high_perf_code_iram1+
+
+[scheme:bt_default]
+entries:
+ bt_bss -> dram0_bss
+ bt_common -> dram0_bss
+ data -> dram0_data
+ high_perf_iram_text -> iram0_text
+ if BT_CTRL_RUN_IN_FLASH_ONLY = y:
+ bt_iram_text -> flash_text
+ else:
+ bt_iram_text -> iram0_text
+
+# For the following fragments, order matters for
+# 'ALIGN(4) ALIGN(4, post) SURROUND(sym)', which generates:
+#
+# . = ALIGN(4)
+# _sym_start
+# ...
+# . = ALIGN(4)
+# _sym_end
+
+[mapping:bt]
+archive: libbt.a
+entries:
+ if ESP_ALLOW_BSS_SEG_EXTERNAL_MEMORY = y:
+ * (bt_extram_bss);
+ bt_bss -> extern_ram ALIGN(4) ALIGN(4, post) SURROUND(bt_bss),
+ bt_common -> extern_ram ALIGN(4) ALIGN(4, post) SURROUND(bt_common),
+ data -> dram0_data ALIGN(4) ALIGN(4, post) SURROUND(bt_data)
+ else:
+ * (bt_default);
+ bt_bss -> dram0_bss ALIGN(4) ALIGN(4, post) SURROUND(bt_bss),
+ bt_common -> dram0_bss ALIGN(4) ALIGN(4, post) SURROUND(bt_common),
+ data -> dram0_data ALIGN(4) ALIGN(4, post) SURROUND(bt_data)
+
[mapping:ble_app]
archive: libble_app.a
entries: