Back to home page

OSCL-LXR

 
 

    


0001 /*
0002  *  linux/drivers/video/kyro/STG4000Interface.h
0003  *
0004  *  Copyright (C) 2002 STMicroelectronics
0005  *
0006  * This file is subject to the terms and conditions of the GNU General Public
0007  * License.  See the file COPYING in the main directory of this archive
0008  * for more details.
0009  */
0010 
0011 #ifndef _STG4000INTERFACE_H
0012 #define _STG4000INTERFACE_H
0013 
0014 #include <linux/pci.h>
0015 #include <video/kyro.h>
0016 
0017 /*
0018  * Ramdac Setup
0019  */
0020 extern int InitialiseRamdac(volatile STG4000REG __iomem *pSTGReg, u32 displayDepth,
0021                 u32 displayWidth, u32 displayHeight,
0022                 s32 HSyncPolarity, s32 VSyncPolarity,
0023                 u32 *pixelClock);
0024 
0025 extern void DisableRamdacOutput(volatile STG4000REG __iomem *pSTGReg);
0026 extern void EnableRamdacOutput(volatile STG4000REG __iomem *pSTGReg);
0027 
0028 /*
0029  * Timing generator setup
0030  */
0031 extern void DisableVGA(volatile STG4000REG __iomem *pSTGReg);
0032 extern void StopVTG(volatile STG4000REG __iomem *pSTGReg);
0033 extern void StartVTG(volatile STG4000REG __iomem *pSTGReg);
0034 extern void SetupVTG(volatile STG4000REG __iomem *pSTGReg,
0035              const struct kyrofb_info * pTiming);
0036 
0037 extern u32 ProgramClock(u32 refClock, u32 coreClock, u32 *FOut, u32 *ROut, u32 *POut);
0038 extern int SetCoreClockPLL(volatile STG4000REG __iomem *pSTGReg, struct pci_dev *pDev);
0039 
0040 /*
0041  * Overlay setup
0042  */
0043 extern void ResetOverlayRegisters(volatile STG4000REG __iomem *pSTGReg);
0044 
0045 extern int CreateOverlaySurface(volatile STG4000REG __iomem *pSTGReg,
0046                 u32 ulWidth, u32 ulHeight,
0047                 int bLinear,
0048                 u32 ulOverlayOffset,
0049                 u32 * retStride, u32 * retUVStride);
0050 
0051 extern int SetOverlayBlendMode(volatile STG4000REG __iomem *pSTGReg,
0052                    OVRL_BLEND_MODE mode,
0053                    u32 ulAlpha, u32 ulColorKey);
0054 
0055 extern int SetOverlayViewPort(volatile STG4000REG __iomem *pSTGReg,
0056                   u32 left, u32 top,
0057                   u32 right, u32 bottom);
0058 
0059 extern void EnableOverlayPlane(volatile STG4000REG __iomem *pSTGReg);
0060 
0061 #endif /* _STG4000INTERFACE_H */