1 #ifndef RT_CONFIG_H__
2 #define RT_CONFIG_H__
3 
4 /* RT-Thread Kernel */
5 
6 /* klibc options */
7 
8 /* rt_vsnprintf options */
9 
10 /* end of rt_vsnprintf options */
11 
12 /* rt_vsscanf options */
13 
14 /* end of rt_vsscanf options */
15 
16 /* rt_memset options */
17 
18 /* end of rt_memset options */
19 
20 /* rt_memcpy options */
21 
22 /* end of rt_memcpy options */
23 
24 /* rt_memmove options */
25 
26 /* end of rt_memmove options */
27 
28 /* rt_memcmp options */
29 
30 /* end of rt_memcmp options */
31 
32 /* rt_strstr options */
33 
34 /* end of rt_strstr options */
35 
36 /* rt_strcasecmp options */
37 
38 /* end of rt_strcasecmp options */
39 
40 /* rt_strncpy options */
41 
42 /* end of rt_strncpy options */
43 
44 /* rt_strcpy options */
45 
46 /* end of rt_strcpy options */
47 
48 /* rt_strncmp options */
49 
50 /* end of rt_strncmp options */
51 
52 /* rt_strcmp options */
53 
54 /* end of rt_strcmp options */
55 
56 /* rt_strlen options */
57 
58 /* end of rt_strlen options */
59 
60 /* rt_strnlen options */
61 
62 /* end of rt_strnlen options */
63 /* end of klibc options */
64 #define RT_NAME_MAX 8
65 #define RT_CPUS_NR 1
66 #define RT_ALIGN_SIZE 8
67 #define RT_THREAD_PRIORITY_32
68 #define RT_THREAD_PRIORITY_MAX 32
69 #define RT_TICK_PER_SECOND 1000
70 #define RT_USING_OVERFLOW_CHECK
71 #define RT_USING_HOOK
72 #define RT_HOOK_USING_FUNC_PTR
73 #define RT_USING_IDLE_HOOK
74 #define RT_IDLE_HOOK_LIST_SIZE 4
75 #define IDLE_THREAD_STACK_SIZE 256
76 #define RT_USING_TIMER_SOFT
77 #define RT_TIMER_THREAD_PRIO 4
78 #define RT_TIMER_THREAD_STACK_SIZE 512
79 
80 /* kservice options */
81 
82 /* end of kservice options */
83 #define RT_USING_DEBUG
84 #define RT_DEBUGING_ASSERT
85 #define RT_DEBUGING_COLOR
86 #define RT_DEBUGING_CONTEXT
87 
88 /* Inter-Thread communication */
89 
90 #define RT_USING_SEMAPHORE
91 #define RT_USING_MUTEX
92 #define RT_USING_EVENT
93 #define RT_USING_MAILBOX
94 #define RT_USING_MESSAGEQUEUE
95 /* end of Inter-Thread communication */
96 
97 /* Memory Management */
98 
99 #define RT_USING_MEMPOOL
100 #define RT_USING_SMALL_MEM
101 #define RT_USING_SMALL_MEM_AS_HEAP
102 #define RT_USING_HEAP
103 /* end of Memory Management */
104 #define RT_USING_DEVICE
105 #define RT_USING_CONSOLE
106 #define RT_CONSOLEBUF_SIZE 128
107 #define RT_CONSOLE_DEVICE_NAME "uart0"
108 #define RT_VER_NUM 0x50201
109 #define RT_BACKTRACE_LEVEL_MAX_NR 32
110 /* end of RT-Thread Kernel */
111 #define RT_USING_HW_ATOMIC
112 #define RT_USING_CPU_FFS
113 #define ARCH_ARM
114 #define ARCH_ARM_CORTEX_M
115 #define ARCH_ARM_CORTEX_M4
116 
117 /* RT-Thread Components */
118 
119 #define RT_USING_COMPONENTS_INIT
120 #define RT_USING_USER_MAIN
121 #define RT_MAIN_THREAD_STACK_SIZE 2048
122 #define RT_MAIN_THREAD_PRIORITY 10
123 #define RT_USING_MSH
124 #define RT_USING_FINSH
125 #define FINSH_USING_MSH
126 #define FINSH_THREAD_NAME "tshell"
127 #define FINSH_THREAD_PRIORITY 20
128 #define FINSH_THREAD_STACK_SIZE 4096
129 #define FINSH_USING_HISTORY
130 #define FINSH_HISTORY_LINES 5
131 #define FINSH_USING_SYMTAB
132 #define FINSH_CMD_SIZE 80
133 #define MSH_USING_BUILT_IN_COMMANDS
134 #define FINSH_USING_DESCRIPTION
135 #define FINSH_ARG_MAX 10
136 #define FINSH_USING_OPTION_COMPLETION
137 
138 /* DFS: device virtual file system */
139 
140 #define RT_USING_DFS
141 #define DFS_USING_POSIX
142 #define DFS_USING_WORKDIR
143 #define DFS_FD_MAX 16
144 #define RT_USING_DFS_V1
145 #define DFS_FILESYSTEMS_MAX 4
146 #define DFS_FILESYSTEM_TYPES_MAX 4
147 #define RT_USING_DFS_DEVFS
148 /* end of DFS: device virtual file system */
149 
150 /* Device Drivers */
151 
152 #define RT_USING_DEVICE_IPC
153 #define RT_UNAMED_PIPE_NUMBER 64
154 #define RT_USING_SYSTEM_WORKQUEUE
155 #define RT_SYSTEM_WORKQUEUE_STACKSIZE 2048
156 #define RT_SYSTEM_WORKQUEUE_PRIORITY 23
157 #define RT_USING_SERIAL
158 #define RT_USING_SERIAL_V1
159 #define RT_SERIAL_USING_DMA
160 #define RT_SERIAL_RB_BUFSZ 64
161 #define RT_USING_I2C
162 #define RT_USING_RTC
163 #define RT_USING_KTIME
164 /* end of Device Drivers */
165 
166 /* C/C++ and POSIX layer */
167 
168 /* ISO-ANSI C layer */
169 
170 /* Timezone and Daylight Saving Time */
171 
172 #define RT_LIBC_USING_LIGHT_TZ_DST
173 #define RT_LIBC_TZ_DEFAULT_HOUR 8
174 #define RT_LIBC_TZ_DEFAULT_MIN 0
175 #define RT_LIBC_TZ_DEFAULT_SEC 0
176 /* end of Timezone and Daylight Saving Time */
177 /* end of ISO-ANSI C layer */
178 
179 /* POSIX (Portable Operating System Interface) layer */
180 
181 #define RT_USING_POSIX_FS
182 #define RT_USING_POSIX_DEVIO
183 #define RT_USING_POSIX_POLL
184 #define RT_USING_POSIX_SELECT
185 #define RT_USING_POSIX_SOCKET
186 #define RT_USING_POSIX_AIO
187 #define RT_USING_POSIX_DELAY
188 #define RT_USING_POSIX_CLOCK
189 #define RT_USING_POSIX_TIMER
190 #define RT_USING_PTHREADS
191 #define PTHREAD_NUM_MAX 8
192 
193 /* Interprocess Communication (IPC) */
194 
195 
196 /* Socket is in the 'Network' category */
197 
198 /* end of Interprocess Communication (IPC) */
199 /* end of POSIX (Portable Operating System Interface) layer */
200 /* end of C/C++ and POSIX layer */
201 
202 /* Network */
203 
204 #define RT_USING_SAL
205 #define SAL_INTERNET_CHECK
206 
207 /* Docking with protocol stacks */
208 
209 #define SAL_USING_LWIP
210 /* end of Docking with protocol stacks */
211 #define SAL_USING_POSIX
212 #define RT_USING_NETDEV
213 #define NETDEV_USING_IFCONFIG
214 #define NETDEV_USING_PING
215 #define NETDEV_USING_NETSTAT
216 #define NETDEV_USING_AUTO_DEFAULT
217 #define NETDEV_IPV4 1
218 #define NETDEV_IPV6 0
219 #define RT_USING_LWIP
220 #define RT_USING_LWIP_LOCAL_VERSION
221 #define RT_USING_LWIP212
222 #define RT_USING_LWIP_VER_NUM 0x20102
223 #define RT_LWIP_MEM_ALIGNMENT 4
224 #define RT_LWIP_IGMP
225 #define RT_LWIP_ICMP
226 #define RT_LWIP_DNS
227 #define RT_LWIP_DHCP
228 #define IP_SOF_BROADCAST 1
229 #define IP_SOF_BROADCAST_RECV 1
230 
231 /* Static IPv4 Address */
232 
233 #define RT_LWIP_IPADDR "192.168.1.30"
234 #define RT_LWIP_GWADDR "192.168.1.1"
235 #define RT_LWIP_MSKADDR "255.255.255.0"
236 /* end of Static IPv4 Address */
237 #define RT_LWIP_UDP
238 #define RT_LWIP_TCP
239 #define RT_LWIP_RAW
240 #define RT_MEMP_NUM_NETCONN 8
241 #define RT_LWIP_PBUF_NUM 16
242 #define RT_LWIP_RAW_PCB_NUM 4
243 #define RT_LWIP_UDP_PCB_NUM 4
244 #define RT_LWIP_TCP_PCB_NUM 4
245 #define RT_LWIP_TCP_SEG_NUM 40
246 #define RT_LWIP_TCP_SND_BUF 8196
247 #define RT_LWIP_TCP_WND 8196
248 #define RT_LWIP_TCPTHREAD_PRIORITY 10
249 #define RT_LWIP_TCPTHREAD_MBOX_SIZE 8
250 #define RT_LWIP_TCPTHREAD_STACKSIZE 1024
251 #define RT_LWIP_ETHTHREAD_PRIORITY 12
252 #define RT_LWIP_ETHTHREAD_STACKSIZE 1024
253 #define RT_LWIP_ETHTHREAD_MBOX_SIZE 8
254 #define LWIP_NETIF_STATUS_CALLBACK 1
255 #define LWIP_NETIF_LINK_CALLBACK 1
256 #define RT_LWIP_NETIF_NAMESIZE 6
257 #define SO_REUSE 1
258 #define LWIP_SO_RCVTIMEO 1
259 #define LWIP_SO_SNDTIMEO 1
260 #define LWIP_SO_RCVBUF 1
261 #define LWIP_SO_LINGER 0
262 #define LWIP_NETIF_LOOPBACK 0
263 #define RT_LWIP_USING_PING
264 /* end of Network */
265 
266 /* Memory protection */
267 
268 /* end of Memory protection */
269 
270 /* Utilities */
271 
272 #define RT_USING_RESOURCE_ID
273 /* end of Utilities */
274 
275 /* Using USB legacy version */
276 
277 /* end of Using USB legacy version */
278 /* end of RT-Thread Components */
279 
280 /* RT-Thread Utestcases */
281 
282 /* end of RT-Thread Utestcases */
283 
284 /* RT-Thread online packages */
285 
286 /* IoT - internet of things */
287 
288 
289 /* Wi-Fi */
290 
291 /* Marvell WiFi */
292 
293 /* end of Marvell WiFi */
294 
295 /* Wiced WiFi */
296 
297 /* end of Wiced WiFi */
298 
299 /* CYW43012 WiFi */
300 
301 /* end of CYW43012 WiFi */
302 
303 /* BL808 WiFi */
304 
305 /* end of BL808 WiFi */
306 
307 /* CYW43439 WiFi */
308 
309 /* end of CYW43439 WiFi */
310 /* end of Wi-Fi */
311 
312 /* IoT Cloud */
313 
314 /* end of IoT Cloud */
315 /* end of IoT - internet of things */
316 
317 /* security packages */
318 
319 /* end of security packages */
320 
321 /* language packages */
322 
323 /* JSON: JavaScript Object Notation, a lightweight data-interchange format */
324 
325 /* end of JSON: JavaScript Object Notation, a lightweight data-interchange format */
326 
327 /* XML: Extensible Markup Language */
328 
329 /* end of XML: Extensible Markup Language */
330 /* end of language packages */
331 
332 /* multimedia packages */
333 
334 /* LVGL: powerful and easy-to-use embedded GUI library */
335 
336 /* end of LVGL: powerful and easy-to-use embedded GUI library */
337 
338 /* u8g2: a monochrome graphic library */
339 
340 /* end of u8g2: a monochrome graphic library */
341 /* end of multimedia packages */
342 
343 /* tools packages */
344 
345 /* end of tools packages */
346 
347 /* system packages */
348 
349 /* enhanced kernel services */
350 
351 /* end of enhanced kernel services */
352 
353 /* acceleration: Assembly language or algorithmic acceleration packages */
354 
355 /* end of acceleration: Assembly language or algorithmic acceleration packages */
356 
357 /* CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
358 
359 /* end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
360 
361 /* Micrium: Micrium software products porting for RT-Thread */
362 
363 /* end of Micrium: Micrium software products porting for RT-Thread */
364 /* end of system packages */
365 
366 /* peripheral libraries and drivers */
367 
368 /* HAL & SDK Drivers */
369 
370 /* STM32 HAL & SDK Drivers */
371 
372 /* end of STM32 HAL & SDK Drivers */
373 
374 /* Infineon HAL Packages */
375 
376 /* end of Infineon HAL Packages */
377 
378 /* Kendryte SDK */
379 
380 /* end of Kendryte SDK */
381 
382 /* WCH HAL & SDK Drivers */
383 
384 /* end of WCH HAL & SDK Drivers */
385 
386 /* AT32 HAL & SDK Drivers */
387 
388 /* end of AT32 HAL & SDK Drivers */
389 
390 /* HC32 DDL Drivers */
391 
392 /* end of HC32 DDL Drivers */
393 
394 /* NXP HAL & SDK Drivers */
395 
396 /* end of NXP HAL & SDK Drivers */
397 /* end of HAL & SDK Drivers */
398 
399 /* sensors drivers */
400 
401 /* end of sensors drivers */
402 
403 /* touch drivers */
404 
405 /* end of touch drivers */
406 /* end of peripheral libraries and drivers */
407 
408 /* AI packages */
409 
410 /* end of AI packages */
411 
412 /* Signal Processing and Control Algorithm Packages */
413 
414 /* end of Signal Processing and Control Algorithm Packages */
415 
416 /* miscellaneous packages */
417 
418 /* project laboratory */
419 
420 /* end of project laboratory */
421 
422 /* samples: kernel and components samples */
423 
424 /* end of samples: kernel and components samples */
425 
426 /* entertainment: terminal games and other interesting software packages */
427 
428 /* end of entertainment: terminal games and other interesting software packages */
429 /* end of miscellaneous packages */
430 
431 /* Arduino libraries */
432 
433 
434 /* Projects and Demos */
435 
436 /* end of Projects and Demos */
437 
438 /* Sensors */
439 
440 /* end of Sensors */
441 
442 /* Display */
443 
444 /* end of Display */
445 
446 /* Timing */
447 
448 /* end of Timing */
449 
450 /* Data Processing */
451 
452 /* end of Data Processing */
453 
454 /* Data Storage */
455 
456 /* Communication */
457 
458 /* end of Communication */
459 
460 /* Device Control */
461 
462 /* end of Device Control */
463 
464 /* Other */
465 
466 /* end of Other */
467 
468 /* Signal IO */
469 
470 /* end of Signal IO */
471 
472 /* Uncategorized */
473 
474 /* end of Arduino libraries */
475 /* end of RT-Thread online packages */
476 
477 /* Hardware Drivers Config */
478 
479 #define SOC_SAME54P20
480 /* end of Hardware Drivers Config */
481 
482 /* Onboard Peripheral Drivers */
483 
484 #define SAME5X_CAN0
485 #define SAME5X_ADC0
486 #define SAME5X_I2C0
487 #define SAME5X_GMAC
488 /* end of Onboard Peripheral Drivers */
489 
490 /* Application Demo Config */
491 
492 #define SAM_CAN_EXAMPLE
493 #define SAM_ADC_EXAMPLE
494 #define SAM_I2C_EXAMPLE
495 #define SAM_LWIP_EXAMPLE
496 /* end of Application Demo Config */
497 #define SOC_SAME54
498 
499 #endif
500