annotate drivers/mga_vid.h @ 35490:a5f5f61a7a35

Replace confusing guiInfoMediumClear() by MediumPrepare(). (It has been completely rewritten.) Now call MediumPrepare() only once for all play events. Check for current StreamType and clear stuff not being used for this stream type (and only stuff that need to be cleared).
author ib
date Mon, 03 Dec 2012 16:26:39 +0000
parents 29dc134ae9b3
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
1 /*
27027
03f571138664 standard license headers for mga_vid
diego
parents: 26830
diff changeset
2 * Matrox MGA G200/G400 YUV Video Interface module Version 0.1.0
03f571138664 standard license headers for mga_vid
diego
parents: 26830
diff changeset
3 * BES == Back End Scaler
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
4 *
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
5 * Copyright (C) 1999 Aaron Holtzman
27027
03f571138664 standard license headers for mga_vid
diego
parents: 26830
diff changeset
6 *
03f571138664 standard license headers for mga_vid
diego
parents: 26830
diff changeset
7 * This file is part of mga_vid.
03f571138664 standard license headers for mga_vid
diego
parents: 26830
diff changeset
8 *
03f571138664 standard license headers for mga_vid
diego
parents: 26830
diff changeset
9 * mga_vid is free software; you can redistribute it and/or modify
03f571138664 standard license headers for mga_vid
diego
parents: 26830
diff changeset
10 * it under the terms of the GNU General Public License as published by
03f571138664 standard license headers for mga_vid
diego
parents: 26830
diff changeset
11 * the Free Software Foundation; either version 2 of the License, or
03f571138664 standard license headers for mga_vid
diego
parents: 26830
diff changeset
12 * (at your option) any later version.
03f571138664 standard license headers for mga_vid
diego
parents: 26830
diff changeset
13 *
03f571138664 standard license headers for mga_vid
diego
parents: 26830
diff changeset
14 * mga_vid is distributed in the hope that it will be useful,
03f571138664 standard license headers for mga_vid
diego
parents: 26830
diff changeset
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
03f571138664 standard license headers for mga_vid
diego
parents: 26830
diff changeset
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
03f571138664 standard license headers for mga_vid
diego
parents: 26830
diff changeset
17 * GNU General Public License for more details.
03f571138664 standard license headers for mga_vid
diego
parents: 26830
diff changeset
18 *
03f571138664 standard license headers for mga_vid
diego
parents: 26830
diff changeset
19 * You should have received a copy of the GNU General Public License along
03f571138664 standard license headers for mga_vid
diego
parents: 26830
diff changeset
20 * with mga_vid; if not, write to the Free Software Foundation, Inc.,
03f571138664 standard license headers for mga_vid
diego
parents: 26830
diff changeset
21 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
22 */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
23
26829
bfb140f5b62c revert changes 26035 and 26061
attila
parents: 26029
diff changeset
24 #ifndef MGA_VID_H
bfb140f5b62c revert changes 26035 and 26061
attila
parents: 26029
diff changeset
25 #define MGA_VID_H
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
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
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
29 typedef struct mga_vid_config_s
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
30 {
57
baa0a12438eb config interface changed
arpi_esp
parents: 44
diff changeset
31 uint16_t version;
baa0a12438eb config interface changed
arpi_esp
parents: 44
diff changeset
32 uint16_t card_type;
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
33 uint32_t ram_size;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
34 uint32_t src_width;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
35 uint32_t src_height;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
36 uint32_t dest_width;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
37 uint32_t dest_height;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
38 uint32_t x_org;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
39 uint32_t y_org;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
40 uint8_t colkey_on;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
41 uint8_t colkey_red;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
42 uint8_t colkey_green;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
43 uint8_t colkey_blue;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
44 uint32_t format;
57
baa0a12438eb config interface changed
arpi_esp
parents: 44
diff changeset
45 uint32_t frame_size;
baa0a12438eb config interface changed
arpi_esp
parents: 44
diff changeset
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
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
48 } mga_vid_config_t;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
49
26830
d1c10dce1ee7 sync mga_vid.h to revision 265 from the mga_vid repo
attila
parents: 26829
diff changeset
50 /* supported FOURCCs */
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
51 #define MGA_VID_FORMAT_YV12 0x32315659
470
8e101a5d9dc2 I420/IYUV support
arpi_esp
parents: 448
diff changeset
52 #define MGA_VID_FORMAT_IYUV (('I'<<24)|('Y'<<16)|('U'<<8)|'V')
8e101a5d9dc2 I420/IYUV support
arpi_esp
parents: 448
diff changeset
53 #define MGA_VID_FORMAT_I420 (('I'<<24)|('4'<<16)|('2'<<8)|'0')
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
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
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
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
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
65
26830
d1c10dce1ee7 sync mga_vid.h to revision 265 from the mga_vid repo
attila
parents: 26829
diff changeset
66 /* card identifiers */
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
67 #define MGA_G200 0x1234
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
68 #define MGA_G400 0x5678
22692
2ccbb18bc99f sync mga_vid.h to the one in the mga_vid repo.
attila
parents: 5013
diff changeset
69 // currently unused, G450 are mapped to MGA_G400
2ccbb18bc99f sync mga_vid.h to the one in the mga_vid repo.
attila
parents: 5013
diff changeset
70 // #define MGA_G450 0x9ABC
2ccbb18bc99f sync mga_vid.h to the one in the mga_vid repo.
attila
parents: 5013
diff changeset
71 #define MGA_G550 0xDEF0
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
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
baa0a12438eb config interface changed
arpi_esp
parents: 44
diff changeset
75
26829
bfb140f5b62c revert changes 26035 and 26061
attila
parents: 26029
diff changeset
76 #endif /* MGA_VID_H */