00001 #ifndef crctxdef_h 00002 #define crctxdef_h 00003 00004 #define CRCTX_M_HIGH_PRIO 0x1 00005 #define CRCTX_M_ITEM_VALID 0x2 00006 00007 #define CRCTX_K_LENGTH 96 00008 #define CRCTX_S_CRCTXDEF 96 00009 00010 #define CRCTX_BUF_K_LENGTH 32 00011 00012 struct _crctx { 00013 struct _crctx *crctx_l_flink; 00014 struct _crctx *crctx_l_blink; 00015 unsigned short int crctx_w_size; 00016 unsigned char crctx_b_type; 00017 unsigned char crctx_b_subtype; 00018 struct _crab *crctx_l_crab; 00019 union { 00020 unsigned char crctx_b_flck; 00021 unsigned int crctx_l_flck; 00022 }; 00023 union { 00024 int crctx_l_flags; 00025 struct { 00026 unsigned crctx_v_high_prio : 1; 00027 unsigned crctx_v_item_valid : 1; 00028 unsigned crctx_v_fill_0_ : 6; 00029 }; 00030 }; 00031 void *crctx_l_wqfl; 00032 void *crctx_l_wqbl; 00033 union { 00034 int crctx_l_context1; 00035 long long crctx_q_context1; 00036 }; 00037 union { 00038 int crctx_l_context2; 00039 long long crctx_q_context2; 00040 }; 00041 union { 00042 int crctx_l_context3; 00043 long long crctx_q_context3; 00044 }; 00045 int crctx_l_item_cnt; 00046 int crctx_l_item_num; 00047 int crctx_l_up_bound; 00048 int crctx_l_low_bound; 00049 int (*crctx_l_callback)(); 00050 int (*crctx_l_saved_callback)(); 00051 void *crctx_l_aux_context; 00052 int crctx_l_reserved1; 00053 int crctx_l_dma_adr; 00054 void *crctx_ps_caller_pc; 00055 }; 00056 00057 struct _crctx_buf { 00058 unsigned int crctx_buf_l_xaction; 00059 unsigned int crctx_buf_l_item_num; 00060 unsigned int crctx_buf_l_item_cnt; 00061 struct _crctx *crctx_buf_ps_crctx; 00062 void *crctx_buf_ps_caller_pc; 00063 unsigned int crctx_buf_l_status; 00064 unsigned int crctx_buf_l_dma_addr; 00065 unsigned int crctx_buf_l_count; 00066 }; 00067 00068 struct _crctx_buf_h { 00069 long long crctx_buf_h_q_free; 00070 unsigned int crctx_buf_h_l_size; 00071 int crctx_buf_h_l_reserved; 00072 int crctx_buf_h_l_count; 00073 int crctx_buf_h_l_reserved2; 00074 }; 00075 00076 #endif 00077 00078