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 32
65 #define RT_CPUS_NR 1
66 #define RT_ALIGN_SIZE 8
67 #define RT_THREAD_PRIORITY_256
68 #define RT_THREAD_PRIORITY_MAX 256
69 #define RT_TICK_PER_SECOND 100
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 1024
76 #define RT_USING_TIMER_SOFT
77 #define RT_TIMER_THREAD_PRIO 8
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_SLAB
101 #define RT_USING_SLAB_AS_HEAP
102 #define RT_USING_HEAP
103 /* end of Memory Management */
104 #define RT_USING_DEVICE
105 #define RT_USING_INTERRUPT_INFO
106 #define RT_USING_CONSOLE
107 #define RT_CONSOLEBUF_SIZE 1024
108 #define RT_CONSOLE_DEVICE_NAME "uart0"
109 #define RT_VER_NUM 0x50201
110 #define RT_BACKTRACE_LEVEL_MAX_NR 32
111 /* end of RT-Thread Kernel */
112 
113 /* RT-Thread Components */
114 
115 #define RT_USING_COMPONENTS_INIT
116 #define RT_USING_USER_MAIN
117 #define RT_MAIN_THREAD_STACK_SIZE 2048
118 #define RT_MAIN_THREAD_PRIORITY 10
119 #define RT_USING_MSH
120 #define RT_USING_FINSH
121 #define FINSH_USING_MSH
122 #define FINSH_THREAD_NAME "tshell"
123 #define FINSH_THREAD_PRIORITY 20
124 #define FINSH_THREAD_STACK_SIZE 4096
125 #define FINSH_USING_HISTORY
126 #define FINSH_HISTORY_LINES 5
127 #define FINSH_USING_SYMTAB
128 #define FINSH_CMD_SIZE 80
129 #define MSH_USING_BUILT_IN_COMMANDS
130 #define FINSH_USING_DESCRIPTION
131 #define FINSH_ARG_MAX 10
132 #define FINSH_USING_OPTION_COMPLETION
133 
134 /* DFS: device virtual file system */
135 
136 #define RT_USING_DFS
137 #define DFS_USING_POSIX
138 #define DFS_USING_WORKDIR
139 #define DFS_FD_MAX 16
140 #define RT_USING_DFS_V1
141 #define DFS_FILESYSTEMS_MAX 4
142 #define DFS_FILESYSTEM_TYPES_MAX 4
143 #define RT_USING_DFS_ELMFAT
144 
145 /* elm-chan's FatFs, Generic FAT Filesystem Module */
146 
147 #define RT_DFS_ELM_CODE_PAGE 936
148 #define RT_DFS_ELM_WORD_ACCESS
149 #define RT_DFS_ELM_USE_LFN_3
150 #define RT_DFS_ELM_USE_LFN 3
151 #define RT_DFS_ELM_LFN_UNICODE_0
152 #define RT_DFS_ELM_LFN_UNICODE 0
153 #define RT_DFS_ELM_MAX_LFN 128
154 #define RT_DFS_ELM_DRIVES 2
155 #define RT_DFS_ELM_MAX_SECTOR_SIZE 512
156 #define RT_DFS_ELM_REENTRANT
157 #define RT_DFS_ELM_MUTEX_TIMEOUT 3000
158 /* end of elm-chan's FatFs, Generic FAT Filesystem Module */
159 #define RT_USING_DFS_DEVFS
160 #define RT_USING_DFS_NFS
161 #define RT_NFS_HOST_EXPORT "192.168.1.5:/"
162 /* end of DFS: device virtual file system */
163 
164 /* Device Drivers */
165 
166 #define RT_USING_DEVICE_IPC
167 #define RT_UNAMED_PIPE_NUMBER 64
168 #define RT_USING_SERIAL
169 #define RT_USING_SERIAL_V1
170 #define RT_SERIAL_USING_DMA
171 #define RT_SERIAL_RB_BUFSZ 64
172 #define RT_USING_I2C
173 #define RT_USING_I2C_BITOPS
174 #define RT_USING_SDIO
175 #define RT_SDIO_STACK_SIZE 512
176 #define RT_SDIO_THREAD_PRIORITY 15
177 #define RT_MMCSD_STACK_SIZE 1024
178 #define RT_MMCSD_THREAD_PRIORITY 22
179 #define RT_MMCSD_MAX_PARTITION 16
180 #define RT_USING_SPI
181 #define RT_USING_BLK
182 
183 /* Partition Types */
184 
185 #define RT_BLK_PARTITION_DFS
186 #define RT_BLK_PARTITION_EFI
187 /* end of Partition Types */
188 #define RT_USING_PIN
189 #define RT_USING_KTIME
190 /* end of Device Drivers */
191 
192 /* C/C++ and POSIX layer */
193 
194 /* ISO-ANSI C layer */
195 
196 /* Timezone and Daylight Saving Time */
197 
198 #define RT_LIBC_USING_LIGHT_TZ_DST
199 #define RT_LIBC_TZ_DEFAULT_HOUR 8
200 #define RT_LIBC_TZ_DEFAULT_MIN 0
201 #define RT_LIBC_TZ_DEFAULT_SEC 0
202 /* end of Timezone and Daylight Saving Time */
203 /* end of ISO-ANSI C layer */
204 
205 /* POSIX (Portable Operating System Interface) layer */
206 
207 #define RT_USING_POSIX_DELAY
208 #define RT_USING_POSIX_CLOCK
209 #define RT_USING_PTHREADS
210 #define PTHREAD_NUM_MAX 8
211 #define RT_USING_MODULE
212 
213 /* Interprocess Communication (IPC) */
214 
215 
216 /* Socket is in the 'Network' category */
217 
218 /* end of Interprocess Communication (IPC) */
219 /* end of POSIX (Portable Operating System Interface) layer */
220 /* end of C/C++ and POSIX layer */
221 
222 /* Network */
223 
224 #define NETDEV_USING_PING
225 #define RT_USING_LWIP
226 #define RT_USING_LWIP203
227 #define RT_USING_LWIP_VER_NUM 0x20003
228 #define RT_LWIP_MEM_ALIGNMENT 4
229 #define RT_LWIP_IGMP
230 #define RT_LWIP_ICMP
231 #define RT_LWIP_DNS
232 #define RT_LWIP_DHCP
233 #define IP_SOF_BROADCAST 1
234 #define IP_SOF_BROADCAST_RECV 1
235 
236 /* Static IPv4 Address */
237 
238 #define RT_LWIP_IPADDR "192.168.1.30"
239 #define RT_LWIP_GWADDR "192.168.1.1"
240 #define RT_LWIP_MSKADDR "255.255.255.0"
241 /* end of Static IPv4 Address */
242 #define RT_LWIP_UDP
243 #define RT_LWIP_TCP
244 #define RT_LWIP_RAW
245 #define RT_MEMP_NUM_NETCONN 8
246 #define RT_LWIP_PBUF_NUM 16
247 #define RT_LWIP_RAW_PCB_NUM 4
248 #define RT_LWIP_UDP_PCB_NUM 8
249 #define RT_LWIP_TCP_PCB_NUM 32
250 #define RT_LWIP_TCP_SEG_NUM 40
251 #define RT_LWIP_TCP_SND_BUF 8196
252 #define RT_LWIP_TCP_WND 8196
253 #define RT_LWIP_TCPTHREAD_PRIORITY 128
254 #define RT_LWIP_TCPTHREAD_MBOX_SIZE 32
255 #define RT_LWIP_TCPTHREAD_STACKSIZE 4096
256 #define RT_LWIP_ETHTHREAD_PRIORITY 144
257 #define RT_LWIP_ETHTHREAD_STACKSIZE 1024
258 #define RT_LWIP_ETHTHREAD_MBOX_SIZE 32
259 #define LWIP_NETIF_STATUS_CALLBACK 1
260 #define LWIP_NETIF_LINK_CALLBACK 1
261 #define RT_LWIP_NETIF_NAMESIZE 6
262 #define SO_REUSE 1
263 #define LWIP_SO_RCVTIMEO 1
264 #define LWIP_SO_SNDTIMEO 1
265 #define LWIP_SO_RCVBUF 1
266 #define LWIP_SO_LINGER 0
267 #define LWIP_NETIF_LOOPBACK 0
268 #define RT_LWIP_USING_PING
269 /* end of Network */
270 
271 /* Memory protection */
272 
273 /* end of Memory protection */
274 
275 /* Utilities */
276 
277 /* end of Utilities */
278 
279 /* Using USB legacy version */
280 
281 /* end of Using USB legacy version */
282 /* end of RT-Thread Components */
283 
284 /* RT-Thread Utestcases */
285 
286 /* end of RT-Thread Utestcases */
287 
288 /* RT-Thread online packages */
289 
290 /* IoT - internet of things */
291 
292 
293 /* Wi-Fi */
294 
295 /* Marvell WiFi */
296 
297 /* end of Marvell WiFi */
298 
299 /* Wiced WiFi */
300 
301 /* end of Wiced WiFi */
302 
303 /* CYW43012 WiFi */
304 
305 /* end of CYW43012 WiFi */
306 
307 /* BL808 WiFi */
308 
309 /* end of BL808 WiFi */
310 
311 /* CYW43439 WiFi */
312 
313 /* end of CYW43439 WiFi */
314 /* end of Wi-Fi */
315 
316 /* IoT Cloud */
317 
318 /* end of IoT Cloud */
319 /* end of IoT - internet of things */
320 
321 /* security packages */
322 
323 /* end of security packages */
324 
325 /* language packages */
326 
327 /* JSON: JavaScript Object Notation, a lightweight data-interchange format */
328 
329 /* end of JSON: JavaScript Object Notation, a lightweight data-interchange format */
330 
331 /* XML: Extensible Markup Language */
332 
333 /* end of XML: Extensible Markup Language */
334 /* end of language packages */
335 
336 /* multimedia packages */
337 
338 /* LVGL: powerful and easy-to-use embedded GUI library */
339 
340 /* end of LVGL: powerful and easy-to-use embedded GUI library */
341 
342 /* u8g2: a monochrome graphic library */
343 
344 /* end of u8g2: a monochrome graphic library */
345 /* end of multimedia packages */
346 
347 /* tools packages */
348 
349 /* end of tools packages */
350 
351 /* system packages */
352 
353 /* enhanced kernel services */
354 
355 /* end of enhanced kernel services */
356 
357 /* acceleration: Assembly language or algorithmic acceleration packages */
358 
359 /* end of acceleration: Assembly language or algorithmic acceleration packages */
360 
361 /* CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
362 
363 /* end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */
364 
365 /* Micrium: Micrium software products porting for RT-Thread */
366 
367 /* end of Micrium: Micrium software products porting for RT-Thread */
368 /* end of system packages */
369 
370 /* peripheral libraries and drivers */
371 
372 /* HAL & SDK Drivers */
373 
374 /* STM32 HAL & SDK Drivers */
375 
376 /* end of STM32 HAL & SDK Drivers */
377 
378 /* Infineon HAL Packages */
379 
380 /* end of Infineon HAL Packages */
381 
382 /* Kendryte SDK */
383 
384 /* end of Kendryte SDK */
385 
386 /* WCH HAL & SDK Drivers */
387 
388 /* end of WCH HAL & SDK Drivers */
389 
390 /* AT32 HAL & SDK Drivers */
391 
392 /* end of AT32 HAL & SDK Drivers */
393 
394 /* HC32 DDL Drivers */
395 
396 /* end of HC32 DDL Drivers */
397 
398 /* NXP HAL & SDK Drivers */
399 
400 /* end of NXP HAL & SDK Drivers */
401 /* end of HAL & SDK Drivers */
402 
403 /* sensors drivers */
404 
405 /* end of sensors drivers */
406 
407 /* touch drivers */
408 
409 /* end of touch drivers */
410 /* end of peripheral libraries and drivers */
411 
412 /* AI packages */
413 
414 /* end of AI packages */
415 
416 /* Signal Processing and Control Algorithm Packages */
417 
418 /* end of Signal Processing and Control Algorithm Packages */
419 
420 /* miscellaneous packages */
421 
422 /* project laboratory */
423 
424 /* end of project laboratory */
425 
426 /* samples: kernel and components samples */
427 
428 /* end of samples: kernel and components samples */
429 
430 /* entertainment: terminal games and other interesting software packages */
431 
432 /* end of entertainment: terminal games and other interesting software packages */
433 /* end of miscellaneous packages */
434 
435 /* Arduino libraries */
436 
437 
438 /* Projects and Demos */
439 
440 /* end of Projects and Demos */
441 
442 /* Sensors */
443 
444 /* end of Sensors */
445 
446 /* Display */
447 
448 /* end of Display */
449 
450 /* Timing */
451 
452 /* end of Timing */
453 
454 /* Data Processing */
455 
456 /* end of Data Processing */
457 
458 /* Data Storage */
459 
460 /* Communication */
461 
462 /* end of Communication */
463 
464 /* Device Control */
465 
466 /* end of Device Control */
467 
468 /* Other */
469 
470 /* end of Other */
471 
472 /* Signal IO */
473 
474 /* end of Signal IO */
475 
476 /* Uncategorized */
477 
478 /* end of Arduino libraries */
479 /* end of RT-Thread online packages */
480 #define SOC_DM365
481 
482 /* BSP configure */
483 
484 #define RT_USING_GPIO_DEVICE
485 #define RT_USING_I2C_CONTROL
486 #define RT_USING_SDIO_CONTROL
487 #define RT_USING_SPI_CONTROL
488 #define RT_USING_EMAC
489 #define RT_MMU_PTE_SIZE 4096
490 
491 #endif
492