|
|
1.1 root 1: /*
2: * these values are critical;
3: * dsseq depends on da being 0
4: * and ad being 1
5: */
6: # define DA ((int)0)
7: # define AD ((int)1)
8:
9: /*
10: * start address for d/a and a/d converters
11: */
12: #define ADBASE ((int)0)
13: #define DABASE ((int)010)
14:
15: /*
16: * ASC sequence table bit for last entry
17: */
18: #define LAST_SEQ bit(7)
19:
20: /*
21: * Ioctl commands.
22: */
23: # define DSSEQ ((('s') << 8) | 0) /* set sequence */
24: # define DSRATE ((('s') << 8) | 1) /* set rate */
25: # define DS08KHZ ((('s') << 8) | 2) /* set 08kHz filter */
26: # define DS04KHZ ((('s') << 8) | 3) /* set 04kHz filter */
27: # define DSBYPAS ((('s') << 8) | 5) /* set bypass filter */
28: # define DSERRS ((('s') << 8) | 6) /* get errors */
29: # define DSRESET ((('s') << 8) | 7) /* reset dsc */
30: # define DSTRANS ((('s') << 8) | 8) /* get transit. counts */
31: # define DSLAST ((('s') << 8) | 12) /* last seq ram */
32: # define DSDONE ((('s') << 8) | 14) /* amnt. done */
33: # define DSMON ((('s') << 8) | 15) /* set monitor mode */
34: # define DSBRD ((('s') << 8) | 16) /* set broadcast mode */
35: # define DSDEBUG ((('s') << 8) | 19) /* debug */
36: # define DSWAIT ((('s') << 8) | 20) /* wait for io to finish */
37: # define DSSTEREO ((('s') << 8) | 21)
38: # define DSMONO ((('s') << 8) | 22)
39: # define NDSB 3 /* number of buffers chaining with */
40:
41: /*
42: * reg specifies a sequence register (0-15).
43: * conv specifies a converter.
44: * dirt specifies the direction when
45: * setting up the sequence ram (DSSEQ) or the
46: * sampling rate (DSRATE).
47: */
48: struct ds_seq {
49: short reg;
50: short conv;
51: short dirt; /* shared by DSSEQ and DSRATE */
52: };
53: /*
54: * Format of returned converter
55: * errors.
56: */
57: struct ds_err {
58: short dma_csr;
59: short asc_csr;
60: short errors;
61: };
62:
63: /*
64: * Format of returned transition counts
65: */
66: struct ds_trans {
67: short to_idle;
68: short to_active;
69: };
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.