| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110 |
- /*
- * Copyright (c) 2006-2020, RT-Thread Development Team
- *
- * SPDX-License-Identifier: Apache-2.0
- *
- * Change Logs:
- * Date Author Notes
- * 2020-06-10 tyx first version.
- */
- #ifndef __KDB_SYS_H__
- #define __KDB_SYS_H__
- #include <rtthread.h>
- #ifdef __cplusplus
- extern "C" {
- #endif
- #define KDB_TYPE_PRINT (0x20)
- #define KDB_TYPE_SCHEDULER (0x10)
- #define KDB_TYPE_THREAD_SUSPEND (0x11)
- #define KDB_TYPE_THREAD_RESUME (0x12)
- #define KDB_TYPE_THREAD_INITED (0x13)
- #define KDB_TYPE_MALLOC (0x14)
- #define KDB_TYPE_FREE (0x15)
- #define KDB_TYPE_MP_ALLOC (0x16)
- #define KDB_TYPE_MP_FREE (0x17)
- #define KDB_TYPE_OBJECT_ATTACH (0x18)
- #define KDB_TYPE_OBJECT_DETACH (0x19)
- #define KDB_TYPE_OBJECT_TRYTAKE (0x1A)
- #define KDB_TYPE_OBJECT_TAKE (0x1B)
- #define KDB_TYPE_OBJECT_PUT (0x1C)
- #define KDB_TYPE_TIMER_TIMEOUT (0x1D)
- #define KDB_TYPE_INTERRUPT (0x1E)
- #define KDB_TYPE_THREAD_IDLE (0x1F)
- #ifndef KDB_SYS_BUFF_SIZE
- #define KDB_SYS_BUFF_SIZE 2048
- #endif
- #ifndef KDB_SYS_NAME_LEN
- #define KDB_SYS_NAME_LEN 4
- #endif
- #define KDB_PRINT_BUFF_SIZE 128
- struct kdb_thread_info
- {
- char name[KDB_SYS_NAME_LEN];
- };
- struct kdb_object_info
- {
- char name[KDB_SYS_NAME_LEN];
- rt_uint8_t type;
- rt_uint8_t flag;
- };
- struct kdb_mem_info
- {
- void *ptr;
- rt_size_t size;
- };
- struct kdb_memp_info
- {
- char name[KDB_SYS_NAME_LEN];
- void *ptr;
- };
- struct kdb_timer_info
- {
- char name[KDB_SYS_NAME_LEN];
- rt_uint32_t flags;
- };
- struct kdb_scheduler_info
- {
- struct kdb_thread_info from;
- struct kdb_thread_info to;
- };
- struct kdb_interrupt_info
- {
- rt_bool_t enter;
- };
- extern struct kdb sys_kdb;
- extern rt_uint8_t sys_kdb_buff[];
- void kdb_printf(const char *fmt, ...);
- void kdb_printf_output(const char *fmt, ...);
- void kdb_type_rtthread_register(void);
- int kdb_sys_init(void);
- void kdb_sys_start(void);
- void kdb_sys_stop(void);
- void kdb_sys_push(rt_uint16_t type, void *buff, rt_uint16_t len);
- void kdb_sys_dump(void);
- void kdb_sys_stop_dump(void);
- rt_uint32_t kdb_sys_ccode(void);
- int kdb_sys_isinval(void);
- #ifdef __cplusplus
- }
- #endif
- #endif
|