summaryrefslogtreecommitdiff
path: root/src/i810.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/i810.h')
-rw-r--r--src/i810.h341
1 files changed, 0 insertions, 341 deletions
diff --git a/src/i810.h b/src/i810.h
deleted file mode 100644
index 93b8b760..00000000
--- a/src/i810.h
+++ /dev/null
@@ -1,341 +0,0 @@
-
-/**************************************************************************
-
-Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas.
-Copyright © 2002 David Dawes
-
-All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person obtaining a
-copy of this software and associated documentation files (the
-"Software"), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sub license, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice (including the
-next paragraph) shall be included in all copies or substantial portions
-of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
-IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR
-ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-**************************************************************************/
-
-/*
- * Authors:
- * Keith Whitwell <keith@tungstengraphics.com>
- * David Dawes <dawes@xfree86.org>
- *
- */
-
-#ifndef _I810_H_
-#define _I810_H_
-
-#include <stdint.h>
-#include "compiler.h"
-#include "xf86PciInfo.h"
-#include "xf86Pci.h"
-#include "i810_reg.h"
-#include "xaa.h"
-#include "xf86Cursor.h"
-#include "xf86xv.h"
-#include "vbe.h"
-#include "vgaHW.h"
-
-#include "xorg-server.h"
-#include <pciaccess.h>
-
-#ifdef XF86DRI
-#include "xf86drm.h"
-#include "sarea.h"
-#define _XF86DRI_SERVER_
-#include "dri.h"
-#include "GL/glxint.h"
-#include "i810_dri.h"
-#endif
-
-#include "common.h"
-#include "i810_ring.h"
-
-#define I810_VERSION 4000
-#define I810_NAME "intel"
-#define I810_DRIVER_NAME "intel"
-
-#define INTEL_VERSION_MAJOR PACKAGE_VERSION_MAJOR
-#define INTEL_VERSION_MINOR PACKAGE_VERSION_MINOR
-#define INTEL_VERSION_PATCH PACKAGE_VERSION_PATCHLEVEL
-
-/* HWMC Surfaces */
-#define I810_MAX_SURFACES 7
-#define I810_MAX_SUBPICTURES 2
-#define I810_TOTAL_SURFACES 9
-
-/* Globals */
-
-typedef struct _I810Rec *I810Ptr;
-
-typedef void (*I810WriteIndexedByteFunc)(I810Ptr pI810, IOADDRESS addr,
- uint8_t index, uint8_t value);
-typedef uint8_t(*I810ReadIndexedByteFunc)(I810Ptr pI810, IOADDRESS addr,
- uint8_t index);
-typedef void (*I810WriteByteFunc)(I810Ptr pI810, IOADDRESS addr,
- uint8_t value);
-typedef uint8_t(*I810ReadByteFunc)(I810Ptr pI810, IOADDRESS addr);
-
-extern void I810SetTiledMemory(ScrnInfoPtr pScrn, int nr, unsigned start,
- unsigned pitch, unsigned size);
-
-typedef struct {
- unsigned long Start;
- unsigned long End;
- unsigned long Size;
-} I810MemRange;
-
-typedef struct {
- int tail_mask;
- I810MemRange mem;
- unsigned char *virtual_start;
- int head;
- int tail;
- int space;
-} I810RingBuffer;
-
-typedef struct {
- unsigned char DisplayControl;
- unsigned char PixelPipeCfg0;
- unsigned char PixelPipeCfg1;
- unsigned char PixelPipeCfg2;
- unsigned short VideoClk2_M;
- unsigned short VideoClk2_N;
- unsigned char VideoClk2_DivisorSel;
- unsigned char AddressMapping;
- unsigned char IOControl;
- unsigned char BitBLTControl;
- unsigned char ExtVertTotal;
- unsigned char ExtVertDispEnd;
- unsigned char ExtVertSyncStart;
- unsigned char ExtVertBlankStart;
- unsigned char ExtHorizTotal;
- unsigned char ExtHorizBlank;
- unsigned char ExtOffset;
- unsigned char InterlaceControl;
- unsigned int LMI_FIFO_Watermark;
-
- unsigned int LprbTail;
- unsigned int LprbHead;
- unsigned int LprbStart;
- unsigned int LprbLen;
-
- unsigned int Fence[8];
-
- unsigned short OverlayActiveStart;
- unsigned short OverlayActiveEnd;
-
-} I810RegRec, *I810RegPtr;
-
-typedef struct _I810Rec {
- unsigned char *MMIOBase;
- unsigned char *FbBase;
- long FbMapSize;
- long DepthOffset;
- long BackOffset;
- int cpp;
- int MaxClock;
-
- unsigned int bufferOffset; /* for I810SelectBuffer */
- Bool DoneFrontAlloc;
- BoxRec FbMemBox;
- I810MemRange FrontBuffer;
- I810MemRange BackBuffer;
- I810MemRange DepthBuffer;
- I810MemRange TexMem;
- I810MemRange Scratch;
- I810MemRange BufferMem;
- I810MemRange ContextMem;
- I810MemRange MC;
-
- int auxPitch;
- int auxPitchBits;
-
- Bool CursorIsARGB;
- int CursorOffset;
- unsigned long CursorPhysical;
- unsigned long CursorStart;
- int CursorARGBOffset;
- unsigned long CursorARGBPhysical;
- unsigned long CursorARGBStart;
- unsigned long OverlayPhysical;
- unsigned long OverlayStart;
- int colorKey;
- unsigned int surfaceAllocation[I810_TOTAL_SURFACES];
- int numSurfaces;
-
- DGAModePtr DGAModes;
- int numDGAModes;
- Bool DGAactive;
- int DGAViewportStatus;
-
- int Chipset;
- unsigned long LinearAddr;
- unsigned long MMIOAddr;
- IOADDRESS ioBase;
- EntityInfoPtr pEnt;
- struct pci_device *PciInfo;
-
- I810RingBuffer *LpRing;
- unsigned int BR[20];
-
- int LmFreqSel;
-
- int VramKey;
- unsigned long VramOffset;
- int DcacheKey;
- unsigned long DcacheOffset;
- int HwcursKey;
- unsigned long HwcursOffset;
- int ARGBHwcursKey;
- unsigned long ARGBHwcursOffset;
-
- int GttBound;
-
- I810MemRange DcacheMem;
- I810MemRange SysMem;
-
- I810MemRange SavedDcacheMem;
- I810MemRange SavedSysMem;
-
- unsigned char **ScanlineColorExpandBuffers;
- int NumScanlineColorExpandBuffers;
- int nextColorExpandBuf;
-
- I810RegRec SavedReg;
- I810RegRec ModeReg;
-
- XAAInfoRecPtr AccelInfoRec;
- xf86CursorInfoPtr CursorInfoRec;
- CloseScreenProcPtr CloseScreen;
- ScreenBlockHandlerProcPtr BlockHandler;
-
- I810WriteIndexedByteFunc writeControl;
- I810ReadIndexedByteFunc readControl;
- I810WriteByteFunc writeStandard;
- I810ReadByteFunc readStandard;
-
- Bool directRenderingDisabled; /* DRI disabled in PreInit */
- Bool directRenderingEnabled; /* false if XF86DRI not defined. */
-
-#ifdef XF86DRI
- int LockHeld;
- DRIInfoPtr pDRIInfo;
- int drmSubFD;
- int numVisualConfigs;
- __GLXvisualConfig *pVisualConfigs;
- I810ConfigPrivPtr pVisualConfigsPriv;
- unsigned long dcacheHandle;
- unsigned long backHandle;
- unsigned long zHandle;
- unsigned long cursorHandle;
- unsigned long cursorARGBHandle;
- unsigned long xvmcHandle;
- unsigned long sysmemHandle;
- Bool agpAcquired;
- drm_handle_t buffer_map;
- drm_handle_t ring_map;
- drm_handle_t overlay_map;
- drm_handle_t mc_map;
- drm_handle_t xvmcContext;
-#endif
- Bool agpAcquired2d;
-
- XF86VideoAdaptorPtr adaptor;
- OptionInfoPtr Options;
-
- int configured_device;
-
- Bool showCache;
- Bool noAccel;
- Bool allowPageFlip;
- Bool have3DWindows;
- int drmMinor;
-} I810Rec;
-
-#define I810PTR(p) ((I810Ptr)((p)->driverPrivate))
-
-#define I810_SELECT_FRONT 0
-#define I810_SELECT_BACK 1
-#define I810_SELECT_DEPTH 2
-
-#ifdef XF86DRI
-extern Bool I810DRIScreenInit(ScreenPtr pScreen);
-extern void I810DRICloseScreen(ScreenPtr pScreen);
-extern Bool I810DRIFinishScreenInit(ScreenPtr pScreen);
-extern Bool I810DRILeave(ScrnInfoPtr pScrn);
-extern Bool I810DRIEnter(ScrnInfoPtr pScrn);
-#endif
-extern Bool I810InitDma(ScrnInfoPtr pScrn);
-extern Bool I810CleanupDma(ScrnInfoPtr pScrn);
-
-#define I810PTR(p) ((I810Ptr)((p)->driverPrivate))
-#define I810REGPTR(p) (&(I810PTR(p)->ModeReg))
-
-extern Bool I810CursorInit(ScreenPtr pScreen);
-extern Bool I810AccelInit(ScreenPtr pScreen);
-extern void I810SetPIOAccess(I810Ptr pI810);
-extern void I810SetMMIOAccess(I810Ptr pI810);
-extern unsigned int I810CalcWatermark(ScrnInfoPtr pScrn, double freq,
- Bool dcache);
-extern void I810PrintErrorState(ScrnInfoPtr pScrn);
-extern int I810WaitLpRing(ScrnInfoPtr pScrn, int n, int timeout_millis);
-extern void I810Sync(ScrnInfoPtr pScrn);
-extern unsigned long I810LocalToPhysical(ScrnInfoPtr pScrn,
- unsigned long local);
-extern int I810AllocLow(I810MemRange * result, I810MemRange * pool,
- int size);
-extern int I810AllocHigh(I810MemRange * result, I810MemRange * pool,
- int size);
-extern Bool I810AllocateFront(ScrnInfoPtr pScrn);
-
-extern int I810AllocateGARTMemory(ScrnInfoPtr pScrn);
-extern void I810FreeGARTMemory(ScrnInfoPtr pScrn);
-
-extern Bool I810BindGARTMemory(ScrnInfoPtr pScrn);
-extern Bool I810UnbindGARTMemory(ScrnInfoPtr pScrn);
-
-extern int I810CheckAvailableMemory(ScrnInfoPtr pScrn);
-
-extern Bool I810SwitchMode(int scrnIndex, DisplayModePtr mode, int flags);
-extern void I810AdjustFrame(int scrnIndex, int x, int y, int flags);
-
-extern void I810SetupForScreenToScreenCopy(ScrnInfoPtr pScrn, int xdir,
- int ydir, int rop,
- unsigned int planemask,
- int trans_color);
-extern void I810SubsequentScreenToScreenCopy(ScrnInfoPtr pScrn, int srcX,
- int srcY, int dstX, int dstY,
- int w, int h);
-extern void I810SetupForSolidFill(ScrnInfoPtr pScrn, int color, int rop,
- unsigned int planemask);
-extern void I810SubsequentSolidFillRect(ScrnInfoPtr pScrn, int x, int y,
- int w, int h);
-
-extern void I810SelectBuffer(ScrnInfoPtr pScrn, int buffer);
-
-extern void I810RefreshRing(ScrnInfoPtr pScrn);
-extern void I810EmitFlush(ScrnInfoPtr pScrn);
-extern void I810EmitInvarientState(ScrnInfoPtr pScrn);
-
-extern Bool I810DGAInit(ScreenPtr pScreen);
-
-extern void I810InitVideo(ScreenPtr pScreen);
-extern void I810InitMC(ScreenPtr pScreen);
-
-extern const OptionInfoRec *I810AvailableOptions(int chipid, int busid);
-
-#endif /* _I810_H_ */