@@ -24,29 +24,29 @@ The wolfssl Project Summary is listed below and is relevant for every project.
24
24
| Board| EK-RA6M4|
25
25
| Device| R7FA6M4AF3CFB|
26
26
| Toolchain| GCC ARM Embedded|
27
- | FSP Version| 5.4 .0|
27
+ | FSP Version| 6.1 .0|
28
28
29
29
#### Selected software components
30
30
31
31
| Components| Version|
32
32
| :--| :--|
33
- | Board Support Package Common Files| v5.4 .0|
34
- | Secure Cryptography Engine on RA6 Protected Mode| v5.4 .0|
35
- | I/O Port| v5.4 .0|
36
- | Arm CMSIS Version 5 - Core (M)| v6.1.0+fsp.5.4 .0|
37
- | RA6M4-EK Board Support Files| v5.4 .0|
38
- | Board support package for R7FA6M4AF3CFB| v5.4 .0|
39
- | Board support package for RA6M4 - Events| v5.4 .0|
40
- | Board support package for RA6M4| v5.4 .0|
41
- | Board support package for RA6M4 - FSP Data| v5.4 .0|
42
- | FreeRTOS| v10.6.1 +fsp.5.4 .0|
43
- | FreeRTOS - Memory Management - Heap 4| v10.6.1 +fsp.5.4 .0|
44
- | r_ether to FreeRTOS+TCP Wrapper| v5.4 .0|
45
- | Ethernet| v5.4 .0|
46
- | Ethernet PHY| v5.4 .0|
47
- | FreeRTOS+TCP| v4.0.0 +fsp.5.4 .0|
48
- | FreeRTOS - Buffer Allocation 2| v4.0.0 +fsp.5.4 .0|
49
- | FreeRTOS Port| v5.4 .0|
33
+ | Board Support Package Common Files| v6.1 .0|
34
+ | Secure Cryptography Engine on RA6 Protected Mode| v6.1 .0|
35
+ | I/O Port| v6.1 .0|
36
+ | Arm CMSIS Version 5 - Core (M)| v6.1.0+fsp.6.1 .0|
37
+ | RA6M4-EK Board Support Files| v6.1 .0|
38
+ | Board support package for R7FA6M4AF3CFB| v6.1 .0|
39
+ | Board support package for RA6M4 - Events| v6.1 .0|
40
+ | Board support package for RA6M4| v6.1 .0|
41
+ | Board support package for RA6M4 - FSP Data| v6.1 .0|
42
+ | FreeRTOS| v11.1.0 +fsp.6.1 .0|
43
+ | FreeRTOS - Memory Management - Heap 4| v11.1.0 +fsp.6.1 .0|
44
+ | r_ether to FreeRTOS+TCP Wrapper| v6.1 .0|
45
+ | Ethernet| v6.1 .0|
46
+ | Ethernet PHY| v6.1 .0|
47
+ | FreeRTOS+TCP| v4.3.3 +fsp.6.1 .0|
48
+ | FreeRTOS - Buffer Allocation 2| v4.3.3 +fsp.6.1 .0|
49
+ | FreeRTOS Port| v6.1 .0|
50
50
51
51
## Setup Steps and Build wolfSSL Library
52
52
@@ -58,10 +58,11 @@ The wolfssl Project Summary is listed below and is relevant for every project.
58
58
59
59
2.) Create a ` dummy_library ` Static Library.
60
60
61
- + Click File->New->` RA C/C++ Project ` .
62
- + Select ` EK-RA6M4 ` from Drop-down list.
63
- + Check ` Static Library ` .
64
- + Select FreeRTOS from RTOS selection. Click Next.
61
+ + Click File->New->` RA C/C++ Project ` . Select ` EK-RA6M4 ` from Drop-down list.
62
+ + Select ` Flat(Non-TrustZone) Project ` . Click Next.
63
+ + Select ` None ` . Click Next.
64
+ + Check ` Static Library ` . Click Next.
65
+ + Select ` FreeRTOS ` from RTOS selection. Click Next.
65
66
+ Check ` FreeRTOS minimal - Static Allocation ` . Click Finish.
66
67
+ Open Smart Configurator by clicking configuration.xml in the project
67
68
+ Go to ` BSP ` tab and increase Heap Size under ` RA Common ` on Properties page, e.g. 0x1000
@@ -82,7 +83,8 @@ The wolfssl Project Summary is listed below and is relevant for every project.
82
83
83
84
+ Add ` Heap 4 ` stack to sce_tst_thread from ` New Stack ` -> ` RTOS ` -> ` FreeRTOS Heap 4 `
84
85
+ Add ` FreeRTOS + TCP ` stack to sce_tst_thread from ` New Stack ` -> ` Networking ` -> ` FreeRTOS+TCP ` and set properties
85
-
86
+ + Add Ethernet Driver by clicking ` Add Ethernet Driver ` element and select ` New ` -> ` Ethernet(r_ether) `
87
+ + Increase Heap size of ` RA Common ` . Go to ` BSP ` tab and inclease ` RA Common ` -> ` Heap size (bytes) ` to 0x2000
86
88
| Property| Value|
87
89
| :--| :--|
88
90
| Network Events call vApplicationIPNetworkEventHook| Disable|
@@ -97,15 +99,15 @@ The wolfssl Project Summary is listed below and is relevant for every project.
97
99
98
100
4.) Create a 'dummy_application' Renesas RA C Project Using RA Library.
99
101
100
- + Click File->New->` RA C/C++ Project ` .
101
- + Select ` EK-RA6M4 ` from Drop-down list.
102
- + Check ` Executable Using an RA Static Library ` .
103
- + Select FreeRTOS from RTOS selection. Click Finish.
102
+ + Click File->New->` RA C/C++ Project ` . Select ` EK-RA6M4 ` from Drop-down list. Click Next.
103
+ + Select ` Flat(Non-TrustZone) Project ` . Click Next
104
+ + Select ` None ` . Click Next
105
+ + Check ` Executable Using an RA Static Library ` . Select FreeRTOS from RTOS selection. Click Finish.
104
106
+ Enter ` dummy_application ` as the project name. Click Next.
105
- + Under ` RA library project ` , select ` wolfSSL_RA6M4 ` .
106
- + Click Finish.
107
+ + Under ` RA library project ` , select ` wolfSSL_RA6M4 ` . Click Finish.
107
108
+ Copy the following folder and file at ` dummy_application ` to ` test_RA6M4 ` \
108
109
script/\
110
+ Debug/\
109
111
src/sce_tst_thread_entry.c
110
112
111
113
+ Add ` sce_test() ` call under /* TODO: add your own code here * / line at sce_tst_thread_entry.c
@@ -131,29 +133,33 @@ The wolfssl Project Summary is listed below and is relevant for every project.
131
133
+ To place RTT block specific area, you can add the following line to ` fsp.ld ` :
132
134
133
135
```
134
- .bss :
136
+ __ram_from_flash$$ :
135
137
{
136
- . = ALIGN(4);
137
- __bss_start__ = .;
138
- *(.bss*)
139
- *(COMMON)
140
- KEEP(*(.rtt_block)) /* <-- for SEGGER_RTT control block */
141
- . = ALIGN(4);
142
- __bss_end__ = .;
143
- } > RAM
138
+ __ram_from_flash$$Base = .;__ram_from_flash$$Load = LOADADDR(__ram_from_flash$$);
139
+ /* section.ram.from_flash */
140
+ *(.ram_from_flash)
141
+ /* section.ram.code_from_flash */
142
+ *(.txt.rtt_block) /* <-- for SEGGER_RTT control block */
143
+ *(.ram_code_from_flash)
144
+ *(.data*)
145
+ *(vtable)
146
+ __ram_from_flash$$Limit = .;
147
+ }> RAM AT > FLASH
144
148
```
145
149
Also, adding the following line to ` SEGGER_RTT.c ` :
146
150
147
151
```
148
- SEGGER_RTT_CB _SEGGER_RTT __attribute__((section(".rtt_block")));
152
+ SEGGER_RTT_CB _SEGGER_RTT __attribute__((section(".txt. rtt_block")));
149
153
```
150
154
151
155
As the result, you can find the following similar line in the map file.
152
156
e.g.
153
157
[ test_RA6M4.map]
154
158
```
155
- .rtt_block 0x20023648 0xa8 ./src/SEGGER_RTT/SEGGER_RTT.o
156
- 0x20023648 _SEGGER_RTT
159
+ *(.txt.rtt_block)
160
+ .txt.rtt_block
161
+ 0x20000000 0xa8 ./src/SEGGER_RTT/SEGGER_RTT.o
162
+ 0x20000000 _SEGGER_RTT
157
163
````
158
164
you can specify "RTT control block" to 0x20023648 by Address
159
165
OR
0 commit comments