initial commit with v2.6.9
[linux-2.6.9-moxart.git] / drivers / video / kyro / STG4000Interface.h
blob5845dee93eab85942fb74b57d6006bf2e992ddf3
1 /*
2 * linux/drivers/video/kyro/STG4000Interface.h
4 * Copyright (C) 2002 STMicroelectronics
6 * This file is subject to the terms and conditions of the GNU General Public
7 * License. See the file COPYING in the main directory of this archive
8 * for more details.
9 */
11 #ifndef _STG4000INTERFACE_H
12 #define _STG4000INTERFACE_H
14 struct pci_dev;
17 * Ramdac Setup
19 extern int InitialiseRamdac(volatile STG4000REG *pSTGReg, u32 displayDepth,
20 u32 displayWidth, u32 displayHeight,
21 s32 HSyncPolarity, s32 VSyncPolarity,
22 u32 *pixelClock);
24 extern void DisableRamdacOutput(volatile STG4000REG * pSTGReg);
25 extern void EnableRamdacOutput(volatile STG4000REG * pSTGReg);
28 * Timing generator setup
30 extern void DisableVGA(volatile STG4000REG * pSTGReg);
31 extern void StopVTG(volatile STG4000REG * pSTGReg);
32 extern void StartVTG(volatile STG4000REG * pSTGReg);
33 extern void SetupVTG(volatile STG4000REG * pSTGReg,
34 const struct kyrofb_info * pTiming);
36 extern u32 ProgramClock(u32 refClock, u32 coreClock, u32 *FOut, u32 *ROut, u32 *POut);
37 extern int SetCoreClockPLL(volatile STG4000REG * pSTGReg, struct pci_dev *pDev);
40 * Overlay setup
42 extern void ResetOverlayRegisters(volatile STG4000REG * pSTGReg);
44 extern int CreateOverlaySurface(volatile STG4000REG * pSTGReg,
45 u32 ulWidth, u32 ulHeight,
46 int bLinear,
47 u32 ulOverlayOffset,
48 u32 * retStride, u32 * retUVStride);
50 extern int SetOverlayBlendMode(volatile STG4000REG * pSTGReg,
51 OVRL_BLEND_MODE mode,
52 u32 ulAlpha, u32 ulColorKey);
54 extern int SetOverlayViewPort(volatile STG4000REG * pSTGReg,
55 u32 left, u32 top,
56 u32 right, u32 bottom);
58 extern void EnableOverlayPlane(volatile STG4000REG * pSTGReg);
60 #endif /* _STG4000INTERFACE_H */