1*10465441SEvalZero /* 2*10465441SEvalZero * Copyright (c) 2006-2018, RT-Thread Development Team 3*10465441SEvalZero * 4*10465441SEvalZero * SPDX-License-Identifier: Apache-2.0 5*10465441SEvalZero * 6*10465441SEvalZero * Change Logs: 7*10465441SEvalZero * Date Author Notes 8*10465441SEvalZero * 2010-03-22 Bernard first version 9*10465441SEvalZero */ 10*10465441SEvalZero 11*10465441SEvalZero #include <rtthread.h> 12*10465441SEvalZero 13*10465441SEvalZero #ifdef RT_USING_FINSH 14*10465441SEvalZero 15*10465441SEvalZero #include "finsh.h" 16*10465441SEvalZero 17*10465441SEvalZero long hello(void); 18*10465441SEvalZero long version(void); 19*10465441SEvalZero long list(void); 20*10465441SEvalZero long list_thread(void); 21*10465441SEvalZero long list_sem(void); 22*10465441SEvalZero long list_mutex(void); 23*10465441SEvalZero long list_fevent(void); 24*10465441SEvalZero long list_event(void); 25*10465441SEvalZero long list_mailbox(void); 26*10465441SEvalZero long list_msgqueue(void); 27*10465441SEvalZero long list_mempool(void); 28*10465441SEvalZero long list_timer(void); 29*10465441SEvalZero 30*10465441SEvalZero #ifdef FINSH_USING_SYMTAB 31*10465441SEvalZero struct finsh_syscall *_syscall_table_begin = NULL; 32*10465441SEvalZero struct finsh_syscall *_syscall_table_end = NULL; 33*10465441SEvalZero struct finsh_sysvar *_sysvar_table_begin = NULL; 34*10465441SEvalZero struct finsh_sysvar *_sysvar_table_end = NULL; 35*10465441SEvalZero #else 36*10465441SEvalZero struct finsh_syscall _syscall_table[] = 37*10465441SEvalZero { 38*10465441SEvalZero {"hello", hello}, 39*10465441SEvalZero {"version", version}, 40*10465441SEvalZero {"list", list}, 41*10465441SEvalZero {"list_thread", list_thread}, 42*10465441SEvalZero #ifdef RT_USING_SEMAPHORE 43*10465441SEvalZero {"list_sem", list_sem}, 44*10465441SEvalZero #endif 45*10465441SEvalZero #ifdef RT_USING_MUTEX 46*10465441SEvalZero {"list_mutex", list_mutex}, 47*10465441SEvalZero #endif 48*10465441SEvalZero #ifdef RT_USING_FEVENT 49*10465441SEvalZero {"list_fevent", list_fevent}, 50*10465441SEvalZero #endif 51*10465441SEvalZero #ifdef RT_USING_EVENT 52*10465441SEvalZero {"list_event", list_event}, 53*10465441SEvalZero #endif 54*10465441SEvalZero #ifdef RT_USING_MAILBOX 55*10465441SEvalZero {"list_mb", list_mailbox}, 56*10465441SEvalZero #endif 57*10465441SEvalZero #ifdef RT_USING_MESSAGEQUEUE 58*10465441SEvalZero {"list_mq", list_msgqueue}, 59*10465441SEvalZero #endif 60*10465441SEvalZero #ifdef RT_USING_MEMPOOL 61*10465441SEvalZero {"list_memp", list_mempool}, 62*10465441SEvalZero #endif 63*10465441SEvalZero {"list_timer", list_timer}, 64*10465441SEvalZero }; 65*10465441SEvalZero struct finsh_syscall *_syscall_table_begin = &_syscall_table[0]; 66*10465441SEvalZero struct finsh_syscall *_syscall_table_end = &_syscall_table[sizeof(_syscall_table) / sizeof(struct finsh_syscall)]; 67*10465441SEvalZero 68*10465441SEvalZero struct finsh_sysvar *_sysvar_table_begin = NULL; 69*10465441SEvalZero struct finsh_sysvar *_sysvar_table_end = NULL; 70*10465441SEvalZero #endif 71*10465441SEvalZero 72*10465441SEvalZero #endif /* RT_USING_FINSH */ 73*10465441SEvalZero 74