xref: /btstack/port/nrf5-cinnamon/pca10040/armgcc/nrf52832_xxaa.ld (revision 0138fcae13848f7f874de85efb761a26b844e915)
1*0138fcaeSMatthias Ringwald/* Linker script to configure memory regions. */
2*0138fcaeSMatthias Ringwald
3*0138fcaeSMatthias RingwaldSEARCH_DIR(.)
4*0138fcaeSMatthias RingwaldGROUP(-lgcc -lc -lnosys)
5*0138fcaeSMatthias Ringwald
6*0138fcaeSMatthias RingwaldMEMORY
7*0138fcaeSMatthias Ringwald{
8*0138fcaeSMatthias Ringwald  FLASH (rx) : ORIGIN = 0x0, LENGTH = 0x80000
9*0138fcaeSMatthias Ringwald  RAM (rwx) :  ORIGIN = 0x20000000, LENGTH = 0x10000
10*0138fcaeSMatthias Ringwald}
11*0138fcaeSMatthias Ringwald
12*0138fcaeSMatthias RingwaldSECTIONS
13*0138fcaeSMatthias Ringwald{
14*0138fcaeSMatthias Ringwald}
15*0138fcaeSMatthias Ringwald
16*0138fcaeSMatthias RingwaldSECTIONS
17*0138fcaeSMatthias Ringwald{
18*0138fcaeSMatthias Ringwald  . = ALIGN(4);
19*0138fcaeSMatthias Ringwald  .mem_section_dummy_ram :
20*0138fcaeSMatthias Ringwald  {
21*0138fcaeSMatthias Ringwald  }
22*0138fcaeSMatthias Ringwald  .log_dynamic_data :
23*0138fcaeSMatthias Ringwald  {
24*0138fcaeSMatthias Ringwald    PROVIDE(__start_log_dynamic_data = .);
25*0138fcaeSMatthias Ringwald    KEEP(*(SORT(.log_dynamic_data*)))
26*0138fcaeSMatthias Ringwald    PROVIDE(__stop_log_dynamic_data = .);
27*0138fcaeSMatthias Ringwald  } > RAM
28*0138fcaeSMatthias Ringwald  .log_filter_data :
29*0138fcaeSMatthias Ringwald  {
30*0138fcaeSMatthias Ringwald    PROVIDE(__start_log_filter_data = .);
31*0138fcaeSMatthias Ringwald    KEEP(*(SORT(.log_filter_data*)))
32*0138fcaeSMatthias Ringwald    PROVIDE(__stop_log_filter_data = .);
33*0138fcaeSMatthias Ringwald  } > RAM
34*0138fcaeSMatthias Ringwald
35*0138fcaeSMatthias Ringwald} INSERT AFTER .data;
36*0138fcaeSMatthias Ringwald
37*0138fcaeSMatthias RingwaldSECTIONS
38*0138fcaeSMatthias Ringwald{
39*0138fcaeSMatthias Ringwald  .mem_section_dummy_rom :
40*0138fcaeSMatthias Ringwald  {
41*0138fcaeSMatthias Ringwald  }
42*0138fcaeSMatthias Ringwald  .log_const_data :
43*0138fcaeSMatthias Ringwald  {
44*0138fcaeSMatthias Ringwald    PROVIDE(__start_log_const_data = .);
45*0138fcaeSMatthias Ringwald    KEEP(*(SORT(.log_const_data*)))
46*0138fcaeSMatthias Ringwald    PROVIDE(__stop_log_const_data = .);
47*0138fcaeSMatthias Ringwald  } > FLASH
48*0138fcaeSMatthias Ringwald  .log_backends :
49*0138fcaeSMatthias Ringwald  {
50*0138fcaeSMatthias Ringwald    PROVIDE(__start_log_backends = .);
51*0138fcaeSMatthias Ringwald    KEEP(*(SORT(.log_backends*)))
52*0138fcaeSMatthias Ringwald    PROVIDE(__stop_log_backends = .);
53*0138fcaeSMatthias Ringwald  } > FLASH
54*0138fcaeSMatthias Ringwald    .nrf_balloc :
55*0138fcaeSMatthias Ringwald  {
56*0138fcaeSMatthias Ringwald    PROVIDE(__start_nrf_balloc = .);
57*0138fcaeSMatthias Ringwald    KEEP(*(.nrf_balloc))
58*0138fcaeSMatthias Ringwald    PROVIDE(__stop_nrf_balloc = .);
59*0138fcaeSMatthias Ringwald  } > FLASH
60*0138fcaeSMatthias Ringwald
61*0138fcaeSMatthias Ringwald} INSERT AFTER .text
62*0138fcaeSMatthias Ringwald
63*0138fcaeSMatthias Ringwald
64*0138fcaeSMatthias RingwaldINCLUDE "nrf_common.ld"
65