11 #ifndef __GRADCDAC_H__ 12 #define __GRADCDAC_H__ 19 volatile unsigned int config;
20 volatile unsigned int status;
22 volatile unsigned int adc_din;
23 volatile unsigned int dac_dout;
25 volatile unsigned int adrin;
26 volatile unsigned int adrout;
27 volatile unsigned int adrdir;
29 volatile unsigned int data_in;
30 volatile unsigned int data_out;
31 volatile unsigned int data_dir;
34 #define GRADCDAC_CFG_DACWS 0x00f80000 35 #define GRADCDAC_CFG_WRPOL 0x00040000 36 #define GRADCDAC_CFG_DACDW 0x00030000 37 #define GRADCDAC_CFG_ADCWS 0x0000f800 38 #define GRADCDAC_CFG_RCPOL 0x00000400 39 #define GRADCDAC_CFG_CSMODE 0x00000300 40 #define GRADCDAC_CFG_CSPOL 0x00000080 41 #define GRADCDAC_CFG_RDYMODE 0x00000040 42 #define GRADCDAC_CFG_RDYPOL 0x00000020 43 #define GRADCDAC_CFG_TRIGPOL 0x00000010 44 #define GRADCDAC_CFG_TRIGMODE 0x0000000c 45 #define GRADCDAC_CFG_ADCDW 0x00000003 47 #define GRADCDAC_CFG_DACWS_BIT 19 48 #define GRADCDAC_CFG_WRPOL_BIT 18 49 #define GRADCDAC_CFG_DACDW_BIT 16 50 #define GRADCDAC_CFG_ADCWS_BIT 11 51 #define GRADCDAC_CFG_RCPOL_BIT 10 52 #define GRADCDAC_CFG_CSMODE_BIT 8 53 #define GRADCDAC_CFG_CSPOL_BIT 7 54 #define GRADCDAC_CFG_RDYMODE_BIT 6 55 #define GRADCDAC_CFG_RDYPOL_BIT 5 56 #define GRADCDAC_CFG_TRIGPOL_BIT 4 57 #define GRADCDAC_CFG_TRIGMODE_BIT 2 58 #define GRADCDAC_CFG_ADCDW_BIT 0 60 #define GRADCDAC_STATUS_DACNO 0x40 61 #define GRADCDAC_STATUS_DACRDY 0x20 62 #define GRADCDAC_STATUS_DACON 0x10 63 #define GRADCDAC_STATUS_ADCTO 0x08 64 #define GRADCDAC_STATUS_ADCNO 0x04 65 #define GRADCDAC_STATUS_ADCRDY 0x02 66 #define GRADCDAC_STATUS_ADCON 0x01 68 #define GRADCDAC_STATUS_DACNO_BIT 6 69 #define GRADCDAC_STATUS_DACRDY_BIT 5 70 #define GRADCDAC_STATUS_DACON_BIT 4 71 #define GRADCDAC_STATUS_ADCTO_BIT 3 72 #define GRADCDAC_STATUS_ADCNO_BIT 2 73 #define GRADCDAC_STATUS_ADCRDY_BIT 1 74 #define GRADCDAC_STATUS_ADCON_BIT 0 76 #define GRADCDAC_IRQ_DAC 1 77 #define GRADCDAC_IRQ_ADC 0 85 unsigned char cs_mode;
90 unsigned char trigg_mode;
94 extern void *gradcdac_open(
char *devname);
96 extern void gradcdac_set_config(
void *cookie,
struct gradcdac_config *cfg);
98 extern void gradcdac_get_config(
void *cookie,
struct gradcdac_config *cfg);
100 extern void gradcdac_set_cfg(
void *cookie,
unsigned int config);
102 extern unsigned int gradcdac_get_cfg(
void *cookie);
104 extern unsigned int gradcdac_get_status(
void *cookie);
106 static int __inline__ gradcdac_DAC_ReqRej(
unsigned int status)
108 return (status & GRADCDAC_STATUS_DACNO);
111 static int __inline__ gradcdac_DAC_isCompleted(
unsigned int status)
113 return (status & GRADCDAC_STATUS_DACRDY);
116 static int __inline__ gradcdac_DAC_isOngoing(
unsigned int status)
118 return (status & GRADCDAC_STATUS_DACON);
121 static int __inline__ gradcdac_ADC_isTimeouted(
unsigned int status)
123 return (status & GRADCDAC_STATUS_ADCTO);
126 static int __inline__ gradcdac_ADC_ReqRej(
unsigned int status)
128 return (status & GRADCDAC_STATUS_ADCNO);
131 static int __inline__ gradcdac_ADC_isCompleted(
unsigned int status)
133 return (status & GRADCDAC_STATUS_ADCRDY);
136 static int __inline__ gradcdac_ADC_isOngoing(
unsigned int status)
138 return (status & GRADCDAC_STATUS_ADCON);
141 #define GRADCDAC_ISR_BOTH 3 142 #define GRADCDAC_ISR_DAC 2 143 #define GRADCDAC_ISR_ADC 1 154 extern int gradcdac_install_irq_handler
155 (
void *cookie,
int adc,
void (*isr)(
void *cookie,
void *arg),
void *arg);
157 extern void gradcdac_uninstall_irq_handler(
void *cookie,
int adc);
163 extern void gradcdac_adc_convert_start(
void *cookie);
174 extern int gradcdac_adc_convert_try(
void *cookie,
unsigned short *digital_value);
183 extern int gradcdac_adc_convert(
void *cookie,
unsigned short *digital_value);
190 extern int gradcdac_dac_convert_try(
void *cookie,
unsigned short digital_value);
197 extern void gradcdac_dac_convert(
void *cookie,
unsigned short digital_value);
199 extern unsigned int gradcdac_get_adrinput(
void *cookie);
200 extern void gradcdac_set_adrinput(
void *cookie,
unsigned int input);
202 extern unsigned int gradcdac_get_adroutput(
void *cookie);
203 extern void gradcdac_set_adroutput(
void *cookie,
unsigned int output);
205 extern unsigned int gradcdac_get_adrdir(
void *cookie);
206 extern void gradcdac_set_adrdir(
void *cookie,
unsigned int dir);
208 extern unsigned int gradcdac_get_datainput(
void *cookie);
209 extern void gradcdac_set_datainput(
void *cookie,
unsigned int input);
211 extern unsigned int gradcdac_get_dataoutput(
void *cookie);
212 extern void gradcdac_set_dataoutput(
void *cookie,
unsigned int output);
214 extern unsigned int gradcdac_get_datadir(
void *cookie);
215 extern void gradcdac_set_datadir(
void *cookie,
unsigned int dir);
218 extern void grAdcDacShow(
void *cookie);
221 extern void gradcdac_register_drv (
void);
Definition: deflate.c:115
Definition: gradcdac.h:18
Definition: gradcdac.h:79