Go to the source code of this file.
Defines | |
#define | LRS1190_ENABLE_RW (DWORD) (0x8002) |
#define | LRS1190_RESET_WO (DWORD) (0x0000) |
#define | LRS1190_DATA_RO (DWORD) (0x0000) |
#define | LRS1190_COUNT_RO (DWORD) (0x8000) |
Functions | |
void | lrs1190_Reset (MVME_INTERFACE *mvme, DWORD base) |
void | lrs1190_Enable (MVME_INTERFACE *mvme, DWORD base) |
void | lrs1190_Disable (MVME_INTERFACE *mvme, DWORD base) |
int | lrs1190_CountRead (MVME_INTERFACE *mvme, DWORD base) |
int | lrs1190_I4Read (MVME_INTERFACE *mvme, DWORD base, DWORD *data, int) |
int | lrs1190_L2Read (MVME_INTERFACE *mvme, DWORD base, WORD *data, int) |
int | lrs1190_H2Read (MVME_INTERFACE *mvme, DWORD base, WORD *data, int) |
#define LRS1190_COUNT_RO (DWORD) (0x8000) |
Definition at line 23 of file vme/lrs1190.h.
Referenced by lrs1190_CountRead(), lrs1190_H2Read(), lrs1190_I4Read(), and lrs1190_L2Read().
#define LRS1190_DATA_RO (DWORD) (0x0000) |
Definition at line 22 of file vme/lrs1190.h.
Referenced by lrs1190_H2Read(), lrs1190_I4Read(), and lrs1190_L2Read().
#define LRS1190_ENABLE_RW (DWORD) (0x8002) |
Definition at line 20 of file vme/lrs1190.h.
Referenced by lrs1190_Disable(), lrs1190_Enable(), and lrs1190_I4Read().
#define LRS1190_RESET_WO (DWORD) (0x0000) |
int lrs1190_CountRead | ( | MVME_INTERFACE * | mvme, | |
DWORD | base | |||
) |
Definition at line 67 of file vme/lrs1190.c.
00068 { 00069 int cmode, count; 00070 00071 mvme_get_dmode(mvme, &cmode); 00072 mvme_set_dmode(mvme, MVME_DMODE_D16); 00073 00074 count = mvme_read_value(mvme, base+LRS1190_COUNT_RO); 00075 mvme_set_dmode(mvme, cmode); 00076 return count; 00077 }
void lrs1190_Disable | ( | MVME_INTERFACE * | mvme, | |
DWORD | base | |||
) |
Definition at line 51 of file vme/lrs1190.c.
00052 { 00053 int cmode; 00054 00055 mvme_get_dmode(mvme, &cmode); 00056 mvme_set_dmode(mvme, MVME_DMODE_D16); 00057 00058 mvme_write_value(mvme, base+LRS1190_ENABLE_RW, 0x0); 00059 mvme_set_dmode(mvme, cmode); 00060 return; 00061 }
void lrs1190_Enable | ( | MVME_INTERFACE * | mvme, | |
DWORD | base | |||
) |
Definition at line 35 of file vme/lrs1190.c.
00036 { 00037 int cmode; 00038 00039 mvme_get_dmode(mvme, &cmode); 00040 mvme_set_dmode(mvme, MVME_DMODE_D16); 00041 00042 mvme_write_value(mvme, base+LRS1190_ENABLE_RW, 0x1); 00043 mvme_set_dmode(mvme, cmode); 00044 return; 00045 }
int lrs1190_H2Read | ( | MVME_INTERFACE * | mvme, | |
DWORD | base, | |||
WORD * | data, | |||
int | ||||
) |
Definition at line 137 of file vme/lrs1190.c.
00138 { 00139 int cmode, count; 00140 DWORD local; 00141 00142 mvme_get_dmode(mvme, &cmode); 00143 mvme_set_dmode(mvme, MVME_DMODE_D16); 00144 count = mvme_read_value(mvme, base+LRS1190_COUNT_RO); 00145 mvme_set_dmode(mvme, MVME_DMODE_D32); 00146 if (r > count) r = count; 00147 while (r > 0) { 00148 local = mvme_read_value(mvme, base+LRS1190_DATA_RO); 00149 *data = *((WORD *)(&local)+1); 00150 data++; 00151 r--; 00152 } 00153 mvme_set_dmode(mvme, cmode); 00154 return count; 00155 }
int lrs1190_I4Read | ( | MVME_INTERFACE * | mvme, | |
DWORD | base, | |||
DWORD * | data, | |||
int | ||||
) |
Definition at line 83 of file vme/lrs1190.c.
00084 { 00085 int cmode, count; 00086 DWORD add; 00087 mvme_get_dmode(mvme, &cmode); 00088 mvme_set_dmode(mvme, MVME_DMODE_D16); 00089 count = mvme_read_value(mvme, base+LRS1190_COUNT_RO); 00090 mvme_write_value(mvme, base+LRS1190_ENABLE_RW, 0x0); 00091 mvme_set_dmode(mvme, MVME_DMODE_D32); 00092 printf("internal count:%d\n", count); 00093 if (r > count) r = count; 00094 add = base+LRS1190_DATA_RO; 00095 while (r > 0) { 00096 *data = mvme_read_value(mvme, add); 00097 add += 4; 00098 printf("data:0x%x\n", *data); 00099 data++; 00100 r--; 00101 } 00102 mvme_set_dmode(mvme, MVME_DMODE_D16); 00103 mvme_write_value(mvme, base+LRS1190_RESET_WO, 0); 00104 mvme_write_value(mvme, base+LRS1190_ENABLE_RW, 0x1); 00105 mvme_set_dmode(mvme, cmode); 00106 return count; 00107 }
int lrs1190_L2Read | ( | MVME_INTERFACE * | mvme, | |
DWORD | base, | |||
WORD * | data, | |||
int | ||||
) |
Definition at line 113 of file vme/lrs1190.c.
00114 { 00115 int cmode, count; 00116 DWORD local; 00117 00118 mvme_get_dmode(mvme, &cmode); 00119 mvme_set_dmode(mvme, MVME_DMODE_D16); 00120 count = mvme_read_value(mvme, base+LRS1190_COUNT_RO); 00121 mvme_set_dmode(mvme, MVME_DMODE_D32); 00122 if (r > count) r = count; 00123 while (r > 0) { 00124 local = mvme_read_value(mvme, base+LRS1190_DATA_RO); 00125 *data = *((WORD *)(&local)+0); 00126 data++; 00127 r--; 00128 } 00129 mvme_set_dmode(mvme, cmode); 00130 return count; 00131 }
void lrs1190_Reset | ( | MVME_INTERFACE * | mvme, | |
DWORD | base | |||
) |
Definition at line 19 of file vme/lrs1190.c.
00020 { 00021 int cmode, status; 00022 00023 mvme_get_dmode(mvme, &cmode); 00024 mvme_set_dmode(mvme, MVME_DMODE_D16); 00025 00026 status = mvme_read_value(mvme, base+LRS1190_RESET_WO); 00027 mvme_set_dmode(mvme, cmode); 00028 return; 00029 }