/* * linux/drivers/video/kyro/STG4000Interface.h * * Copyright (C) 2002 STMicroelectronics * * This file is subject to the terms and conditions of the GNU General Public * License. See the file COPYING in the main directory of this archive * for more details. */ #ifndef _STG4000INTERFACE_H #define _STG4000INTERFACE_H #include <linux/pci.h> #include <video/kyro.h> /* * Ramdac Setup */ extern int InitialiseRamdac(volatile STG4000REG __iomem *pSTGReg, u32 displayDepth, u32 displayWidth, u32 displayHeight, s32 HSyncPolarity, s32 VSyncPolarity, u32 *pixelClock); extern void DisableRamdacOutput(volatile STG4000REG __iomem *pSTGReg); extern void EnableRamdacOutput(volatile STG4000REG __iomem *pSTGReg); /* * Timing generator setup */ extern void DisableVGA(volatile STG4000REG __iomem *pSTGReg); extern void StopVTG(volatile STG4000REG __iomem *pSTGReg); extern void StartVTG(volatile STG4000REG __iomem *pSTGReg); extern void SetupVTG(volatile STG4000REG __iomem *pSTGReg, const struct kyrofb_info * pTiming); extern u32 ProgramClock(u32 refClock, u32 coreClock, u32 *FOut, u32 *ROut, u32 *POut); extern int SetCoreClockPLL(volatile STG4000REG __iomem *pSTGReg, struct pci_dev *pDev); /* * Overlay setup */ extern void ResetOverlayRegisters(volatile STG4000REG __iomem *pSTGReg); extern int CreateOverlaySurface(volatile STG4000REG __iomem *pSTGReg, u32 ulWidth, u32 ulHeight, int bLinear, u32 ulOverlayOffset, u32 * retStride, u32 * retUVStride); extern int SetOverlayBlendMode(volatile STG4000REG __iomem *pSTGReg, OVRL_BLEND_MODE mode, u32 ulAlpha, u32 ulColorKey); extern int SetOverlayViewPort(volatile STG4000REG __iomem *pSTGReg, u32 left, u32 top, u32 right, u32 bottom); extern void EnableOverlayPlane(volatile STG4000REG __iomem *pSTGReg); #endif /* _STG4000INTERFACE_H */