diff options
Diffstat (limited to 'include/asm-cris/arch-v32/juliette.h')
-rw-r--r-- | include/asm-cris/arch-v32/juliette.h | 326 |
1 files changed, 326 insertions, 0 deletions
diff --git a/include/asm-cris/arch-v32/juliette.h b/include/asm-cris/arch-v32/juliette.h new file mode 100644 index 000000000000..f1f81725e57b --- /dev/null +++ b/include/asm-cris/arch-v32/juliette.h | |||
@@ -0,0 +1,326 @@ | |||
1 | #ifndef _ASM_JULIETTE_H | ||
2 | #define _ASM_JULIETTE_H | ||
3 | |||
4 | /* juliette _IOC_TYPE, bits 8 to 15 in ioctl cmd */ | ||
5 | |||
6 | #define JULIOCTYPE 42 | ||
7 | |||
8 | /* supported ioctl _IOC_NR's */ | ||
9 | |||
10 | #define JULSTARTDMA 0x1 /* start a picture asynchronously */ | ||
11 | |||
12 | /* set parameters */ | ||
13 | |||
14 | #define SETDEFAULT 0x2 /* CCD/VIDEO/SS1M */ | ||
15 | #define SETPARAMETERS 0x3 /* CCD/VIDEO */ | ||
16 | #define SETSIZE 0x4 /* CCD/VIDEO/SS1M */ | ||
17 | #define SETCOMPRESSION 0x5 /* CCD/VIDEO/SS1M */ | ||
18 | #define SETCOLORLEVEL 0x6 /* CCD/VIDEO */ | ||
19 | #define SETBRIGHTNESS 0x7 /* CCD */ | ||
20 | #define SETROTATION 0x8 /* CCD */ | ||
21 | #define SETTEXT 0x9 /* CCD/VIDEO/SS1M */ | ||
22 | #define SETCLOCK 0xa /* CCD/VIDEO/SS1M */ | ||
23 | #define SETDATE 0xb /* CCD/VIDEO/SS1M */ | ||
24 | #define SETTIMEFORMAT 0xc /* CCD/VIDEO/SS1M */ | ||
25 | #define SETDATEFORMAT 0xd /* VIDEO */ | ||
26 | #define SETTEXTALIGNMENT 0xe /* VIDEO */ | ||
27 | #define SETFPS 0xf /* CCD/VIDEO/SS1M */ | ||
28 | #define SETVGA 0xff /* VIDEO */ | ||
29 | #define SETCOMMENT 0xfe /* CCD/VIDEO */ | ||
30 | |||
31 | /* get parameters */ | ||
32 | |||
33 | #define GETDRIVERTYPE 0x10 /* CCD/VIDEO/SS1M */ | ||
34 | #define GETNBROFCAMERAS 0x11 /* CCD/VIDEO/SS1M */ | ||
35 | #define GETPARAMETERS 0x12 /* CCD/VIDEO/SS1M */ | ||
36 | #define GETBUFFERSIZE 0x13 /* CCD/VIDEO/SS1M */ | ||
37 | #define GETVIDEOTYPE 0x14 /* VIDEO/SS1M */ | ||
38 | #define GETVIDEOSIGNAL 0x15 /* VIDEO */ | ||
39 | #define GETMODULATION 0x16 /* VIDEO */ | ||
40 | #define GETDCYVALUES 0xa0 /* CCD /SS1M */ | ||
41 | #define GETDCYWIDTH 0xa1 /* CCD /SS1M */ | ||
42 | #define GETDCYHEIGHT 0xa2 /* CCD /SS1M */ | ||
43 | #define GETSIZE 0xa3 /* CCD/VIDEO */ | ||
44 | #define GETCOMPRESSION 0xa4 /* CCD/VIDEO */ | ||
45 | |||
46 | /* detect and get parameters */ | ||
47 | |||
48 | #define DETECTMODULATION 0x17 /* VIDEO */ | ||
49 | #define DETECTVIDEOTYPE 0x18 /* VIDEO */ | ||
50 | #define DETECTVIDEOSIGNAL 0x19 /* VIDEO */ | ||
51 | |||
52 | /* configure default parameters */ | ||
53 | |||
54 | #define CONFIGUREDEFAULT 0x20 /* CCD/VIDEO/SS1M */ | ||
55 | #define DEFSIZE 0x21 /* CCD/VIDEO/SS1M */ | ||
56 | #define DEFCOMPRESSION 0x22 /* CCD/VIDEO/SS1M */ | ||
57 | #define DEFCOLORLEVEL 0x23 /* CCD/VIDEO */ | ||
58 | #define DEFBRIGHTNESS 0x24 /* CCD */ | ||
59 | #define DEFROTATION 0x25 /* CCD */ | ||
60 | #define DEFWHITEBALANCE 0x26 /* CCD */ | ||
61 | #define DEFEXPOSURE 0x27 /* CCD */ | ||
62 | #define DEFAUTOEXPWINDOW 0x28 /* CCD */ | ||
63 | #define DEFTEXT 0x29 /* CCD/VIDEO/SS1M */ | ||
64 | #define DEFCLOCK 0x2a /* CCD/VIDEO/SS1M */ | ||
65 | #define DEFDATE 0x2b /* CCD/VIDEO/SS1M */ | ||
66 | #define DEFTIMEFORMAT 0x2c /* CCD/VIDEO/SS1M */ | ||
67 | #define DEFDATEFORMAT 0x2d /* VIDEO */ | ||
68 | #define DEFTEXTALIGNMENT 0x2e /* VIDEO */ | ||
69 | #define DEFFPS 0x2f /* CCD/VIDEO/SS1M */ | ||
70 | #define DEFTEXTSTRING 0x30 /* CCD/VIDEO/SS1M */ | ||
71 | #define DEFHEADERINFO 0x31 /* CCD/VIDEO/SS1M */ | ||
72 | #define DEFWEXAR 0x32 /* CCD */ | ||
73 | #define DEFLINEDELAY 0x33 /* CCD */ | ||
74 | #define DEFDISABLEDVIDEO 0x34 /* VIDEO */ | ||
75 | #define DEFVIDEOTYPE 0x35 /* VIDEO */ | ||
76 | #define DEFMODULATION 0x36 /* VIDEO */ | ||
77 | #define DEFXOFFSET 0x37 /* VIDEO */ | ||
78 | #define DEFYOFFSET 0x38 /* VIDEO */ | ||
79 | #define DEFYCMODE 0x39 /* VIDEO */ | ||
80 | #define DEFVCRMODE 0x3a /* VIDEO */ | ||
81 | #define DEFSTOREDCYVALUES 0x3b /* CCD/VIDEO/SS1M */ | ||
82 | #define DEFWCDS 0x3c /* CCD */ | ||
83 | #define DEFVGA 0x3d /* VIDEO */ | ||
84 | #define DEFCOMMENT 0x3e /* CCD/VIDEO */ | ||
85 | #define DEFCOMMENTSIZE 0x3f /* CCD/VIDEO */ | ||
86 | #define DEFCOMMENTTEXT 0x50 /* CCD/VIDEO */ | ||
87 | #define DEFSTOREDCYTEXT 0x51 /* VIDEO */ | ||
88 | |||
89 | |||
90 | #define JULABORTDMA 0x70 /* Abort current DMA transfer */ | ||
91 | |||
92 | /* juliette general i/o port */ | ||
93 | |||
94 | #define JIO_READBITS 0x40 /* read and return current port bits */ | ||
95 | #define JIO_SETBITS 0x41 /* set bits marked by 1 in the argument */ | ||
96 | #define JIO_CLRBITS 0x42 /* clr bits marked by 1 in the argument */ | ||
97 | #define JIO_READDIR 0x43 /* read direction, 0=input 1=output */ | ||
98 | #define JIO_SETINPUT 0x44 /* set direction, 0=unchanged 1=input | ||
99 | returns current dir */ | ||
100 | #define JIO_SETOUTPUT 0x45 /* set direction, 0=unchanged 1=output | ||
101 | returns current dir */ | ||
102 | |||
103 | /**** YumYum internal adresses ****/ | ||
104 | |||
105 | /* Juliette buffer addresses */ | ||
106 | |||
107 | #define BUFFER1_VIDEO 0x1100 | ||
108 | #define BUFFER2_VIDEO 0x2800 | ||
109 | #define ACDC_BUFF_VIDEO 0x0aaa | ||
110 | #define BUFFER1 0x1700 | ||
111 | #define BUFFER2 0x2b01 | ||
112 | #define ACDC_BUFFER 0x1200 | ||
113 | #define BUFFER1_SS1M 0x1100 | ||
114 | #define BUFFER2_SS1M 0x2800 | ||
115 | #define ACDC_BUFF_SS1M 0x0900 | ||
116 | |||
117 | /* Juliette parameter memory addresses */ | ||
118 | |||
119 | #define PA_BUFFER_CNT 0x3f09 /* CCD/VIDEO */ | ||
120 | #define PA_CCD_BUFFER 0x3f10 /* CCD */ | ||
121 | #define PA_VIDEO_BUFFER 0x3f10 /* VIDEO */ | ||
122 | #define PA_DCT_BUFFER 0x3f11 /* CCD/VIDEO */ | ||
123 | #define PA_TEMP 0x3f12 /* CCD/VIDEO */ | ||
124 | #define PA_VIDEOLINE_RD 0x3f13 /* VIDEO */ | ||
125 | #define PA_VIDEOLINE_WR 0x3f14 /* VIDEO */ | ||
126 | #define PA_VI_HDELAY0 0x3f15 /* VIDEO */ | ||
127 | #define PA_VI_VDELAY0 0x3f16 /* VIDEO */ | ||
128 | #define PA_VI_HDELAY1 0x3f17 /* VIDEO */ | ||
129 | #define PA_VI_VDELAY1 0x3f18 /* VIDEO */ | ||
130 | #define PA_VI_HDELAY2 0x3f19 /* VIDEO */ | ||
131 | #define PA_VI_VDELAY2 0x3f1a /* VIDEO */ | ||
132 | #define PA_VI_HDELAY3 0x3f1b /* VIDEO */ | ||
133 | #define PA_VI_VDELAY3 0x3f1c /* VIDEO */ | ||
134 | #define PA_VI_CTRL 0x3f20 /* VIDEO */ | ||
135 | #define PA_JPEG_CTRL 0x3f22 /* CCD/VIDEO */ | ||
136 | #define PA_BUFFER_SIZE 0x3f24 /* CCD/VIDEO */ | ||
137 | #define PA_PAL_NTSC 0x3f25 /* VIDEO */ | ||
138 | #define PA_MACROBLOCKS 0x3f26 /* CCD/VIDEO */ | ||
139 | #define PA_COLOR 0x3f27 /* VIDEO */ | ||
140 | #define PA_MEMCH1CNT2 0x3f28 /* CCD/VIDEO */ | ||
141 | #define PA_MEMCH1CNT3 0x3f29 /* VIDEO */ | ||
142 | #define PA_MEMCH1STR2 0x3f2a /* CCD/VIDEO */ | ||
143 | #define PA_MEMCH1STR3 0x3f2b /* VIDEO */ | ||
144 | #define PA_BUFFERS 0x3f2c /* CCD/VIDEO */ | ||
145 | #define PA_PROGRAM 0x3f2d /* CCD/VIDEO */ | ||
146 | #define PA_ROTATION 0x3f2e /* CCD */ | ||
147 | #define PA_PC 0x3f30 /* CCD/VIDEO */ | ||
148 | #define PA_PC2 0x3f31 /* VIDEO */ | ||
149 | #define PA_ODD_LINE 0x3f32 /* VIDEO */ | ||
150 | #define PA_EXP_DELAY 0x3f34 /* CCD */ | ||
151 | #define PA_MACROBLOCK_CNT 0x3f35 /* CCD/VIDEO */ | ||
152 | #define PA_DRAM_PTR1_L 0x3f36 /* CCD/VIDEO */ | ||
153 | #define PA_CLPOB_CNT 0x3f37 /* CCD */ | ||
154 | #define PA_DRAM_PTR1_H 0x3f38 /* CCD/VIDEO */ | ||
155 | #define PA_DRAM_PTR2_L 0x3f3a /* VIDEO */ | ||
156 | #define PA_DRAM_PTR2_H 0x3f3c /* VIDEO */ | ||
157 | #define PA_CCD_LINE_CNT 0x3f3f /* CCD */ | ||
158 | #define PA_VIDEO_LINE_CNT 0x3f3f /* VIDEO */ | ||
159 | #define PA_TEXT 0x3f41 /* CCD/VIDEO */ | ||
160 | #define PA_CAMERA_CHANGED 0x3f42 /* VIDEO */ | ||
161 | #define PA_TEXTALIGNMENT 0x3f43 /* VIDEO */ | ||
162 | #define PA_DISABLED 0x3f44 /* VIDEO */ | ||
163 | #define PA_MACROBLOCKTEXT 0x3f45 /* VIDEO */ | ||
164 | #define PA_VGA 0x3f46 /* VIDEO */ | ||
165 | #define PA_ZERO 0x3ffe /* VIDEO */ | ||
166 | #define PA_NULL 0x3fff /* CCD/VIDEO */ | ||
167 | |||
168 | typedef enum { | ||
169 | jpeg = 0, | ||
170 | dummy = 1 | ||
171 | } request_type; | ||
172 | |||
173 | typedef enum { | ||
174 | hugesize = 0, | ||
175 | fullsize = 1, | ||
176 | halfsize = 2, | ||
177 | fieldsize = 3 | ||
178 | } size_type; | ||
179 | |||
180 | typedef enum { | ||
181 | min = 0, | ||
182 | low = 1, | ||
183 | medium = 2, | ||
184 | high = 3, | ||
185 | very_high = 4, | ||
186 | very_low = 5, | ||
187 | q1 = 6, | ||
188 | q2 = 7, | ||
189 | q3 = 8, | ||
190 | q4 = 9, | ||
191 | q5 = 10, | ||
192 | q6 = 11 | ||
193 | } compr_type; | ||
194 | |||
195 | typedef enum { | ||
196 | deg_0 = 0, | ||
197 | deg_180 = 1, | ||
198 | deg_90 = 2, | ||
199 | deg_270 = 3 | ||
200 | } rotation_type; | ||
201 | |||
202 | typedef enum { | ||
203 | auto_white = 0, | ||
204 | hold = 1, | ||
205 | fixed_outdoor = 2, | ||
206 | fixed_indoor = 3, | ||
207 | fixed_fluor = 4 | ||
208 | } white_balance_type; | ||
209 | |||
210 | typedef enum { | ||
211 | auto_exp = 0, | ||
212 | fixed_exp = 1 | ||
213 | } exposure_type; | ||
214 | |||
215 | typedef enum { | ||
216 | no_window = 0, | ||
217 | center = 1, | ||
218 | top = 2, | ||
219 | lower = 3, | ||
220 | left = 4, | ||
221 | right = 5, | ||
222 | spot = 6, | ||
223 | cw = 7 | ||
224 | } exp_window_type; | ||
225 | |||
226 | typedef enum { | ||
227 | h_24 = 0, | ||
228 | h_12 = 1, | ||
229 | h_24P = 2 | ||
230 | } hour_type; | ||
231 | |||
232 | typedef enum { | ||
233 | standard = 0, | ||
234 | YYYY_MM_DD = 1, | ||
235 | Www_Mmm_DD_YYYY = 2, | ||
236 | Www_DD_MM_YYYY = 3 | ||
237 | } date_type; | ||
238 | |||
239 | typedef enum { | ||
240 | left_align = 0, | ||
241 | center_align = 1, | ||
242 | right_align = 2 | ||
243 | } alignment_type; | ||
244 | |||
245 | typedef enum { | ||
246 | off = 0, | ||
247 | on = 1, | ||
248 | no = 0, | ||
249 | yes = 1 | ||
250 | } enable_type; | ||
251 | |||
252 | typedef enum { | ||
253 | disabled = 0, | ||
254 | enabled = 1, | ||
255 | extended = 2 | ||
256 | } comment_type; | ||
257 | |||
258 | typedef enum { | ||
259 | pal = 0, | ||
260 | ntsc = 1 | ||
261 | } video_type; | ||
262 | |||
263 | typedef enum { | ||
264 | pal_bghi_ntsc_m = 0, | ||
265 | ntsc_4_43_50hz_pal_4_43_60hz = 1, | ||
266 | pal_n_ntsc_4_43_60hz = 2, | ||
267 | ntsc_n_pal_m = 3, | ||
268 | secam_pal_4_43_60hz = 4 | ||
269 | } modulation_type; | ||
270 | |||
271 | typedef enum { | ||
272 | cam0 = 0, | ||
273 | cam1 = 1, | ||
274 | cam2 = 2, | ||
275 | cam3 = 3, | ||
276 | quad = 32 | ||
277 | } camera_type; | ||
278 | |||
279 | typedef enum { | ||
280 | video_driver = 0, | ||
281 | ccd_driver = 1 | ||
282 | } driver_type; | ||
283 | |||
284 | struct jul_param { | ||
285 | request_type req_type; | ||
286 | size_type size; | ||
287 | compr_type compression; | ||
288 | rotation_type rotation; | ||
289 | int color_level; | ||
290 | int brightness; | ||
291 | white_balance_type white_balance; | ||
292 | exposure_type exposure; | ||
293 | exp_window_type auto_exp_window; | ||
294 | hour_type time_format; | ||
295 | date_type date_format; | ||
296 | alignment_type text_alignment; | ||
297 | enable_type text; | ||
298 | enable_type clock; | ||
299 | enable_type date; | ||
300 | enable_type fps; | ||
301 | enable_type vga; | ||
302 | enable_type comment; | ||
303 | }; | ||
304 | |||
305 | struct video_param { | ||
306 | enable_type disabled; | ||
307 | modulation_type modulation; | ||
308 | video_type video; | ||
309 | enable_type signal; | ||
310 | enable_type vcr; | ||
311 | int xoffset; | ||
312 | int yoffset; | ||
313 | }; | ||
314 | |||
315 | /* The juliette_request structure is used during the JULSTARTDMA asynchronous | ||
316 | * picture-taking ioctl call as an argument to specify a buffer which will get | ||
317 | * the final picture. | ||
318 | */ | ||
319 | |||
320 | struct juliette_request { | ||
321 | char *buf; /* Pointer to the buffer to hold picture data */ | ||
322 | unsigned int buflen; /* Length of the above buffer */ | ||
323 | unsigned int size; /* Resulting length, 0 if the picture is not ready */ | ||
324 | }; | ||
325 | |||
326 | #endif | ||