summaryrefslogtreecommitdiff
path: root/hw/kdrive
AgeCommit message (Collapse)AuthorFilesLines
2004-01-25- Add glx visuals code based on XFree86's Radeon driver.Eric Anholt4-48/+260
- Reserve areas for back/depth/span when USING_DRI && GLXEXT. This would be better in a TransitionTo3d, but we'd need to work with the offscreen memory manager for that. - Misc. fixes to ati_dri.c for DRI+GLX. Needs more work still.
2004-01-25Oops, turn fallback output back off.Eric Anholt1-1/+1
2004-01-25Whitespace cleanup.Eric Anholt1-18/+17
2004-01-15Oops, lost a diff needed for the non-screen format pixmap codeKeith Packard1-3/+6
2004-01-15Fix up some mis-used variable namesKeith Packard1-5/+5
2004-01-15Accelerate non-screen format pixmaps.Keith Packard1-152/+262
2004-01-14Add IPAQ modeline by Dennis Noordsij.Anders Carlsson1-0/+10
2004-01-11Support 1x1 repeat sources in R128's Blend.Eric Anholt2-4/+18
2004-01-09Change PCI ID information field to be one of r128, r100, r200, r300. ThisEric Anholt5-119/+132
is all the information we need so far. Put that information into atic, and use it correctly in the code (unlike before).
2004-01-09Use the scratch area for Composite when one of src or dst is in memory.Eric Anholt1-1/+18
2004-01-08Compile fixes for non-DRI case and for non-C99 compiler.Eric Anholt2-6/+5
2004-01-08- Add a new UploadToScratch kaa hook for putting the data for a singleEric Anholt6-8/+99
pixmap into temporary offscreen storage. Subsequent UploadToScratch may clobber the data of previous ones. This allows hardware acceleration of composite operations on glyphs. - Add a new UploadToScreen kaa hook for doing the actual moving of data to framebuffer. This would allow us to do things like hostdata blits or memcpy to agp and then blit. - Add an UploadToScreen on ATI which is just memcpy, but which will be replaced with a hostdata blit soon. - Add UploadToScratch on ATI and reserve 64k of scratch space. This provided a 3x speedup of rgb24text on my Radeon.
2004-01-07Disconnect the sis300 driver. I've never managed to fix it, and it breaksEric Anholt1-2/+2
the build on PPC.
2004-01-07Speed things up slightly by removing Z values from emitted vertices and byEric Anholt1-16/+7
emitting as a tri fan rather than a tri list. A rect list would save an additional vertex (out of 4) per rectangle, but there's no measurable speed difference and the tri fan may be useful when transforms come into play.
2004-01-04- Don't forget to UNINIT miComputeCompositeRegion's regionsEric Anholt1-17/+31
- Fix a bit of whitespace nearby.
2004-01-04- Correctly set the texture coordinate set source for the second textureEric Anholt2-3/+3
unit. - Re-enable Radeon's Composite accel now that fonts work again.
2004-01-03- Call appropriate Done function for Composite.Eric Anholt1-9/+10
- Don't allow src transforms for Copy acceleration. - Minor whitespace fixes.
2004-01-03- Add more Composite operations, including Saturate, to Radeon CompositeEric Anholt2-5/+18
accel. I don't 100% trust that the math works for Saturate, but I can't tell from existing information. - Fix texture pitch fallback checks. - Fallback when src or mask have transforms. - Disable Radeon Composite accel until the offset thing is fixed. - Set offscreenPitch to 64 on Radeon thanks to new information and a kaa fix. Fixes acceleration at width!=1024.
2004-01-03Split the various attempts at accelerating Composite into separateEric Anholt1-217/+265
functions. Along with making things more readable, it fixes a problem where the coordinates would get messed up if acceleration failed due to things like pixmaps being in the wrong locations.
2004-01-03Actually align the offset of allocated offscreen areas.Eric Anholt2-1/+6
2003-12-31Some strange \240 character snuck into the original commit of this file.Eric Anholt1-1/+1
2003-12-30There's never a copy between different depths. Remove the check.Eric Anholt1-5/+0
2003-12-30- Add new Composite hook for kdrive drivers, which only ensures that theEric Anholt8-4/+1071
pixmaps are offscreen and don't have alpha maps. It is the last case checked before going to software fallback - Use the new Composite hook in the ati driver to implement acceleration of most Composites that get done in an xcompmgr environment on r100 series cards. It is only available when using the DRM. There are still some corruption issues, but the DRI is still non-default and I need to get this into version control.
2003-12-29Add dependency lines so that servers are rebuilt when server libraries areEric Anholt7-21/+52
changed.
2003-12-29Merge dri-0-1-branch to trunk. Notable changes:Eric Anholt22-445/+3877
- Add libdrm and libdri. Portions of the DRI extension are stubbed out. - Use the DRM in the ATI driver when available. This provides a minor performance improvement in x11perf, and opens the possibility of using the 3d hardware for acceleration in the future. - Implement solid fill acceleration for Composite in KAA. - Implement Blend hook for Composite and use it on r128. - Fix a bug of mine that resulted in overuse of offscreen memory. - Fix many miscellaneous bugs in ATI driver and add PCI IDs.
2003-12-08Add initial SiS 300-series (300, 305, 540, 630, 730) driver based off ofEric Anholt7-1/+1826
the ATI driver. It suffers from hw/sw synchronization problems, it looks like, but may be good enough to work on Render acceleration experiments. Committing it as-is so I don't lose it again.
2003-12-02Wrap ClipNotify to see region motions during MoveWindow.Keith Packard5-46/+98
Check window reorigin in PositionWindow and bump pixmap serial numbers to revalidate GCs. Fix picture clip region origin in automatic update Initialize client private 'critical' value Clean up pixmap bounds checking code to only affect contents allocated by fb. Oops. Call SourceValidate for Composite operations. Add Xchips server (vesa based)
2003-12-01Add support for setting the video mode.dri-0-1-branchpointAnders Carlsson1-3/+79
2003-12-01Call KdShadowUnset before fbdevSetShadow.Phil Blundell1-0/+2
2003-12-01- Add fbdev mode-setting backend to Xati. It and vesa are compiled in whenEric Anholt7-69/+250
available, with fbdev being used by default. - Use depth 16 by default when vesa backend is used. - Add MMIO defines for PowerPC (should be in a common location). Many thanks for Michel Daenzer for much of this code.
2003-12-01Add more RV250 PCI IDs.Eric Anholt1-0/+4
2003-12-01Remove sys/io.h inclusion from some files that didn't need it, and changeEric Anholt3-3/+1
asm/io.h to sys/io.h in vga.c, which newer Linux complains about.
2003-11-25Add new Radeon 9200 PCI IDs.Eric Anholt1-0/+3
2003-11-23- Fix Radeon offscreen pixmap pitch alignment.Eric Anholt1-18/+18
- Remove usleeps from idle and waitavail code, recommended by keithp. - Add a workaround for apparent broken acceleration with Rage 128 and offset alignment with 8-bit acceleration (24-hack and plain 8-bit). - Minor cleanup of setup code.
2003-11-23Add RV250 PCI IDs.Eric Anholt1-0/+4
2003-11-20- Fix a bug in pitch alignment for offscren pixmaps.Eric Anholt5-40/+112
- Add 24-bit acceleration for Xati using the 8-bit trick from mach64. - Add offscreen pixmap support to Xati.
2003-11-20- Fix confusion of depth/bitsPerPixel in ati_draw.cEric Anholt2-23/+81
- Disable acceleration with 24bpp due to apparent broken acceleration. Accel at 24bpp was the cause of the crashes when people tried to use any depth over 16. XFree86 doesn't support 24 either. - Disable at < 8bpp, too. - Add the other Rage 128 PCI IDs. - Remove unnecessary setting of scissor registers (only default scissor gets used).
2003-11-19- Add PCI information (device/vendor id, bus location) to KdCardAttr toEric Anholt9-4/+918
help with ati, and future DRM drivers. - Add new "ati" kdrive driver. It has ancestry in the r128 driver from andersca, but took a detour through being the WIP SiS 300 driver on the way. It supports Radeons (tested on QD VIVO and 7500) and Rage 128. Current limitations include that it requires depth 16 and that the other Rage 128 PCI IDs aren't included yet.
2003-11-18Reset available offscreen segment save function pointer. (Not a functionalKeith Packard2-0/+2
change, just cleaning up a bit) Reset the screen->memory_base value when frame buffer is remapped. This makes sure new off-screen allocations point at the newly mapped region rather than the old (now unmapped) region.
2003-11-18Added infrastructure for driver specific usage messages and added vesaSeth W. Klein24-20/+179
usage message.
2003-11-17Recompute winSize/borderSize to fix them when changing redirection.Keith Packard4-98/+108
Sufficient, but not always necessary. Add borderClip to damage on creation so that clients needn't guess. Fix API to FbDots functions to make PolyPoint work with screen_x/screen_y offsets Add debugging code to make sure no pictures are left pointing at freed pixmaps. "Can't" happen, but it did once. Change KdOffscreenArea structure to eliminate separate private structure, eliminate the ScreenPtr, change from doubly linked to singly linked list. Don't damage BackgroundNone windows on PW_BACKGROUND. Re-clip damage to borderClip in DamageSubtract.
2003-11-17Clear window when Manual Subwindows redirect is destroyedKeith Packard1-2/+2
Fix Tile/Stipple origin with non-zero pixmap window origins Use computed depth for TrueColor visuals as fbdev doesn't have one.
2003-11-14Accelerated image text code drew glyphs at wrong location when compositingKeith Packard1-2/+2
manager enabled.
2003-11-13Have the composite extension tell the damage extension about clients whichKeith Packard2-7/+7
have redirected subwindows in manual mode. Those clients are marked Critical and given a significant scheduling boost whenever they receive a damage notify event. This dramatically improves update frequency. If the kernel reported a large number of keys, readKernelMapping would walk off the end of the kdKeysym array. Fix usage of _IOWR; the 'size' argument is actually a datatype.
2003-11-11Fix Makefile.am's to include header files needed for distcheck. RemoveEric Anholt5-8/+21
-Werror default and add --enable-werror switch to add it back.
2003-11-10Fix KdXv interface to pass drawable down so that bits can be put intoKeith Packard4-86/+106
drawable pixmap rather than directly into the frame buffer. Rewrite logic in kdoffscreen to make space for new allocations, now deals correctly with locked areas.
2003-11-10Must offset composite parameters by drawable coordinates in acceleratedKeith Packard1-0/+9
case.
2003-11-08Avoid ugly shell error when libXdmcp isn't present.Phil Blundell1-0/+19
New functions. (TsInit): Register them.
2003-11-08Fix KAA to work with screen_x/screen_y hacks from COMPOSITE Also addKeith Packard1-26/+75
kaaComposite acceleration for simple bltblt case.
2003-11-07Ok, Composite extension is semi-working; when no-one asks for redirection,Keith Packard5-15/+43
the server seems to act as before. With RedirectSubwindows (root, automatic), the server looks just like a regular X server. Now to go rewrite the (currently lame) compositing manager to get some real action on the screen. Some of the fixes here are to make valgrind quiet with various ioctls used by kdrive/linux. Also fixed a bug where fbdev initialization was out of order in fbdev.c and smi.c