SiS_DDC2Delay: initialize variable before adding to it
[xf86-video-sis.git] / src / sis_videostr.h
blob3827c4e162c303a91de2a8d1d3b409dbb56ca775
1 /*
2 * Xv driver for SiS 300, 315 and 330 series
4 * Overlay port private structure
6 * Copyright (C) 2001-2005 by Thomas Winischhofer, Vienna, Austria.
8 * Redistribution and use in source and binary forms, with or without
9 * modification, are permitted provided that the following conditions
10 * are met:
11 * 1) Redistributions of source code must retain the above copyright
12 * notice, this list of conditions and the following disclaimer.
13 * 2) Redistributions in binary form must reproduce the above copyright
14 * notice, this list of conditions and the following disclaimer in the
15 * documentation and/or other materials provided with the distribution.
16 * 3) The name of the author may not be used to endorse or promote products
17 * derived from this software without specific prior written permission.
19 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
20 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
21 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
22 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
23 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
24 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
28 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30 * Author: Thomas Winischhofer <thomas@winischhofer.net>
34 #ifndef _SIS_VIDEOSTR_H_
35 #define _SIS_VIDEOSTR_H_
37 #define GET_PORT_PRIVATE(pScrn) \
38 (SISPortPrivPtr)((SISPTR(pScrn))->adaptor->pPortPrivates[0].ptr)
40 typedef struct {
41 void * handle;
42 CARD32 bufAddr[2];
44 UChar currentBuf;
46 short drw_x, drw_y, drw_w, drw_h;
47 short src_x, src_y, src_w, src_h;
48 int id;
49 short srcPitch, height;
51 char brightness;
52 UChar contrast;
53 char hue;
54 short saturation;
56 RegionRec clip;
57 CARD32 colorKey;
58 Bool autopaintColorKey;
60 Bool disablegfx;
61 Bool disablegfxlr;
63 Bool usechromakey;
64 Bool insidechromakey, yuvchromakey;
65 CARD32 chromamin, chromamax;
67 CARD32 videoStatus;
68 Bool overlayStatus;
69 Time offTime;
70 Time freeTime;
72 CARD32 displayMode;
73 Bool bridgeIsSlave;
75 Bool hasTwoOverlays; /* Chipset has two overlays */
76 Bool dualHeadMode; /* We're running in DHM */
78 Bool NoOverlay;
79 Bool PrevOverlay;
81 Bool AllowSwitchCRT;
82 int crtnum; /* 0=CRT1, 1=CRT2 */
84 Bool needToScale; /* Need to scale video */
86 Bool havetapscaler; /* 4tap scaler (340) */
88 Bool mustresettap;
90 int shiftValue; /* 315/330 series need word addr/pitch, 300 series double word */
92 short linebufMergeLimit;
93 CARD8 linebufmask;
95 short oldx1, oldx2, oldy1, oldy2;
96 #ifdef SISMERGED
97 short oldx1_2, oldx2_2, oldy1_2, oldy2_2;
98 Bool mustresettap2;
99 #endif
100 int mustwait;
102 Bool grabbedByV4L; /* V4L stuff */
103 int pitch;
104 int offset;
106 int modeflags; /* Flags field of current display mode */
108 int tvxpos, tvypos;
109 Bool updatetvxpos, updatetvypos;
111 Bool is661741760;
112 Bool is760;
113 Bool is340;
114 Bool is761;
115 Bool isXGI;
117 } SISPortPrivRec, *SISPortPrivPtr;
119 #endif