Mercurial > nand-ecoscentric
diff packages/kernel/current/include/instrmnt.h @ 177:4c750ce71ae3
Merge from eCos master repository on 2001-08-10-19:22:57-BST
| author | jlarmour |
|---|---|
| date | Fri, 10 Aug 2001 19:27:55 +0000 |
| parents | 6512add4f5d6 |
| children | f62680ef1804 |
line wrap: on
line diff
--- a/packages/kernel/current/include/instrmnt.h +++ b/packages/kernel/current/include/instrmnt.h @@ -104,6 +104,8 @@ externC void cyg_instrument_disable( cyg #define CYG_INSTRUMENT_CLASS_CLOCK 0x0800 #define CYG_INSTRUMENT_CLASS_ALARM 0x0900 #define CYG_INSTRUMENT_CLASS_MBOXT 0x0a00 +#define CYG_INSTRUMENT_CLASS_SMP 0x0b00 +#define CYG_INSTRUMENT_CLASS_MLQ 0x0c00 #define CYG_INSTRUMENT_CLASS_USER 0x0f00 @@ -125,6 +127,9 @@ externC void cyg_instrument_disable( cyg #define CYG_INSTRUMENT_EVENT_THREAD_DELAY 7 #define CYG_INSTRUMENT_EVENT_THREAD_ALARM 8 #define CYG_INSTRUMENT_EVENT_THREAD_ENTER 9 +#define CYG_INSTRUMENT_EVENT_THREAD_CHECK_STACK 10 +#define CYG_INSTRUMENT_EVENT_THREAD_ATTACH_STACK 11 +#define CYG_INSTRUMENT_EVENT_THREAD_CREATE 12 // Interrupt events #define CYG_INSTRUMENT_EVENT_INTR_RAISE 1 @@ -142,6 +147,8 @@ externC void cyg_instrument_disable( cyg #define CYG_INSTRUMENT_EVENT_INTR_CONFIGURE 13 #define CYG_INSTRUMENT_EVENT_INTR_ACK 14 #define CYG_INSTRUMENT_EVENT_INTR_CHAIN_ISR 15 +#define CYG_INSTRUMENT_EVENT_INTR_SET_CPU 16 +#define CYG_INSTRUMENT_EVENT_INTR_GET_CPU 17 // Mutex events #define CYG_INSTRUMENT_EVENT_MUTEX_LOCK 1 @@ -200,6 +207,27 @@ externC void cyg_instrument_disable( cyg #define CYG_INSTRUMENT_EVENT_MBOXT_TRY 6 #define CYG_INSTRUMENT_EVENT_MBOXT_PUT 7 +// SMP events +#define CYG_INSTRUMENT_EVENT_SMP_LOCK_INC 1 +#define CYG_INSTRUMENT_EVENT_SMP_LOCK_ZERO 2 +#define CYG_INSTRUMENT_EVENT_SMP_LOCK_SET 3 +#define CYG_INSTRUMENT_EVENT_SMP_CPU_START 4 +#define CYG_INSTRUMENT_EVENT_SMP_LOCK_WAIT 5 +#define CYG_INSTRUMENT_EVENT_SMP_LOCK_GOT 6 +#define CYG_INSTRUMENT_EVENT_SMP_RESCHED_SEND 8 +#define CYG_INSTRUMENT_EVENT_SMP_RESCHED_RECV 9 + +// MLQ scheduler events + +#define CYG_INSTRUMENT_EVENT_MLQ_SCHEDULE 1 +#define CYG_INSTRUMENT_EVENT_MLQ_RESCHEDULE 2 +#define CYG_INSTRUMENT_EVENT_MLQ_ADD 3 +#define CYG_INSTRUMENT_EVENT_MLQ_REM 4 +#define CYG_INSTRUMENT_EVENT_MLQ_TIMESLICE 5 +#define CYG_INSTRUMENT_EVENT_MLQ_YIELD 6 +#define CYG_INSTRUMENT_EVENT_MLQ_ENQUEUE 7 +#define CYG_INSTRUMENT_EVENT_MLQ_DEQUEUE 8 +#define CYG_INSTRUMENT_EVENT_MLQ_REMOVE 9 // User events @@ -373,12 +401,41 @@ externC void cyg_instrument_disable( cyg #endif // ------------------------------------------------------------------------- +// SMP instrumentation + +#ifdef CYGDBG_KERNEL_INSTRUMENT_SMP + +#define CYG_INSTRUMENT_SMP(_event_,_arg1_,_arg2_) \ + CYG_INSTRUMENT(CYGINST_EVENT(SMP,_event_),_arg1_,_arg2_) + +#else + +#define CYG_INSTRUMENT_SMP(_event_,_arg1_,_arg2_) + +#endif + + +// ------------------------------------------------------------------------- +// MLQ instrumentation + +#if 1 //def CYGDBG_KERNEL_INSTRUMENT_MLQ + +#define CYG_INSTRUMENT_MLQ(_event_,_arg1_,_arg2_) \ + CYG_INSTRUMENT(CYGINST_EVENT(MLQ,_event_),_arg1_,_arg2_) + +#else + +#define CYG_INSTRUMENT_MLQ(_event_,_arg1_,_arg2_) + +#endif + +// ------------------------------------------------------------------------- // User instrumentation #ifdef CYGDBG_KERNEL_INSTRUMENT_USER #define CYG_INSTRUMENT_USER(_event_,_arg1_,_arg2_) \ - CYG_INSTRUMENT(CYGINST_EVENT(USER,_event_),_arg1_,_arg2_) + CYG_INSTRUMENT((CYG_INSTRUMENT_CLASS_USER|(_event_)),_arg1_,_arg2_) #else
