diff options
author | Matthieu Herrb <matthieu@cvs.openbsd.org> | 2006-11-26 20:04:21 +0000 |
---|---|---|
committer | Matthieu Herrb <matthieu@cvs.openbsd.org> | 2006-11-26 20:04:21 +0000 |
commit | 85b8022e36c5bde7945354cb63ead06f93780c91 (patch) | |
tree | 09a70f61102ceeb32dea5656f65128c5db109c4c /driver/xf86-video-glint/DRI.txt | |
parent | 825703dbe31e6b96e993914ea7a3ab0d0db77ca1 (diff) |
Importing xf86-video-glint 1.1.1
Diffstat (limited to 'driver/xf86-video-glint/DRI.txt')
-rw-r--r-- | driver/xf86-video-glint/DRI.txt | 407 |
1 files changed, 407 insertions, 0 deletions
diff --git a/driver/xf86-video-glint/DRI.txt b/driver/xf86-video-glint/DRI.txt new file mode 100644 index 000000000..56a87c9f7 --- /dev/null +++ b/driver/xf86-video-glint/DRI.txt @@ -0,0 +1,407 @@ + + GLINT State Transition Strategy + + +Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas. +All Rights Reserved. + +Permission is granted to make and distribute verbatim copies +of this document provided the copyright notice and this permission +notice are preserved on all copies. + +$XFree86: xc/programs/Xserver/hw/xfree86/drivers/glint/DRI.txt,v 1.1 1999/06/14 07:31:50 dawes Exp $ + +GLINT State Transition Strategy + +Direct Rendering requires a coordinated method of state management +across all drivers accessing this device. This document defines the +expected behavior of all drivers participating in direct rendering with +this device. + +Currently only the GMX2000 supports direct rendering. + + +Section 1) State Transition Types + +The direct rendering document entitled "state-mgmt.txt" gives a device +independent overview on the different types of state transitions. This +section gives a more detailed description of GLINT specific hardware state. + +No context switch--no state saves or restores will be done for transitions, +however the device can be busy executing commands from previous accesses to +the device. + +X context switch--the intersection of 2D and 3D state will be saved +and restored. This is the state marked as DDX/3DClient in Appendix A. +The device will be synced and idle after this switch. + +3D context switch--all 3D state will be saved and restored. 3D state is +defined as all registered owned by the 3DClient driver. See Appendix A +for more details. The device will be synced and idle after this switch. + +The registers owned by the DRM kernel module and submodules are not +managed by context switches. + + +Section 2) VT Switching and DGA Access + +VT Switching away from the X Server or client access to the device +framebuffer via DGA require the device to be locked away from 3D direct +rendering accesses. The X Server will hold the lock on behalf of these +services until access is restored. + + +Section 3) Potential Optimizations + +Lighten the number of registers required for context switches by using a +mechanism to determine whether stipple or pattern registers need to be +saved/restored. This optimization has not been done for the initial +direct rendering infrastructure sample implementation. + + +Appendix A: GMX2000 Register Ownership + +driver column contains: + DDX - DDX driver manages register + DRM - DRM or DRM subdriver manages register + 3DClient - 3D Client Driver manges register + DDX/3DClient, DDX/DRM, 3DClient/DRM - register access is shared + +if the RO (read only) column is marked with a *, then no writes are +permitted to this register, and thus no drivers own it. + +primary and secondary columns contain the default values after +initialization. primary is the master rasterizer, secondary is the +slave rasterizer. + + +Name offset primary secondary RO driver +------------------------------------------------------------------------------ +ResetStatus o=0000 0x00000000 0x00000000 DDX/DRM +IntEnable o=0008 0x00000000 0x00000000 DRM +IntFlags o=0010 0x00000000 0x00000018 DRM +InFIFOSpace o=0018 0x00000000 0x00000021 * +OutFIFOWords o=0020 0x00000000 0x00000000 * +DMAAddress o=0028 0x00000000 0x00000000 DRM +DMACount o=0030 0x00000000 0x00000000 DRM +ErrorFlags o=0038 0x00000000 0x00000002 DRM +VClkCtl o=0040 0x00000000 0x00000000 DDX +TestRegister o=0048 0x00000000 0x00000000 DDX +Aperture0 o=0050 0x00000000 0x00000000 DDX +Aperture1 o=0058 0x00000000 0x00000000 DDX +DMAControl o=0060 0x00000000 0x00000000 DRM +FIFODis o=0068 0x00000000 0x00000001 DDX +LBMemoryCtl o=1000 0x00000000 0x770883ff DDX +LBMemoryEDO o=1008 0x00000000 0x77080000 DDX +FBMemoryCtl o=1800 0x00000000 0x63c00800 DDX +FBModeSel o=1808 0x00000000 0x00000907 DDX +FBGCWrMask o=1810 0x00000000 0xffffffff * +FBGCColorLower o=1818 0x00000000 0x00828282 * +FBTXMemCtl o=1820 0x00000000 0x00000002 DDX +FBWrMask o=1830 0x00000000 0xffffffff * +FBGCColorUpper o=1838 0x00000000 0x00828282 * +VTGHLimit o=3000 0x00000000 0x000000c8 DDX +VTGHSyncStart o=3008 0x00ffffff 0x00000006 DDX +VTGHSyncEnd o=3010 0x00000000 0x00000016 DDX +VTGHBlankEnd o=3018 0x00ffffff 0x00000028 DDX +VTGVLimit o=3020 0x00000000 0x000001fb DDX +VTGVSyncStart o=3028 0x00ffffff 0x00000004 DDX +VTGVSyncEnd o=3030 0x00000000 0x0000000a DDX +VTGVBlankEnd o=3038 0x00ffffff 0x0000001b DDX +VTGHGateStart o=3040 0x00000000 0x00000027 DDX +VTGHGateEnd o=3048 0x00ffffff 0x000000c7 DDX +VTGVGateStart o=3050 0x00000000 0x0000001a DDX +VTGVGateEnd o=3058 0x00ffffff 0x0000001b DDX +VTGPolarity o=3060 0x00000000 0x000000ba DDX +VTGFrameRowAddr o=3068 0x00ffffff 0x00000000 DDX +VTGVLineNumber o=3070 0x00000000 0x00000079 DDX +VTGSerialClk o=3078 0x00ffffff 0x00000002 DDX +VTGModeCtl o=3080 0x00000000 0x00000000 DDX +GInFIFOSpace o=0018 0x00000000 * +GDMAAddress o=0028 0x00000000 DRM +GDMACount o=0030 0x00000000 DRM +GDMAControl o=0060 0x00000000 DRM +GOutDMA o=0080 0x00000000 DRM +GOutDMACount o=0088 0x00000000 DRM +GResetStatus o=0800 0x00000000 DRM +GIntEnable o=0808 0x00000000 DRM +GIntFlags o=0810 0x00000000 DRM +GErrorFlags o=0838 0x00000000 DRM +GTestRegister o=0848 0x00000000 DDX +GFIFODis o=0868 0x00000000 DDX +GChipConfig o=0870 0x00000000 DDX +GCSRAperture o=0878 0x00000000 DDX +GPageTableAddr o=0c00 0x00000000 DRM +GPageTableLength o=0c08 0x00000000 DRM +GDelayTimer o=0c38 0x00000000 DRM +GCommandMode o=0c40 0x00000000 DRM +GCommandIntEnable o=0c48 0x00000000 DRM +GCommandIntFlags o=0c50 0x00000000 DRM +GCommandErrorFlags o=0c58 0x00000000 DRM +GCommandStatus o=0c60 0x00000000 * +GCommandFaultingAddr o=0c68 0x00000000 * +GVertexFaultingAddr o=0c70 0x00000000 * +GWriteFaultingAddr o=0c88 0x00000000 * +GFeedbackSelectCount o=0c98 0x00000000 * +GGammaProcessorMode o=0cb8 0x00000000 DDX +GVGAShadow o=0d00 0x00000000 DDX +GMultGLINTAperture o=0d08 0x00000000 DDX +GMultGLINT1 o=0d10 0x00000000 DDX +GMultGLINT2 o=0d18 0x00000000 DDX +StartXDom t=0000 undefined undefined DDX/3DClient +dXDom t=0001 undefined undefined DDX/3DClient +StartXSub t=0002 undefined undefined DDX/3DClient +dXSub t=0003 undefined undefined DDX/3DClient +StartY t=0004 undefined undefined DDX/3DClient +dY t=0005 undefined undefined DDX/3DClient +GLINTCount t=0006 undefined undefined DDX/3DClient +PointTable0 t=0010 undefined undefined DDX/3DClient +PointTable1 t=0011 undefined undefined DDX/3DClient +PointTable2 t=0012 undefined undefined DDX/3DClient +PointTable3 t=0013 undefined undefined DDX/3DClient +RasterizerMode t=0014 undefined undefined DDX/3DClient +YLimits t=0015 undefined undefined DDX/3DClient +ScanLineOwnership t=0016 0x00000001 0x00000005 DDX +PixelSize t=0018 undefined undefined DDX/3DClient +ScissorMode t=0030 undefined undefined DDX/3DClient +ScissorMinXY t=0031 undefined undefined DDX/3DClient +ScissorMaxXY t=0032 undefined undefined DDX/3DClient +ScreenSize t=0033 undefined undefined DDX/3DClient +AreaStippleMode t=0034 undefined undefined DDX/3DClient +LineStippleMode t=0035 undefined undefined DDX/3DClient +LoadLineStippleCounters t=0036 undefined undefined DDX/3DClient +WindowOrigin t=0039 undefined undefined DDX/3DClient +AreaStipplePattern0 t=0040 undefined undefined DDX/3DClient +AreaStipplePattern1 t=0041 undefined undefined DDX/3DClient +AreaStipplePattern2 t=0042 undefined undefined DDX/3DClient +AreaStipplePattern3 t=0043 undefined undefined DDX/3DClient +AreaStipplePattern4 t=0044 undefined undefined DDX/3DClient +AreaStipplePattern5 t=0045 undefined undefined DDX/3DClient +AreaStipplePattern6 t=0046 undefined undefined DDX/3DClient +AreaStipplePattern7 t=0047 undefined undefined DDX/3DClient +AreaStipplePattern8 t=0048 undefined undefined DDX/3DClient +AreaStipplePattern9 t=0049 undefined undefined DDX/3DClient +AreaStipplePattern10 t=004a undefined undefined DDX/3DClient +AreaStipplePattern11 t=004b undefined undefined DDX/3DClient +AreaStipplePattern12 t=004c undefined undefined DDX/3DClient +AreaStipplePattern13 t=004d undefined undefined DDX/3DClient +AreaStipplePattern14 t=004e undefined undefined DDX/3DClient +AreaStipplePattern15 t=004f undefined undefined DDX/3DClient +AreaStipplePattern16 t=0050 undefined undefined DDX/3DClient +AreaStipplePattern17 t=0051 undefined undefined DDX/3DClient +AreaStipplePattern18 t=0052 undefined undefined DDX/3DClient +AreaStipplePattern19 t=0053 undefined undefined DDX/3DClient +AreaStipplePattern20 t=0054 undefined undefined DDX/3DClient +AreaStipplePattern21 t=0055 undefined undefined DDX/3DClient +AreaStipplePattern22 t=0056 undefined undefined DDX/3DClient +AreaStipplePattern23 t=0057 undefined undefined DDX/3DClient +AreaStipplePattern24 t=0058 undefined undefined DDX/3DClient +AreaStipplePattern25 t=0059 undefined undefined DDX/3DClient +AreaStipplePattern26 t=005a undefined undefined DDX/3DClient +AreaStipplePattern27 t=005b undefined undefined DDX/3DClient +AreaStipplePattern28 t=005c undefined undefined DDX/3DClient +AreaStipplePattern29 t=005d undefined undefined DDX/3DClient +AreaStipplePattern30 t=005e undefined undefined DDX/3DClient +AreaStipplePattern31 t=005f undefined undefined DDX/3DClient +RouterMode t=0108 undefined undefined DDX/3DClient +TextureAddressMode t=0070 undefined undefined DDX/3DClient +SStart t=0071 undefined undefined 3DClient +dSdx t=0072 undefined undefined 3DClient +dSdyDom t=0073 undefined undefined 3DClient +TStart t=0074 undefined undefined 3DClient +dTdx t=0075 undefined undefined 3DClient +dTdyDom t=0076 undefined undefined 3DClient +QStart t=0077 undefined undefined 3DClient +dQdx t=0078 undefined undefined 3DClient +dQdyDom t=0079 undefined undefined 3DClient +LOD t=007a undefined undefined 3DClient +dSdy t=007b undefined undefined 3DClient +dTdy t=007c undefined undefined 3DClient +dQdy t=007d undefined undefined 3DClient +TextureReadMode t=0090 undefined undefined DDX/3DClient +TextureFormat t=0091 undefined undefined 3DClient +TextureCacheControl t=0092 undefined undefined 3DClient +GLINTBorderColor t=0095 undefined undefined 3DClient +TexelLUTIndex t=0098 undefined undefined 3DClient +TexelLUTData t=0099 undefined undefined 3DClient +TexelLUTAddress t=009a undefined undefined 3DClient +TexelLUTTransfer t=009b undefined undefined 3DClient +TextureFilterMode t=009c undefined undefined 3DClient +TextureChromaUpper t=009d undefined undefined 3DClient +TextureChromaLower t=009e undefined undefined 3DClient +TxBaseAddr0 t=00a0 undefined undefined 3DClient +TxBaseAddr1 t=00a1 undefined undefined 3DClient +TxBaseAddr2 t=00a2 undefined undefined 3DClient +TxBaseAddr3 t=00a3 undefined undefined 3DClient +TxBaseAddr4 t=00a4 undefined undefined 3DClient +TxBaseAddr5 t=00a5 undefined undefined 3DClient +TxBaseAddr6 t=00a6 undefined undefined 3DClient +TxBaseAddr7 t=00a7 undefined undefined 3DClient +TxBaseAddr8 t=00a8 undefined undefined 3DClient +TxBaseAddr9 t=00a9 undefined undefined 3DClient +TxBaseAddr10 t=00aa undefined undefined 3DClient +TxBaseAddr11 t=00ab undefined undefined 3DClient +TexelLUT0 t=01d0 undefined undefined 3DClient +TexelLUT1 t=01d1 undefined undefined 3DClient +TexelLUT2 t=01d2 undefined undefined 3DClient +TexelLUT3 t=01d3 undefined undefined 3DClient +TexelLUT4 t=01d4 undefined undefined 3DClient +TexelLUT5 t=01d5 undefined undefined 3DClient +TexelLUT6 t=01d6 undefined undefined 3DClient +TexelLUT7 t=01d7 undefined undefined 3DClient +TexelLUT8 t=01d8 undefined undefined 3DClient +TexelLUT9 t=01d9 undefined undefined 3DClient +TexelLUT10 t=01da undefined undefined 3DClient +TexelLUT11 t=01db undefined undefined 3DClient +TexelLUT12 t=01dc undefined undefined 3DClient +TexelLUT13 t=01dd undefined undefined 3DClient +TexelLUT14 t=01de undefined undefined 3DClient +TexelLUT15 t=01df undefined undefined 3DClient +Texel0 t=00c0 undefined undefined 3DClient +Texel1 t=00c1 undefined undefined 3DClient +Texel2 t=00c2 undefined undefined 3DClient +Texel3 t=00c3 undefined undefined 3DClient +Texel4 t=00c4 undefined undefined 3DClient +Texel5 t=00c5 undefined undefined 3DClient +Texel6 t=00c6 undefined undefined 3DClient +Texel7 t=00c7 undefined undefined 3DClient +Interp0 t=00c8 undefined undefined 3DClient +Interp1 t=00c9 undefined undefined 3DClient +Interp2 t=00ca undefined undefined 3DClient +Interp3 t=00cb undefined undefined 3DClient +Interp4 t=00cc undefined undefined 3DClient +TextureFilter t=00cd undefined undefined 3DClient +TextureColorMode t=00d0 undefined undefined DDX/3DClient +TextureEnvColor t=00d1 undefined undefined 3DClient +FogMode t=00d2 undefined undefined DDX/3DClient +FogColor t=00d3 undefined undefined 3DClient +FStart t=00d4 undefined undefined 3DClient +dFdx t=00d5 undefined undefined 3DClient +dFdyDom t=00d6 undefined undefined 3DClient +KsStart t=00d9 undefined undefined 3DClient +dKsdx t=00da undefined undefined 3DClient +dKsdyDom t=00db undefined undefined 3DClient +KdStart t=00dc undefined undefined 3DClient +dKdStart t=00dd undefined undefined 3DClient +dKddyDom t=00de undefined undefined 3DClient +RStart t=00f0 undefined undefined 3DClient +dRdx t=00f1 undefined undefined 3DClient +dRdyDom t=00f2 undefined undefined 3DClient +GStart t=00f3 undefined undefined 3DClient +dGdx t=00f4 undefined undefined 3DClient +dGdyDom t=00f5 undefined undefined 3DClient +BStart t=00f6 undefined undefined 3DClient +dBdx t=00f7 undefined undefined 3DClient +dBdyDom t=00f8 undefined undefined 3DClient +AStart t=00f9 undefined undefined 3DClient +dAdx t=00fa undefined undefined 3DClient +dAdyDom t=00fb undefined undefined 3DClient +ColorDDAMode t=00fc undefined undefined DDX/3DClient +ConstantColor t=00fd undefined undefined 3DClient +GLINTColor t=00fe undefined undefined DDX/3DClient +AlphaTestMode t=0100 undefined undefined DDX/3DClient +AntialiasMode t=0101 undefined undefined DDX/3DClient +AlphaBlendMode t=0102 undefined undefined DDX/3DClient +ChromaUpper t=01e1 undefined undefined 3DClient +ChromaLower t=01e2 undefined undefined 3DClient +ChromaTestMode t=01e3 undefined undefined 3DClient +DitherMode t=0103 undefined undefined DDX/3DClient +FBSoftwareWriteMask t=0104 undefined undefined DDX/3DClient +LogicalOpMode t=0105 undefined undefined DDX/3DClient +FBWriteData t=0106 undefined undefined DDX/3DClient +LBReadMode t=0110 undefined undefined DDX/3DClient + Partial Product bit 0-5 need by 3DClient +LBReadFormat t=0111 set by DDX set by DDX DDX +LBSourceOffset t=0112 undefined undefined DDX/3DClient +LBStencil t=0115 undefined undefined * +LBDepth t=0116 undefined undefined * +LBWindowBase t=0117 undefined undefined DDX/3DClient +LBWriteMode t=0118 undefined undefined DDX/3DClient +LBWriteFormat t=0119 set by DDX set by DDX DDX +TextureDownloadOffset t=011e undefined undefined DDX/3DClient +LBWindowOffset t=011f undefined undefined DDX/3DClient +GLINTWindow t=0130 undefined undefined DDX/3DClient +StencilMode t=0131 undefined undefined DDX/3DClient +StencilData t=0132 undefined undefined 3DClient +GLINTStencil t=0133 undefined undefined 3DClient +DepthMode t=0134 undefined undefined DDX/3DClient +GLINTDepth t=0135 undefined undefined DDX/3DClient +ZStartU t=0136 undefined undefined 3DClient +ZStartL t=0137 undefined undefined 3DClient +dZdxU t=0138 undefined undefined 3DClient +dZdxL t=0139 undefined undefined 3DClient +dZdyDomU t=013a undefined undefined 3DClient +dZdyDomL t=013b undefined undefined 3DClient +FastClearDepth t=013c undefined undefined 3DClient +FBReadMode t=0150 set by DDX set by DDX DDX/3DClient + Partial Product bit 0-5 need by 3DClient +LBReadFormat t=0111 set by DDX set by DDX DDX +FBSourceOffset t=0151 undefined undefined DDX/3DClient +FBPixelOffset t=0152 undefined undefined DDX/3DClient +FBWindowBase t=0156 undefined undefined DDX/3DClient +FBWriteMode t=0157 undefined undefined DDX/3DClient +FBHardwareWriteMask t=0158 undefined undefined DDX/3DClient +FBBlockColor t=0159 undefined undefined DDX/3DClient +PatternRamMode t=015f undefined undefined DDX/3DClient +PatternRamData0 t=0160 undefined undefined DDX/3DClient +PatternRamData1 t=0161 undefined undefined DDX/3DClient +PatternRamData2 t=0162 undefined undefined DDX/3DClient +PatternRamData3 t=0163 undefined undefined DDX/3DClient +PatternRamData4 t=0164 undefined undefined DDX/3DClient +PatternRamData5 t=0165 undefined undefined DDX/3DClient +PatternRamData6 t=0166 undefined undefined DDX/3DClient +PatternRamData7 t=0167 undefined undefined DDX/3DClient +PatternRamData8 t=0168 undefined undefined DDX/3DClient +PatternRamData9 t=0169 undefined undefined DDX/3DClient +PatternRamData10 t=016a undefined undefined DDX/3DClient +PatternRamData11 t=016b undefined undefined DDX/3DClient +PatternRamData12 t=016c undefined undefined DDX/3DClient +PatternRamData13 t=016d undefined undefined DDX/3DClient +PatternRamData14 t=016e undefined undefined DDX/3DClient +PatternRamData15 t=016f undefined undefined DDX/3DClient +PatternRamData16 t=0170 undefined undefined DDX/3DClient +PatternRamData17 t=0171 undefined undefined DDX/3DClient +PatternRamData18 t=0172 undefined undefined DDX/3DClient +PatternRamData19 t=0173 undefined undefined DDX/3DClient +PatternRamData20 t=0174 undefined undefined DDX/3DClient +PatternRamData21 t=0175 undefined undefined DDX/3DClient +PatternRamData22 t=0176 undefined undefined DDX/3DClient +PatternRamData23 t=0177 undefined undefined DDX/3DClient +PatternRamData24 t=0178 undefined undefined DDX/3DClient +PatternRamData25 t=0179 undefined undefined DDX/3DClient +PatternRamData26 t=017a undefined undefined DDX/3DClient +PatternRamData27 t=017b undefined undefined DDX/3DClient +PatternRamData28 t=017c undefined undefined DDX/3DClient +PatternRamData29 t=017d undefined undefined DDX/3DClient +PatternRamData30 t=017e undefined undefined DDX/3DClient +PatternRamData31 t=017f undefined undefined DDX/3DClient +FBBlockColorU t=018d undefined undefined DDX/3DClient +FBBlockColorL t=018e undefined undefined DDX/3DClient +FilterMode t=0180 undefined undefined DDX/3DClient +StatisticMode t=0181 undefined undefined DDX/3DClient +MinRegion t=0182 undefined undefined 3DClient +MaxRegion t=0183 undefined undefined 3DClient +KsRStart t=0190 undefined undefined 3DClient +dKsRdx t=0191 undefined undefined 3DClient +dKsRdyDom t=0192 undefined undefined 3DClient +KsGStart t=0193 undefined undefined 3DClient +dKsGdx t=0194 undefined undefined 3DClient +dKsGdyDom t=0195 undefined undefined 3DClient +KsBStart t=0196 undefined undefined 3DClient +dKsBdx t=0197 undefined undefined 3DClient +dKsBdyDom t=0198 undefined undefined 3DClient +KdRStart t=01a0 undefined undefined 3DClient +dKdRdx t=01a1 undefined undefined 3DClient +dKdRdyDom t=01a2 undefined undefined 3DClient +KdGStart t=01a3 undefined undefined 3DClient +dKdGdx t=01a4 undefined undefined 3DClient +dKdGdyDom t=01a5 undefined undefined 3DClient +KdBStart t=01a6 undefined undefined 3DClient +dKdBdx t=01a7 undefined undefined 3DClient +dKdBdyDom t=01a8 undefined undefined 3DClient + +All Gamma State is undefined and owned by 3DClient driver except for: + +BroadcastMask o=026f 0x00000003 DDX/3DClient + +All TI RAMDAC State is owned by DDX driver. |