Commit Graph

272 Commits

Author SHA1 Message Date
Kaleb Keithley 4ee0a53de8 Import most of XFree86 4.4RC3. This import excludes files which have the
new license. If we want to, later we can import 4.4RC3 again and pick
    up the files that have the new license, but for now the vendor branch
    is "pure."
2004-02-23 20:35:22 +00:00
Kaleb Keithley dcdd47ebbd Initial revision 2004-02-23 20:35:19 +00:00
Warren Turkal a27ffd2678 completely get rid of NeedNestedPrototypes
completely get rid of NeedVarargsPrototypes
remove a lot of NeedFunctionPrototypes
ansify many function declarations
2004-02-18 02:12:44 +00:00
Warren Turkal b146ef1548 Moving toward a working input extension. 2004-02-15 15:04:57 +00:00
Jaymz Julian bd20c8d340 Polling input mode for the kdrive os layer. And a moose! 2004-02-05 09:09:51 +00:00
Jaymz Julian af798d2774 More NULL checks. These ones are more useful than the last (which just made
debugging a bunch of problems easier), since you can implement less in
    the basic simplest case driver now (not that i'm lazy, mind :-p)
2004-02-04 16:08:27 +00:00
Egbert Eich 3c64b65d80 Importing vendor version xf86-012804-2330 on Thu Jan 29 00:06:33 PST 2004 2004-01-29 08:08:57 +00:00
Eric Anholt 2ec70aa701 Disable GLX visuals code on !GLXEXT, and remove a useless prototype. 2004-01-25 05:31:24 +00:00
Eric Anholt 01e9cc858a - Add glx visuals code based on XFree86's Radeon driver.
- 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-25 01:30:33 +00:00
Eric Anholt f2bedd17af Oops, turn fallback output back off. 2004-01-25 01:16:19 +00:00
Eric Anholt 26c5a8dfdd Whitespace cleanup. 2004-01-25 01:04:12 +00:00
Keith Packard 6870c08157 Oops, lost a diff needed for the non-screen format pixmap code 2004-01-15 09:19:56 +00:00
Keith Packard 3867e03cb6 Fix up some mis-used variable names 2004-01-15 09:15:53 +00:00
Keith Packard f233bbf365 Accelerate non-screen format pixmaps. 2004-01-15 09:13:01 +00:00
Anders Carlsson a265167f19 Add IPAQ modeline by Dennis Noordsij. 2004-01-14 10:00:00 +00:00
Eric Anholt 6c97b277d9 Support 1x1 repeat sources in R128's Blend. 2004-01-11 00:10:34 +00:00
Eric Anholt 9270256565 Change PCI ID information field to be one of r128, r100, r200, r300. This
is all the information we need so far. Put that information into atic,
    and use it correctly in the code (unlike before).
2004-01-09 08:43:48 +00:00
Eric Anholt 5d51dfc69c Use the scratch area for Composite when one of src or dst is in memory. 2004-01-09 08:40:32 +00:00
Eric Anholt 6d8001f468 Compile fixes for non-DRI case and for non-C99 compiler. 2004-01-08 20:18:13 +00:00
Eric Anholt b27729ec88 - Add a new UploadToScratch kaa hook for putting the data for a single
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-08 08:16:24 +00:00
Eric Anholt 737eddfa4b Disconnect the sis300 driver. I've never managed to fix it, and it breaks
the build on PPC.
2004-01-07 09:50:28 +00:00
Eric Anholt 5a2c23f8a1 Speed things up slightly by removing Z values from emitted vertices and by
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-07 02:30:29 +00:00
Eric Anholt cff782078c - Don't forget to UNINIT miComputeCompositeRegion's regions
- Fix a bit of whitespace nearby.
2004-01-04 20:51:53 +00:00
Eric Anholt 34d1529731 - Correctly set the texture coordinate set source for the second texture
unit.
- Re-enable Radeon's Composite accel now that fonts work again.
2004-01-04 20:47:30 +00:00
Eric Anholt 9f1a92cd09 - Call appropriate Done function for Composite.
- Don't allow src transforms for Copy acceleration.
- Minor whitespace fixes.
2004-01-03 21:52:14 +00:00
Eric Anholt 3db761a17b - Add more Composite operations, including Saturate, to Radeon Composite
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-03 11:46:57 +00:00
Eric Anholt d15acfa79b Split the various attempts at accelerating Composite into separate
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-03 11:25:27 +00:00
Eric Anholt 1e1a35e20c Actually align the offset of allocated offscreen areas. 2004-01-03 11:17:44 +00:00
Eric Anholt 354f8f7e94 Some strange \240 character snuck into the original commit of this file. 2003-12-31 23:24:33 +00:00
Eric Anholt 5f947b04da There's never a copy between different depths. Remove the check. 2003-12-30 08:45:53 +00:00
Eric Anholt c8eb20a08e - Add new Composite hook for kdrive drivers, which only ensures that the
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-30 08:23:56 +00:00
Eric Anholt adfc1ed8e1 Add dependency lines so that servers are rebuilt when server libraries are
changed.
2003-12-29 09:04:20 +00:00
Eric Anholt df03e80ae9 Merge dri-0-1-branch to trunk. Notable changes:
- 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-29 06:24:01 +00:00
Kaleb Keithley 12e532010b XFree86 4.3.99.902 (RC 2) 2003-12-19 20:55:39 +00:00
Eric Anholt 305c444de3 Add initial SiS 300-series (300, 305, 540, 630, 730) driver based off of
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-08 01:55:10 +00:00
Kaleb Keithley a84f16a9ad XFree86 4.3.99.901 (RC 1) 2003-12-04 22:03:38 +00:00
Keith Packard 33fdd50a94 Wrap ClipNotify to see region motions during MoveWindow.
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-02 01:59:38 +00:00
Anders Carlsson ae2454f656 Add support for setting the video mode. 2003-12-01 22:11:12 +00:00
Phil Blundell e31051ba26 Call KdShadowUnset before fbdevSetShadow. 2003-12-01 21:49:41 +00:00
Eric Anholt 9cdd6fd9e3 - Add fbdev mode-setting backend to Xati. It and vesa are compiled in when
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-01 04:33:36 +00:00
Eric Anholt ec7f553930 Add more RV250 PCI IDs. 2003-12-01 03:15:13 +00:00
Eric Anholt d221c484f9 Remove sys/io.h inclusion from some files that didn't need it, and change
asm/io.h to sys/io.h in vga.c, which newer Linux complains about.
2003-12-01 01:46:42 +00:00
Eric Anholt d803918a9f Add new Radeon 9200 PCI IDs. 2003-11-25 22:39:54 +00:00
Kaleb Keithley adc7f9a4eb XFree86 4.3.99.16 Bring the tree up to date for the Cygwin folks 2003-11-25 19:29:01 +00:00
Kaleb Keithley 90f1536dd3 Initial revision 2003-11-25 19:29:01 +00:00
Eric Anholt d461855a73 - Fix Radeon offscreen pixmap pitch alignment.
- 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-23 10:12:04 +00:00
Eric Anholt 8e09afe657 Add RV250 PCI IDs. 2003-11-23 02:08:16 +00:00
Eric Anholt b3247251fb - Fix a bug in pitch alignment for offscren pixmaps.
- Add 24-bit acceleration for Xati using the 8-bit trick from mach64.
- Add offscreen pixmap support to Xati.
2003-11-20 07:49:46 +00:00
Eric Anholt 41dde24b22 - Fix confusion of depth/bitsPerPixel in ati_draw.c
- 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-20 00:05:56 +00:00
Eric Anholt 7abbcce422 - Add PCI information (device/vendor id, bus location) to KdCardAttr to
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-19 08:32:38 +00:00