summaryrefslogtreecommitdiff
path: root/lib/bt/linker_esp32c2.lf
blob: c9ab4c2e49941032c1f82ccb74e8a29e5ae58dc5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
[sections:bt_iram_text]
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+
    .sbss+

[sections:bt_data]
entries:
    .data+
    .sdata+
    .dram1+

[sections:bt_common]
entries:
    COMMON

[scheme:bt_default]
entries:
    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:
#
#   . = ALIGN(4)
#   _sym_start
#   ...
#   . = ALIGN(4)
#   _sym_end

[mapping:bt]
archive: libbt.a
entries:
    * (bt_default);
        bt_bss -> dram0_bt_bss ALIGN(4) ALIGN(4, post) SURROUND(bt_bss),
        bt_common -> dram0_bt_bss ALIGN(4) ALIGN(4, post) SURROUND(bt_common),
        bt_data -> dram0_bt_data  ALIGN(4) ALIGN(4, post) SURROUND(bt_data)

[mapping:ble_app]
archive: libble_app.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)

[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)