diff options
Diffstat (limited to 'lib/bt/linker_esp32c2.lf')
| -rw-r--r-- | lib/bt/linker_esp32c2.lf | 49 |
1 files changed, 45 insertions, 4 deletions
diff --git a/lib/bt/linker_esp32c2.lf b/lib/bt/linker_esp32c2.lf index 7178420a..c9ab4c2e 100644 --- a/lib/bt/linker_esp32c2.lf +++ b/lib/bt/linker_esp32c2.lf @@ -2,6 +2,18 @@ entries: .iram1+ +[sections:bt_isr_iram_text] +entries: + .isr_iram1+ + +[sections:bt_conn_iram_text] +entries: + .conn_iram1+ + +[sections:bt_sleep_iram_text] +entries: + .sleep_iram1+ + [sections:bt_bss] entries: .bss+ @@ -19,10 +31,31 @@ entries: [scheme:bt_default] entries: - bt_iram_text -> iram0_bt_text - bt_bss -> dram0_bt_bss - bt_common -> dram0_bt_bss - bt_data -> dram0_bt_data + if BT_CTRL_RUN_IN_FLASH_ONLY = y: + bt_iram_text -> flash_text + bt_bss -> dram0_bt_bss + bt_common -> dram0_bt_bss + bt_data -> dram0_bt_data + + if BT_LE_PLACE_CONN_RELATED_INTO_IRAM = y: + bt_conn_iram_text -> iram0_bt_text + bt_isr_iram_text -> iram0_bt_text + else: + bt_conn_iram_text -> flash_text + bt_isr_iram_text -> flash_text + if BT_LE_PLACE_SLEEP_RELATED_INTO_IRAM = y: + bt_sleep_iram_text -> iram0_bt_text + else: + bt_sleep_iram_text -> flash_text + else: + bt_iram_text -> iram0_bt_text + bt_bss -> dram0_bt_bss + bt_common -> dram0_bt_bss + bt_data -> dram0_bt_data + + bt_conn_iram_text -> iram0_bt_text + bt_isr_iram_text -> iram0_bt_text + bt_sleep_iram_text -> iram0_bt_text # For the following fragments, order matters for # 'ALIGN(4) ALIGN(4, post) SURROUND(sym)', which generates: @@ -48,3 +81,11 @@ entries: bt_bss -> dram0_bt_bss ALIGN(4) ALIGN(4, post) SURROUND(bt_controller_bss), bt_common -> dram0_bt_bss ALIGN(4) ALIGN(4, post) SURROUND(bt_controller_common), bt_data -> dram0_bt_data ALIGN(4) ALIGN(4, post) SURROUND(bt_controller_data) + +[mapping:ble_app_flash] +archive: libble_app_flash.a +entries: + * (bt_default); + bt_bss -> dram0_bt_bss ALIGN(4) ALIGN(4, post) SURROUND(bt_controller_bss), + bt_common -> dram0_bt_bss ALIGN(4) ALIGN(4, post) SURROUND(bt_controller_common), + bt_data -> dram0_bt_data ALIGN(4) ALIGN(4, post) SURROUND(bt_controller_data) |
