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
11 #ifndef _STG4000INTERFACE_H
12 #define _STG4000INTERFACE_H
14 #include <linux/pci.h>
15 #include <video/kyro.h>
20 extern int InitialiseRamdac(volatile STG4000REG __iomem
*pSTGReg
, u32 displayDepth
,
21 u32 displayWidth
, u32 displayHeight
,
22 s32 HSyncPolarity
, s32 VSyncPolarity
,
25 extern void DisableRamdacOutput(volatile STG4000REG __iomem
*pSTGReg
);
26 extern void EnableRamdacOutput(volatile STG4000REG __iomem
*pSTGReg
);
29 * Timing generator setup
31 extern void DisableVGA(volatile STG4000REG __iomem
*pSTGReg
);
32 extern void StopVTG(volatile STG4000REG __iomem
*pSTGReg
);
33 extern void StartVTG(volatile STG4000REG __iomem
*pSTGReg
);
34 extern void SetupVTG(volatile STG4000REG __iomem
*pSTGReg
,
35 const struct kyrofb_info
* pTiming
);
37 extern u32
ProgramClock(u32 refClock
, u32 coreClock
, u32
*FOut
, u32
*ROut
, u32
*POut
);
38 extern int SetCoreClockPLL(volatile STG4000REG __iomem
*pSTGReg
, struct pci_dev
*pDev
);
43 extern void ResetOverlayRegisters(volatile STG4000REG __iomem
*pSTGReg
);
45 extern int CreateOverlaySurface(volatile STG4000REG __iomem
*pSTGReg
,
46 u32 ulWidth
, u32 ulHeight
,
49 u32
* retStride
, u32
* retUVStride
);
51 extern int SetOverlayBlendMode(volatile STG4000REG __iomem
*pSTGReg
,
53 u32 ulAlpha
, u32 ulColorKey
);
55 extern int SetOverlayViewPort(volatile STG4000REG __iomem
*pSTGReg
,
57 u32 right
, u32 bottom
);
59 extern void EnableOverlayPlane(volatile STG4000REG __iomem
*pSTGReg
);
61 #endif /* _STG4000INTERFACE_H */