STG4000Interface.h (1897B)
1/* 2 * linux/drivers/video/kyro/STG4000Interface.h 3 * 4 * Copyright (C) 2002 STMicroelectronics 5 * 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 */ 10 11#ifndef _STG4000INTERFACE_H 12#define _STG4000INTERFACE_H 13 14#include <linux/pci.h> 15#include <video/kyro.h> 16 17/* 18 * Ramdac Setup 19 */ 20extern int InitialiseRamdac(volatile STG4000REG __iomem *pSTGReg, u32 displayDepth, 21 u32 displayWidth, u32 displayHeight, 22 s32 HSyncPolarity, s32 VSyncPolarity, 23 u32 *pixelClock); 24 25extern void DisableRamdacOutput(volatile STG4000REG __iomem *pSTGReg); 26extern void EnableRamdacOutput(volatile STG4000REG __iomem *pSTGReg); 27 28/* 29 * Timing generator setup 30 */ 31extern void DisableVGA(volatile STG4000REG __iomem *pSTGReg); 32extern void StopVTG(volatile STG4000REG __iomem *pSTGReg); 33extern void StartVTG(volatile STG4000REG __iomem *pSTGReg); 34extern void SetupVTG(volatile STG4000REG __iomem *pSTGReg, 35 const struct kyrofb_info * pTiming); 36 37extern u32 ProgramClock(u32 refClock, u32 coreClock, u32 *FOut, u32 *ROut, u32 *POut); 38extern int SetCoreClockPLL(volatile STG4000REG __iomem *pSTGReg, struct pci_dev *pDev); 39 40/* 41 * Overlay setup 42 */ 43extern void ResetOverlayRegisters(volatile STG4000REG __iomem *pSTGReg); 44 45extern int CreateOverlaySurface(volatile STG4000REG __iomem *pSTGReg, 46 u32 ulWidth, u32 ulHeight, 47 int bLinear, 48 u32 ulOverlayOffset, 49 u32 * retStride, u32 * retUVStride); 50 51extern int SetOverlayBlendMode(volatile STG4000REG __iomem *pSTGReg, 52 OVRL_BLEND_MODE mode, 53 u32 ulAlpha, u32 ulColorKey); 54 55extern int SetOverlayViewPort(volatile STG4000REG __iomem *pSTGReg, 56 u32 left, u32 top, 57 u32 right, u32 bottom); 58 59extern void EnableOverlayPlane(volatile STG4000REG __iomem *pSTGReg); 60 61#endif /* _STG4000INTERFACE_H */