Hallo,
wie macht ihr das?
Ich habe ein System mit zwischen mehreren Prozessoren geteiltem DDR-Ram
(Cortex-A, Cortex-R, Cortex-M) und Tightly Coupled Memory Sections.
1 | SECTIONS
|
2 | {
|
3 | .xyz :
|
4 | {
|
5 | irgendwas
|
6 | } > DDR_RAM
|
7 |
|
8 | copy_symbol_0 = ALIGN(4);
|
9 | .wtz : AT(copy_symbol_0)
|
10 | {
|
11 | irgendwas
|
12 | } > ITCM_low /* AT > DDR_RAM */
|
13 |
|
14 | copy_symbol_1 = copy_symbol_0 + SIZEOF(.wtz);
|
15 | .zrt : AT(copy_symbol_1)
|
16 | {
|
17 | irgendwas
|
18 | } > ITCM_high /* AT > DDR_RAM */
|
19 | }
|
-> und so weiter
Ein .DDR_RAM wäre doch schön.
Am liebsten hätte ich ja so etwas: ... .ADR(DDR_RAM) gibt mal
hypotetisch die aktuelle Vergabe Adresse DDR_RAM zurück.
1 | SECTIONS
|
2 | {
|
3 |
|
4 | .xyz :
|
5 | {
|
6 | irgendwas
|
7 | } > DDR_RAM
|
8 |
|
9 | .ADR(DDR_RAM) = ALIGN(.ADR(DDR_RAM), 4);
|
10 | copy_symbol_0 = .ADR(DDR_RAM)
|
11 | .wtz :
|
12 | {
|
13 | irgendwas
|
14 | } > ITCM_low AT > DDR_RAM
|
15 |
|
16 | .ADR(DDR_RAM) = ALIGN(.ADR(DDR_RAM), 4);
|
17 | copy_symbol_1 = .ADR(DDR_RAM)
|
18 | .zrt :
|
19 | {
|
20 | irgendwas
|
21 | } > ITCM_high AT > DDR_RAM
|
22 | }
|
Irgendwie wäre es ja schon praktisch, wenn man den Wert von "." für
jedes MEMORY direkt abgreifen könnte.
Mein Problem ist, dass Linker File wird zukünftig von Personen
modifiziert die !noch! weniger Ahnung haben als ich. Daher überlege ich
wie ich die Fehleranfälligkeit so gering wie möglich halte, damit ich
nicht ständig Support Anfragen bekomme.