Imported Upstream version 1.15.1
[deb_xorg-server.git] / hw / xfree86 / i2c / bt829.h
CommitLineData
a09e091a
JB
1#ifndef __BT829_H__
2#define __BT829_H__
3
4#include "xf86i2c.h"
5
6typedef struct {
7 int tunertype; /* Must be set before init */
8 /* Private variables */
9 I2CDevRec d;
10
11 CARD8 brightness;
12 CARD8 ccmode;
13 CARD8 code;
14 CARD16 contrast;
15 CARD8 format;
16 int height;
17 CARD8 hue;
18 CARD8 len;
19 CARD8 mux;
20 CARD8 out_en;
21 CARD8 p_io;
22 CARD16 sat_u;
23 CARD16 sat_v;
24 CARD8 vbien;
25 CARD8 vbifmt;
26 int width;
27
28 CARD16 hdelay;
29 CARD16 hscale;
30 CARD16 vactive;
31 CARD16 vdelay;
32 CARD16 vscale;
33
34 CARD16 htotal;
35 CARD8 id;
36 CARD8 svideo_mux;
37} BT829Rec, *BT829Ptr;
38
39#define xf86_bt829_Detect bt829_Detect
40extern _X_EXPORT BT829Ptr bt829_Detect(I2CBusPtr b, I2CSlaveAddr addr);
41
42/* ATI card specific initialization */
43#define BT829_ATI_ADDR_1 0x8A
44#define BT829_ATI_ADDR_2 0x88
45
46#define xf86_bt829_ATIInit bt829_ATIInit
47extern _X_EXPORT int bt829_ATIInit(BT829Ptr bt);
48
49#define BT829_NTSC 1 /* NTSC-M */
50#define BT829_NTSC_JAPAN 2 /* NTSC-Japan */
51#define BT829_PAL 3 /* PAL-B,D,G,H,I */
52#define BT829_PAL_M 4 /* PAL-M */
53#define BT829_PAL_N 5 /* PAL-N */
54#define BT829_SECAM 6 /* SECAM */
55#define BT829_PAL_N_COMB 7 /* PAL-N combination */
56
57#define xf86_bt829_SetFormat bt829_SetFormat
58extern _X_EXPORT int bt829_SetFormat(BT829Ptr bt, CARD8 format);
59
60#define BT829_MUX2 1 /* ATI -> composite video */
61#define BT829_MUX0 2 /* ATI -> tv tuner */
62#define BT829_MUX1 3 /* ATI -> s-video */
63
64#define xf86_bt829_SetMux bt829_SetMux
65extern _X_EXPORT int bt829_SetMux(BT829Ptr bt, CARD8 mux);
66
67#define xf86_bt829_SetCaptSize bt829_SetCaptSize
68extern _X_EXPORT int bt829_SetCaptSize(BT829Ptr bt, int width, int height);
69
70#define xf86_bt829_SetBrightness bt829_SetBrightness
71extern _X_EXPORT void bt829_SetBrightness(BT829Ptr bt, int brightness);
72
73#define xf86_bt829_SetContrast bt829_SetContrast
74extern _X_EXPORT void bt829_SetContrast(BT829Ptr bt, int contrast);
75
76#define xf86_bt829_SetSaturation bt829_SetSaturation
77extern _X_EXPORT void bt829_SetSaturation(BT829Ptr bt, int saturation);
78
79#define xf86_bt829_SetTint bt829_SetTint
80extern _X_EXPORT void bt829_SetTint(BT829Ptr bt, int hue); /* Hue */
81
82#define xf86_bt829_SetOUT_EN bt829_SetOUT_EN
83extern _X_EXPORT void bt829_SetOUT_EN(BT829Ptr bt, BOOL out_en); /* VPOLE register */
84
85#define xf86_bt829_SetP_IO bt829_SetP_IO
86extern _X_EXPORT void bt829_SetP_IO(BT829Ptr bt, CARD8 p_io); /* P_IO register */
87
88extern _X_EXPORT int bt829_SetCC(BT829Ptr bt);
89
90#define BT829SymbolsList \
91 "bt829_Detect", \
92 "bt829_ATIInit", \
93 "bt829_SetFormat", \
94 "bt829_SetMux", \
95 "bt829_SetBrightness", \
96 "bt829_SetContrast", \
97 "bt829_SetSaturation", \
98 "bt829_SetTint", \
99 "bt829_SetCaptSize", \
100 "bt829_SetOUT_EN", \
101 "bt829_SetP_IO"
102
103#endif