rdb.h (2777B)
1 2 /************************************************************************** 3 * 4 * $Revision: 1.6 $ 5 * $Date: 1997/02/11 08:29:31 $ 6 * $Source: /disk6/Master/cvsmdev2/PR/include/rdb.h,v $ 7 * 8 **************************************************************************/ 9 10 #ifndef _RDB_H 11 #define _RDB_H 12 13 /* U64 side address */ 14 #define RDB_BASE_REG 0xc0000000 15 #define RDB_WRITE_INTR_REG (RDB_BASE_REG + 0x8) 16 #define RDB_READ_INTR_REG (RDB_BASE_REG + 0xc) 17 #define RDB_BASE_VIRTUAL_ADDR 0x80000000 18 19 /* packet type Have six bits, so can have up to 63 types */ 20 #define RDB_TYPE_INVALID 0 21 #define RDB_TYPE_GtoH_PRINT 1 22 #define RDB_TYPE_GtoH_FAULT 2 23 #define RDB_TYPE_GtoH_LOG_CT 3 24 #define RDB_TYPE_GtoH_LOG 4 25 #define RDB_TYPE_GtoH_READY_FOR_DATA 5 26 #define RDB_TYPE_GtoH_DATA_CT 6 27 #define RDB_TYPE_GtoH_DATA 7 28 #define RDB_TYPE_GtoH_DEBUG 8 29 #define RDB_TYPE_GtoH_RAMROM 9 30 #define RDB_TYPE_GtoH_DEBUG_DONE 10 31 #define RDB_TYPE_GtoH_DEBUG_READY 11 32 #define RDB_TYPE_GtoH_KDEBUG 12 33 #define RDB_TYPE_GtoH_PROF_DATA 22 34 35 36 #define RDB_TYPE_HtoG_LOG_DONE 13 37 #define RDB_TYPE_HtoG_DEBUG 14 38 #define RDB_TYPE_HtoG_DEBUG_CT 15 39 #define RDB_TYPE_HtoG_DATA 16 40 #define RDB_TYPE_HtoG_DATA_DONE 17 41 #define RDB_TYPE_HtoG_REQ_RAMROM 18 42 #define RDB_TYPE_HtoG_FREE_RAMROM 19 43 #define RDB_TYPE_HtoG_KDEBUG 20 44 #define RDB_TYPE_HtoG_PROF_SIGNAL 21 45 46 47 #define RDB_PROF_ACK_SIG 1 48 #define RDB_PROF_FLUSH_SIG 2 49 #define PROF_BLOCK_SIZE 2048 50 51 #define RDB_LOG_MAX_BLOCK_SIZE 0x8000 52 #define RDB_DATA_MAX_BLOCK_SIZE 0x8000 53 54 55 /* GIO side address */ 56 #define GIO_RDB_BASE_REG 0xbf480000 57 #define GIO_RDB_WRITE_INTR_REG (GIO_RDB_BASE_REG + 0x8) 58 #define GIO_RDB_READ_INTR_REG (GIO_RDB_BASE_REG + 0xc) 59 60 /* minor device number */ 61 #define GIO_RDB_PRINT_MINOR 1 62 #define GIO_RDB_DEBUG_MINOR 2 63 64 /* interrupt bit */ 65 #define GIO_RDB_WRITE_INTR_BIT 0x80000000 66 #define GIO_RDB_READ_INTR_BIT 0x40000000 67 68 /* debug command */ 69 #define DEBUG_COMMAND_NULL 0 70 #define DEBUG_COMMAND_MEMORY 1 71 #define DEBUG_COMMAND_REGISTER 2 72 #define DEBUG_COMMAND_INVALID 255 73 74 /* debug state */ 75 #define DEBUG_STATE_NULL 0 76 #define DEBUG_STATE_RECEIVE 1 77 #define DEBUG_STATE_INVALID 255 78 79 #if defined(_LANGUAGE_C) || defined(_LANGUAGE_C_PLUS_PLUS) 80 81 /* Structure for debug port */ 82 typedef struct { 83 unsigned type : 2; /* 0: invalid, 1: print, 2: debug */ 84 unsigned pad : 4; // CHANGED FROM THE ORIGINAL LIBULTRA HEADER 85 unsigned length : 2; /* 1, 2, or 3 */ 86 unsigned char buf[3]; /* character buffer */ 87 } rdbPacket; 88 89 extern unsigned int __osRdbWriteOK; 90 extern unsigned int __osRdbSendMessage; 91 92 #endif /* _LANGUAGE_C */ 93 94 #endif /* !_RDB_H */