Mercurial > mplayer.hg
annotate drivers/mga_vid.h @ 32481:983577adcf0e
Fix possible out-of-bounds access.
author | reimar |
---|---|
date | Sat, 30 Oct 2010 15:29:20 +0000 |
parents | 29dc134ae9b3 |
children |
rev | line source |
---|---|
1 | 1 /* |
27027 | 2 * Matrox MGA G200/G400 YUV Video Interface module Version 0.1.0 |
3 * BES == Back End Scaler | |
1 | 4 * |
5 * Copyright (C) 1999 Aaron Holtzman | |
27027 | 6 * |
7 * This file is part of mga_vid. | |
8 * | |
9 * mga_vid is free software; you can redistribute it and/or modify | |
10 * it under the terms of the GNU General Public License as published by | |
11 * the Free Software Foundation; either version 2 of the License, or | |
12 * (at your option) any later version. | |
13 * | |
14 * mga_vid is distributed in the hope that it will be useful, | |
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
17 * GNU General Public License for more details. | |
18 * | |
19 * You should have received a copy of the GNU General Public License along | |
20 * with mga_vid; if not, write to the Free Software Foundation, Inc., | |
21 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | |
1 | 22 */ |
23 | |
26829 | 24 #ifndef MGA_VID_H |
25 #define MGA_VID_H | |
1 | 26 |
32358
29dc134ae9b3
Add necessary #includes to make headers compile standalone.
diego
parents:
27027
diff
changeset
|
27 #include <linux/types.h> |
29dc134ae9b3
Add necessary #includes to make headers compile standalone.
diego
parents:
27027
diff
changeset
|
28 |
1 | 29 typedef struct mga_vid_config_s |
30 { | |
57 | 31 uint16_t version; |
32 uint16_t card_type; | |
1 | 33 uint32_t ram_size; |
34 uint32_t src_width; | |
35 uint32_t src_height; | |
36 uint32_t dest_width; | |
37 uint32_t dest_height; | |
38 uint32_t x_org; | |
39 uint32_t y_org; | |
40 uint8_t colkey_on; | |
41 uint8_t colkey_red; | |
42 uint8_t colkey_green; | |
43 uint8_t colkey_blue; | |
44 uint32_t format; | |
57 | 45 uint32_t frame_size; |
46 uint32_t num_frames; | |
26830
d1c10dce1ee7
sync mga_vid.h to revision 265 from the mga_vid repo
attila
parents:
26829
diff
changeset
|
47 uint32_t capabilities; |
1 | 48 } mga_vid_config_t; |
49 | |
26830
d1c10dce1ee7
sync mga_vid.h to revision 265 from the mga_vid repo
attila
parents:
26829
diff
changeset
|
50 /* supported FOURCCs */ |
1 | 51 #define MGA_VID_FORMAT_YV12 0x32315659 |
470 | 52 #define MGA_VID_FORMAT_IYUV (('I'<<24)|('Y'<<16)|('U'<<8)|'V') |
53 #define MGA_VID_FORMAT_I420 (('I'<<24)|('4'<<16)|('2'<<8)|'0') | |
1 | 54 #define MGA_VID_FORMAT_YUY2 (('Y'<<24)|('U'<<16)|('Y'<<8)|'2') |
448
198b46b739d8
qrva eletbe nem kene cvs-t elbaszni inkabb ne nyuljatok hozza baz+
arpi_esp
parents:
57
diff
changeset
|
55 #define MGA_VID_FORMAT_UYVY (('U'<<24)|('Y'<<16)|('V'<<8)|'Y') |
1 | 56 |
26830
d1c10dce1ee7
sync mga_vid.h to revision 265 from the mga_vid repo
attila
parents:
26829
diff
changeset
|
57 /* ioctl commands */ |
d1c10dce1ee7
sync mga_vid.h to revision 265 from the mga_vid repo
attila
parents:
26829
diff
changeset
|
58 #define MGA_VID_GET_VERSION _IOR ('J', 1, uint32_t) |
d1c10dce1ee7
sync mga_vid.h to revision 265 from the mga_vid repo
attila
parents:
26829
diff
changeset
|
59 #define MGA_VID_CONFIG _IOWR('J', 2, mga_vid_config_t) |
d1c10dce1ee7
sync mga_vid.h to revision 265 from the mga_vid repo
attila
parents:
26829
diff
changeset
|
60 #define MGA_VID_ON _IO ('J', 3) |
d1c10dce1ee7
sync mga_vid.h to revision 265 from the mga_vid repo
attila
parents:
26829
diff
changeset
|
61 #define MGA_VID_OFF _IO ('J', 4) |
d1c10dce1ee7
sync mga_vid.h to revision 265 from the mga_vid repo
attila
parents:
26829
diff
changeset
|
62 #define MGA_VID_FSEL _IOW ('J', 5, uint32_t) |
d1c10dce1ee7
sync mga_vid.h to revision 265 from the mga_vid repo
attila
parents:
26829
diff
changeset
|
63 #define MGA_VID_GET_LUMA _IOR ('J', 6, uint32_t) |
d1c10dce1ee7
sync mga_vid.h to revision 265 from the mga_vid repo
attila
parents:
26829
diff
changeset
|
64 #define MGA_VID_SET_LUMA _IOW ('J', 7, uint32_t) |
1 | 65 |
26830
d1c10dce1ee7
sync mga_vid.h to revision 265 from the mga_vid repo
attila
parents:
26829
diff
changeset
|
66 /* card identifiers */ |
1 | 67 #define MGA_G200 0x1234 |
68 #define MGA_G400 0x5678 | |
22692 | 69 // currently unused, G450 are mapped to MGA_G400 |
70 // #define MGA_G450 0x9ABC | |
71 #define MGA_G550 0xDEF0 | |
1 | 72 |
26830
d1c10dce1ee7
sync mga_vid.h to revision 265 from the mga_vid repo
attila
parents:
26829
diff
changeset
|
73 /* version of the mga_vid_config struct */ |
d1c10dce1ee7
sync mga_vid.h to revision 265 from the mga_vid repo
attila
parents:
26829
diff
changeset
|
74 #define MGA_VID_VERSION 0x0202 |
57 | 75 |
26829 | 76 #endif /* MGA_VID_H */ |