annotate drivers/README.Matrox @ 24576:6704a924d4aa

According to MSDN a thread must call CoUninitialize once for each successful call it has made to CoInitialize or CoInitializeEx, including any call that returns S_FALSE. Only the CoUninitialize call corresponding to the CoInitialize or CoInitializeEx call that initialized the library can close it. patch by Gianluigi Tiesi, mplayer netfarm it
author diego
date Sun, 23 Sep 2007 20:37:33 +0000
parents 544914dadb52
children 0ad2da052b2e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
22691
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
1 The code in this directory is the old mga_vid driver for Linux kernels
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
2 prior to 2.6. It does _not_ compile for version 2.6.x.
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
3
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
4 For Linux kernel 2.6.x please get the newest version of the 2.6 port from
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
5 http://attila.kinali.ch/mga/
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
6
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
7
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
8 mga_vid - MGA G200/G400 YUV Overlay kernel module
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
9
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
10 Author:
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
11 Aaron Holtzman <aholtzma@ess.engr.uvic.ca>, Oct 1999
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
12
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
13 Contributions by:
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
14 Fredrik Vraalsen <vraalsen@cs.uiuc.edu>
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
15 Alan Cox <alan@lxorguk.ukuu.org.uk>
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
16
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
17 WARNING ----- WARNING
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
18
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
19 This code messes with your video card and your X server. It will probably
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
20 lock up your box, format your hard drive, and cause your brand new G400
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
21 MAX to spout 6 inch flames. You have been warned.
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
22
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
23 WARNING ----- WARNING
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
24
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
25 What does this code do?
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
26
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
27 mga_vid is a kernel module that utilitizes the Matrox G200/G400/G550
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
28 video scaler/overlay unit to perform YUV->RGB colorspace conversion
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
29 and arbitrary video scaling.
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
30
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
31 mga_vid is also a monster hack.
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
32
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
33 How does mga_vid work?
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
34
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
35 This kernel module sets up the BES (backend scaler) with appropriate
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
36 values based on parameters supplied via ioctl. It also maps a chunk of
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
37 video memory into userspace via mmap. This memory is stolen from X
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
38 (which may decide to write to it later). The application can then write
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
39 image data directly to the framebuffer (if it knows the right padding,
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
40 etc).
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
41
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
42
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
43 How do I know if mga_vid works on my system?
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
44
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
45 There is a test application called mga_vid_test. This test code should
544914dadb52 Move files from radeon/ subdirectory here.
diego
parents:
diff changeset
46 draw some nice 256x256 images for you if all is working well.