Go to the source code of this file.
Functions | |
int | udelay (int usec) |
int | vt2_FifoRead (MVME_INTERFACE *mvme, DWORD base, DWORD *pdest, int nentry) |
int | vt2_FifoLevelRead (MVME_INTERFACE *mvme, DWORD base) |
int | vt2_CycleNumberRead (MVME_INTERFACE *mvme, DWORD base) |
int | vt2_CSRRead (MVME_INTERFACE *mvme, DWORD base) |
void | vt2_ManReset (MVME_INTERFACE *mvme, DWORD base) |
void | vt2_IntEnable (MVME_INTERFACE *mvme, DWORD base, int flag) |
void | vt2_KeepAlive (MVME_INTERFACE *mvme, DWORD base, int fset) |
void | vt2_CycleReset (MVME_INTERFACE *mvme, DWORD base, int fset) |
int udelay | ( | int | usec | ) |
int vt2_CSRRead | ( | MVME_INTERFACE * | mvme, | |
DWORD | base | |||
) |
Definition at line 86 of file vt2.c.
00087 { 00088 int status, cmode; 00089 00090 mvme_get_dmode(mvme, &cmode); 00091 mvme_set_dmode(mvme, MVME_DMODE_D32); 00092 status = mvme_read_value(mvme, base+VT2_CSR_RO); 00093 mvme_set_dmode(mvme, cmode); 00094 return status; 00095 }
int vt2_CycleNumberRead | ( | MVME_INTERFACE * | mvme, | |
DWORD | base | |||
) |
return the cycle number (10 bit)
Definition at line 73 of file vt2.c.
00074 { 00075 int status, cmode; 00076 00077 mvme_get_dmode(mvme, &cmode); 00078 mvme_set_dmode(mvme, MVME_DMODE_D32); 00079 status = mvme_read_value(mvme, base+VT2_CYCLENUMBER_RO); 00080 status &= 0x3FF; 00081 mvme_set_dmode(mvme, cmode); 00082 return status; 00083 }
void vt2_CycleReset | ( | MVME_INTERFACE * | mvme, | |
DWORD | base, | |||
int | fset | |||
) |
Definition at line 136 of file vt2.c.
00137 { 00138 int flag, cmode; 00139 mvme_get_dmode(mvme, &cmode); 00140 mvme_set_dmode(mvme, MVME_DMODE_D32); 00141 if (fset == 0) 00142 flag = (VT2_CYCLERESET<<16); 00143 else 00144 flag = VT2_CYCLERESET; 00145 printf("0x%x flag:0x%x\n", base+VT2_CTL_WO, flag); 00146 mvme_write_value(mvme, base+VT2_CTL_WO, flag); 00147 mvme_set_dmode(mvme, cmode); 00148 }
int vt2_FifoLevelRead | ( | MVME_INTERFACE * | mvme, | |
DWORD | base | |||
) |
return the Fifo level which is 64bits x 2048 with Almost full at 2000. the returned value is on 11 bits. It should be used as 2*level during read as the data is 64 bit wide. Data field 20bits : [0eaf][0000 0] 7FF fEmpty, fAlmostFull, Full, level
Definition at line 54 of file vt2.c.
00055 { 00056 int status, cmode; 00057 00058 mvme_get_dmode(mvme, &cmode); 00059 mvme_set_dmode(mvme, MVME_DMODE_D32); 00060 status = mvme_read_value(mvme, base+VT2_FIFOSTATUS_RO); 00061 if (status & VT2_FULL_FLAG) 00062 status = -1; 00063 else 00064 status &= 0x7FF; 00065 mvme_set_dmode(mvme, cmode); 00066 return 2*status; 00067 }
int vt2_FifoRead | ( | MVME_INTERFACE * | mvme, | |
DWORD | base, | |||
DWORD * | pdest, | |||
int | nentry | |||
) |
Definition at line 33 of file vt2.c.
00034 { 00035 int cmode, i; 00036 00037 mvme_get_dmode(mvme, &cmode); 00038 mvme_set_dmode(mvme, MVME_DMODE_D32); 00039 for (i=0 ; i<nentry ; i++) { 00040 pdest[i] = mvme_read_value(mvme, base+VT2_FIFO_RO); 00041 // printf("pdest[%i] = %lx\n", i, pdest[i]); 00042 } 00043 mvme_set_dmode(mvme, cmode); 00044 return nentry; 00045 }
void vt2_IntEnable | ( | MVME_INTERFACE * | mvme, | |
DWORD | base, | |||
int | flag | |||
) |
Definition at line 108 of file vt2.c.
00109 { 00110 int cmode; 00111 mvme_get_dmode(mvme, &cmode); 00112 mvme_set_dmode(mvme, MVME_DMODE_D32); 00113 if (flag == 1) 00114 mvme_write_value(mvme, base+VT2_CTL_WO, VT2_INTENABLE); 00115 else 00116 mvme_write_value(mvme, base+VT2_CTL_WO, VT2_INTENABLE<<16); 00117 00118 mvme_set_dmode(mvme, cmode); 00119 }
void vt2_KeepAlive | ( | MVME_INTERFACE * | mvme, | |
DWORD | base, | |||
int | fset | |||
) |
Definition at line 122 of file vt2.c.
00123 { 00124 int flag, cmode; 00125 mvme_get_dmode(mvme, &cmode); 00126 mvme_set_dmode(mvme, MVME_DMODE_D32); 00127 if (fset == 0) 00128 flag = (VT2_KEEPALIVE<<16); 00129 else 00130 flag = (VT2_KEEPALIVE); 00131 mvme_write_value(mvme, base+VT2_CTL_WO, flag); 00132 mvme_set_dmode(mvme, cmode); 00133 }
void vt2_ManReset | ( | MVME_INTERFACE * | mvme, | |
DWORD | base | |||
) |
Definition at line 98 of file vt2.c.
00099 { 00100 int cmode; 00101 mvme_get_dmode(mvme, &cmode); 00102 mvme_set_dmode(mvme, MVME_DMODE_D32); 00103 mvme_write_value(mvme, base+VT2_CTL_WO, VT2_MANRESET); 00104 mvme_set_dmode(mvme, cmode); 00105 }