diff options
author | Alex Deucher <agd5f@yahoo.com> | 2004-07-27 02:50:41 +0000 |
---|---|---|
committer | Alex Deucher <agd5f@yahoo.com> | 2004-07-27 02:50:41 +0000 |
commit | 9ae7f9446d049a1fad550f5f681bc557de158c10 (patch) | |
tree | 07008f97e27c681bdbe3a537a7e49db105b90ce5 /src/mga.h | |
parent | 8b030a847771f6b34bf38913eb6b53543f320f29 (diff) |
- enable maven support for TV detection, DPMS, and DDC on crtc2 on G400
(Ryan Underwood) (http://bugs.xfree86.org/show_bug.cgi?id=1098)
- expose I2CStart; needed for mga maven support (Ryan Underwood)
Diffstat (limited to 'src/mga.h')
-rw-r--r-- | src/mga.h | 44 |
1 files changed, 30 insertions, 14 deletions
@@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/mga/mga.h,v 1.86 2003/04/24 20:05:34 eich Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/mga/mga.h,v 1.87tsi Exp $ */ /* * MGA Millennium (MGA2064W) functions * @@ -99,18 +99,23 @@ typedef enum { #define OUTREG16(addr, val) MMIO_OUT16(pMga->IOBase, addr, val) #define OUTREG(addr, val) MMIO_OUT32(pMga->IOBase, addr, val) #else /* !EXTRADEBUG */ -CARD8 dbg_inreg8(ScrnInfoPtr,int,int); -CARD16 dbg_inreg16(ScrnInfoPtr,int,int); -CARD32 dbg_inreg32(ScrnInfoPtr,int,int); -void dbg_outreg8(ScrnInfoPtr,int,int); -void dbg_outreg16(ScrnInfoPtr,int,int); -void dbg_outreg32(ScrnInfoPtr,int,int); -#define INREG8(addr) dbg_inreg8(pScrn,addr,1) -#define INREG16(addr) dbg_inreg16(pScrn,addr,1) -#define INREG(addr) dbg_inreg32(pScrn,addr,1) -#define OUTREG8(addr,val) dbg_outreg8(pScrn,addr,val) -#define OUTREG16(addr,val) dbg_outreg16(pScrn,addr,val) -#define OUTREG(addr,val) dbg_outreg32(pScrn,addr,val) +CARD8 MGAdbg_inreg8(ScrnInfoPtr, int, int, char*); +CARD16 MGAdbg_inreg16(ScrnInfoPtr, int, int, char*); +CARD32 MGAdbg_inreg32(ScrnInfoPtr, int, int, char*); +void MGAdbg_outreg8(ScrnInfoPtr, int, int, char*); +void MGAdbg_outreg16(ScrnInfoPtr, int,int, char*); +void MGAdbg_outreg32(ScrnInfoPtr, int,int, char*); +#ifndef __GNUC__ +# define MGA_STRINGIZE(x) #x +# define MGA_STRINGIFY(x) MGA_STRINGIZE(x) +# define __FUNCTION__ MGA_STRINGIFY(__FILE__) ", line " MGA_STRINGIFY(__LINE__) +#endif +#define INREG8(addr) MGAdbg_inreg8(pScrn, addr, 1, __FUNCTION__) +#define INREG16(addr) MGAdbg_inreg16(pScrn, addr, 1, __FUNCTION__) +#define INREG(addr) MGAdbg_inreg32(pScrn, addr, 1, __FUNCTION__) +#define OUTREG8(addr,val) MGAdbg_outreg8(pScrn, addr, val, __FUNCTION__) +#define OUTREG16(addr,val) MGAdbg_outreg16(pScrn, addr, val, __FUNCTION__) +#define OUTREG(addr,val) MGAdbg_outreg32(pScrn, addr, val, __FUNCTION__) #endif /* EXTRADEBUG */ /* @@ -212,6 +217,7 @@ typedef struct { MessageType MemClkFrom; Bool SetMemClk; void (*LoadPalette)(ScrnInfoPtr, int, int*, LOCO*, VisualPtr); + void (*RestorePalette)(ScrnInfoPtr, unsigned char *); void (*PreInit)(ScrnInfoPtr); void (*Save)(ScrnInfoPtr, vgaRegPtr, MGARegPtr, Bool); void (*Restore)(ScrnInfoPtr, vgaRegPtr, MGARegPtr, Bool); @@ -368,7 +374,13 @@ typedef struct { unsigned int (*ddc1Read)(ScrnInfoPtr); void (*DDC1SetSpeed)(ScrnInfoPtr, xf86ddcSpeed); Bool (*i2cInit)(ScrnInfoPtr); - I2CBusPtr I2C; + I2CBusPtr DDC_Bus1; + I2CBusPtr DDC_Bus2; + I2CBusPtr Maven_Bus; + I2CDevPtr Maven; + char Maven_Version; + Bool UseMaven; + Bool UseMavenPM; Bool FBDev; int colorKey; int videoKey; @@ -408,8 +420,10 @@ typedef struct { #endif XF86VideoAdaptorPtr adaptor; Bool DualHeadEnabled; + Bool Crtc2IsTV; Bool SecondCrtc; Bool SecondOutput; + GDevPtr device; /* The hardware's real SrcOrg */ int realSrcOrg; @@ -569,6 +583,8 @@ Bool MgaInitDma(ScrnInfoPtr pScrn, int prim_size); #endif +Bool MGAMavenRead(ScrnInfoPtr pScrn, I2CByte reg, I2CByte *val); + void MGACRTC2Set(ScrnInfoPtr pScrn, xMODEINFO *pModeInfo); void MGAEnableSecondOutPut(ScrnInfoPtr pScrn, xMODEINFO *pModeInfo); void MGACRTC2SetPitch(ScrnInfoPtr pSrcn, xMODEINFO *pModeInfo); |