00001 #ifndef hrbdef_h 00002 #define hrbdef_h 00003 00004 #define HRB_M_STATE_INVALID 0x8000 00005 #define HRB_M_ABORT 0x1 00006 #define HRB_M_ABORTWS 0x2 00007 #define HRB_M_DEQUEUED 0x4 00008 #define HRB_M_ENDMSG 0x8 00009 #define HRB_M_MAP 0x10 00010 #define HRB_M_UNBLOCK 0x20 00011 #define HRB_M_VCFAILED 0x40 00012 #define HRB_M_OLDBUF 0x80 00013 #define HRB_M_WBC_IMMED 0x100 00014 #define HRB_M_FIRST 0x200 00015 #define HRB_M_FLUSH 0x400 00016 #define HRB_M_CMD_TMO 0x800 00017 #define HRB_K_LENGTH 140 00018 00019 #define HRB_K_ST_MSG_WAIT 1 00020 #define HRB_K_ST_SEQ_WAIT 2 00021 #define HRB_K_ST_BUF_WAIT 3 00022 #define HRB_K_ST_SNDAT_WAIT 4 00023 #define HRB_K_ST_DRV_WAIT 5 00024 #define HRB_K_ST_MAP_WAIT 6 00025 #define HRB_K_ST_UNMAP_WAIT 7 00026 #define HRB_K_ST_SNDMS_WAIT 8 00027 #define HRB_K_ST_MEM_WAIT 9 00028 #define HRB_K_ST_FLUSHED 10 00029 #define HRB_K_ST_CACHED 11 00030 #define HRB_S_HRBDEF 140 00031 00032 struct _hrb { 00033 void *hrb_l_flink; 00034 void *hrb_l_blink; 00035 unsigned short int hrb_w_size; 00036 unsigned char hrb_b_type; 00037 unsigned char hrb_b_subtype; 00038 int (*hrb_l_respc)(); 00039 int (*hrb_l_savd_rtn)(); 00040 union { 00041 unsigned short int hrb_w_state; 00042 struct { 00043 unsigned hrb_v_filler : 15; 00044 unsigned hrb_v_state_invalid : 1; 00045 }; 00046 } ; 00047 00048 union { 00049 unsigned short int hrb_w_flags; 00050 struct { 00051 unsigned hrb_v_abort : 1; 00052 unsigned hrb_v_abortws : 1; 00053 unsigned hrb_v_dequeued : 1; 00054 unsigned hrb_v_endmsg : 1; 00055 unsigned hrb_v_map : 1; 00056 unsigned hrb_v_unblock : 1; 00057 unsigned hrb_v_vcfailed : 1; 00058 unsigned hrb_v_oldbuf : 1; 00059 00060 unsigned hrb_v_wbc_immed : 1; 00061 unsigned hrb_v_first : 1; 00062 unsigned hrb_v_flush : 1; 00063 unsigned hrb_v_cmd_tmo : 1; 00064 unsigned hrb_v_fill_4_ : 4; 00065 }; 00066 }; 00067 struct _mscp *hrb_l_msgbuf; 00068 struct _cdrp *hrb_l_irp_cdrp; 00069 unsigned char hrb_b_lbuff [12]; 00070 void *hrb_l_bd_addr; 00071 unsigned int hrb_l_buflen; 00072 void *hrb_l_bufadr; 00073 unsigned int hrb_l_lbn; 00074 unsigned int hrb_l_obcnt; 00075 unsigned int hrb_l_abcnt; 00076 unsigned int hrb_l_svapte; 00077 unsigned int hrb_l_bcnt; 00078 unsigned short int hrb_w_boff; 00079 unsigned short int hrb_w_reserved; 00080 void *hrb_l_wait_fl; 00081 void *hrb_l_wait_bl; 00082 struct _hqb *hrb_l_hqb; 00083 struct _uqb *hrb_l_uqb; 00084 struct _pdt *hrb_l_pdt; 00085 unsigned int hrb_l_cmd_sts; 00086 unsigned int hrb_l_object_skip; 00087 unsigned int hrb_l_current_skip; 00088 unsigned int hrb_l_io_time; 00089 00090 void *hrb_l_cache_fl; 00091 void *hrb_l_cache_bl; 00092 void *hrb_l_memw_fl; 00093 void *hrb_l_memw_bl; 00094 unsigned int hrb_l_record; 00095 unsigned int hrb_l_cmd_time; 00096 }; 00097 00098 00099 #endif 00100 00101