diff options
author | Eamon Walsh <ewalsh@tycho.nsa.gov> | 2007-09-19 07:25:55 -0400 |
---|---|---|
committer | Eamon Walsh <ewalsh@moss-charon.epoch.ncsc.mil> | 2007-09-19 07:25:55 -0400 |
commit | 97c150b61bbe436453b05d3c07cd2173870aac40 (patch) | |
tree | 5335d0df93703e7ca8617cfae57315709d032a29 /hw/kdrive | |
parent | 57907e0943da0c3fd3bf6c128d210b544629ce72 (diff) | |
parent | 547ad2125ece93bbe01f6d09a3baf176ebd16bb3 (diff) |
Merge branch 'master' into XACE-SELINUX
Conflicts:
afb/afbpntwin.c
afb/afbscrinit.c
afb/afbwindow.c
cfb/cfb.h
cfb/cfballpriv.c
cfb/cfbscrinit.c
cfb/cfbwindow.c
configure.ac
fb/wfbrename.h
hw/xfree86/xf4bpp/ppcIO.c
hw/xfree86/xf4bpp/ppcPntWin.c
hw/xfree86/xf4bpp/ppcWindow.c
hw/xfree86/xf8_32bpp/cfbscrinit.c
mfb/mfb.h
mfb/mfbpntwin.c
mfb/mfbscrinit.c
mfb/mfbwindow.c
mi/miexpose.c
Note: conflicts caused by devPrivates rework vs. paintwindow changes.
Diffstat (limited to 'hw/kdrive')
28 files changed, 17 insertions, 1231 deletions
diff --git a/hw/kdrive/Makefile.am b/hw/kdrive/Makefile.am index 267d772e2..5803644d5 100644 --- a/hw/kdrive/Makefile.am +++ b/hw/kdrive/Makefile.am @@ -1,5 +1,5 @@ if KDRIVEVESA -VESA_SUBDIRS = vesa ati chips epson i810 mach64 mga neomagic nvidia pm2 r128 \ +VESA_SUBDIRS = vesa ati chips epson i810 mach64 mga nvidia pm2 r128 \ smi via endif diff --git a/hw/kdrive/ati/ChangeLog b/hw/kdrive/ati/ChangeLog deleted file mode 100644 index a76712897..000000000 --- a/hw/kdrive/ati/ChangeLog +++ /dev/null @@ -1,622 +0,0 @@ -2006-02-15 Keith Packard <keithp@keithp.com> - - * Makefile.am: - * ati.c: (ATIMapReg): - * ati.h: - * ati_cursor.c: (ATIMoveCursor), (ClassicSetCursorColors), - (ClassicLoadCursor), (RadeonLoadCursor), (ATIUnloadCursor): - Fix kdrive pointer signed/unsigned types. - -2006-02-14 Eric Anholt <anholt@FreeBSD.org> - - * ati_draw.c: (ATIDrawDisable): - Remove the waitSync from KdDisableScreen and push it off to drivers' - disableAccel hook, which is more correct anyway. This makes kdrive.c - not have any knowledge of kaa, opening the way for using exa from - kdrive. - -2006-02-09 Keith Packard <keithp@keithp.com> - - reviewed by: Eric Anholt <anholt@FreeBSD.org> - - * ati_video.c: (RadeonDisplayVideo): - Replace TRI_FAN with RECT_LIST to eliminate tearing - -2005-08-07 Keith Packard <keithp@keithp.com> - - * ati_video.c: (RadeonDisplayVideo): - Build with modular X libraries and headers - -2005-06-09 Eric Anholt <anholt@FreeBSD.org> - - * ati.h: - * ati_video.c: - Axe a few dead fields from the port priv struct and add my name to - the "Copyright" line of the license to ati_video.c that already has my - name in the text. - -2005-06-09 Eric Anholt <anholt@FreeBSD.org> - - * ati_dri.c: - Perform a warnings sweep on hw/kdrive. A number of these were my fault, - but some come from others. - -2005-06-09 Eric Anholt <anholt@FreeBSD.org> - - * ati.c: - * ati.h: - * ati_draw.c: (ATIWaitMarker), (ATIGetOffsetPitch), - (ATIUploadToScreen), (ATIUploadToScratch), (ATIDrawInit), - (ATIDrawEnable): - * ati_dri.c: (ATIDRISwapContext): - * ati_video.c: (R128DisplayVideo), (RadeonDisplayVideo): - - Replace the syncAccel hook in the kdrive structure with a pair of - hooks in the kaa structure: markSync and waitMarker. The first, if - set, returns a hardware-dependent marker number which can then be - waited for with waitMarker. If markSync is absent (which is the case - on all drivers currently), waitMarker must wait for idle on any given - marker number. The intention is to allow for more parallelism when - we get downloading from framebuffer, or more fine-grained idling. - - Replace the KdMarkSync/KdCheckSync functions with kaaMarkSync and - kaaWaitSync. These will need to be refined when KAA starts being - smart about using them. Merge kpict.c into kasync.c since kasyn.c has - all the rest of these fallback funcs. - - Restructure all drivers to initialize a KaaInfo structure by hand - rather than statically in dubious order. - - Whack the i810 driver into shape in hopes that it'll work after this - change (it certainly wouldn't have before this). Doesn't support my - i845 though. - - Make a new KXV helper to avoid duplicated code to fill the region - with the necessary color key. Use it in i810 and mach64 (tested). - -2005-02-28 Keith Packard <keithp@keithp.com> - - * ati_reg.h: - Add macrovision register defines - -2005-01-24 19:37 anholt - - * ati_dma.c, ati_draw.c, ati_reg.h: Finish converting RB2D_DSTCACHE - to RB3D_DSTCACHE. Remove an extra pixel cache flush in the idle - function. Init an extra reg for r200, and annotate the - TCL_BYPASS better. Also, clean up some style nits from the last - commit. - -2005-01-24 18:39 keithp - - * ati.h, ati_draw.c, ati_reg.h, radeon_composite.c: Add tracing. - Hack Radeon cache registers to use 3D addresses. Works on M6 - -2005-01-24 17:38 anholt - - * ati_dri.c: Silence a warning about uninitialized variable (though - it would be). - -2005-01-20 08:22 anholt - - * ati_dma.c, ati_dma.h, ati_dri.c: Add a set of macros for dealing - with the repeated code to wait for a while reading a - register/attempting DMA. Now it'll wait for a certain number of - seconds rather than a certain number of times through the loop - before deciding that it's timed out and resetting the hardware. - Also, add more timeout handling, and reset the draw state after - resetting the engine. - -2005-01-19 23:28 anholt - - * radeon_composite.c: Use RadeonSwitchTo3D() instead of doing the - WAIT_UNTIL ourselves (RST3D() also does DC_FLUSH, which may be - important). - -2005-01-19 23:09 anholt - - * ati_video.c: Add R200 XV support, and make R100 (hopefully) use - linear filtering instead of nearest. Also, use RadeonSwitchTo3D - instead of doing the WAIT_UNTIL ourselves. - -2005-01-19 17:09 anholt - - * ati_dma.c, ati_reg.h: Make R200 PDMA work -- primary queue sizes - are now 9 bits, not 8. - -2004-12-22 10:39 anholt - - * ati_draw.c, ati_reg.h, radeon_composite.c: Back out the previous - day's broken R200 "fix" -- the same number of coords are always - emitted. Fix the real problem, which was not enough regs being - initialized in ati_draw.c. Fix a typo that was resulting in - alpha coming out as 0 * src or 0 * broken instead of src * 1 or - src * mask. Assign the blending results to R0, as appears to be - necessary. Unbreak the dst-alpha-blend-with-no-dst-alpha code. - Yow. And set the right DMA count for the r200 traps code. - -2004-12-21 01:51 anholt - - * ati_draw.c, radeon_composite.c: Fix r200 render (for real this - time?) by setting tex1_comp_cnt right for non-mask rendering. - Reenable it. Also, R200TexFormats was used instead of R100 in - one place. Harmless so far, because the formats were in the same - order. - -2004-12-21 01:49 anholt - - * ati_dri.c: Whitespace nit. - -2004-09-19 20:12 anholt - - * ati_draw.c, ati_reg.h, radeon_composite.c: Fix the R200 Render - code. Composite and Trapezoids are now supported just as well as - on R100. - -2004-09-19 03:57 anholt - - * ati_dri.c, ati_reg.h: Unbreak the AGP DRI case. That was quite a - pile of broken code. - -2004-09-13 23:26 anholt - - * ati.c, ati_reg.h: Add proper PCI/AGP detection, based on Mike - Harris's code for Radeon, but using the MMIO mirror of the bits - instead of config space. - -2004-09-12 16:22 anholt - - * ati_draw.c: - Fix a segfault on VT switch with DRI. Still dies - due to cursor allocation troubles. - Move the - RemoveBlockAndWakeupHandlers to match - RegisterBlockAndWakeupHandlers. - Enable R100 trapezoid - "acceleration" when DRI is working, so that it can be exposed - and worked on. - -2004-09-12 16:01 anholt - - * ati_dri.c: Fix a bad argument missed in the previous commit for - ATIDRIDMA* functions. - -2004-09-12 15:21 anholt - - * ati_draw.c: Move the RegisterBlockAndWakeupHandlers to before DRI - initialization. The change to use that instead of manual - wrapping made the DMA dispatch come after the lock had been - dropped, causing lots of pain. - -2004-09-12 13:31 anholt - - * ati.h, ati_dma.c, ati_dri.c: Reset the CCE/CP on engine reset, - and make the ATIDRIDMA functions take a more useful argument. - -2004-09-12 13:19 anholt - - * ati_draw.c: Add missing kaa.h include for kaaInitTrapOffsets. - -2004-09-12 13:02 anholt - - * ati_dri.c: Fix handling of is_agp. is_agp is whether the card is - actually AGP, while using_agp should say whether AGP is being - used as part of DMA/DRI. - -2004-09-12 12:52 anholt - - * ati_dma.c, ati_dma.h, ati_dri.c: Improve error handling, - especially in the DRI case. Do some FatalErrors instead of - ErrorFs for things that are really bad, and put limits on some - loops. Now, sometimes instead of hanging the entire system, we - (mostly-) cleanly drop to console when the card has hung. - -2004-09-11 02:28 anholt - - * ati.h, ati_dma.h, ati_draw.c, ati_draw.h, ati_reg.h, - r128_composite.c, radeon_composite.c: - Add disabled WIP - trapezoid code for R128 and R100. The R128 rendering is not - doing an add of 1 per triangle like I hoped, and instead seems - to be saturating all the pixels or something. The R100 - acceleration renders pretty well, with some gaps. Note that - both are slower than software due to lack of DMA to submit - vertices. - Mostly fix R128 and Radeon transform support, - including supporting bilinear filtering on R128. Subpixel - offsets are still probably an issue (reported by rendercheck), - but I want to make 100% sure about my understanding of the - protocol before changing everybody, including fb. - Add support - for dst formats without alpha to R128 Composite. - Remove the - R128 Blend code, which has long outlived its usefulness. (I - kept it around for one reason: It could be useful for the w/h - > 1024 case with no mask and a non-src op. That seems pretty - infrequent and not worth the trouble). - -2004-07-24 10:02 keithp - - * ati.c: Check for mmio before restoring crtc/crtc2 pitch registers - -2004-07-22 11:17 keithp - - * ati.c, ati.h, ati_cursor.c, ati_reg.h: 2004-07-22 Keith Packard - <keithp@keithp.com> - - reviewed by: <delete if not using a buddy> - - * hw/kdrive/ati/ati.c: (ATISetOffscreen), (ATISetPitch), - (ATIRandRSetConfig), (ATIPreserve), (ATIRestore), - (ATIEnable): - * hw/kdrive/ati/ati.h: - * hw/kdrive/ati/ati_cursor.c: (RadeonLoadCursor), - (ATIUnloadCursor), (ATICursorEnable): - * hw/kdrive/ati/ati_reg.h: - Correct pitch so that accelerator can run on 1400x1050 - screens. - Add a few more register sets for cursors. - -2004-07-19 05:07 anholt - - * radeon_composite.c: Add support for a8b8g8r8 and x8b8g8r8 - pictures, which showed up frequently with metacity usage. - -2004-07-19 04:42 anholt - - * ati_cursor.c: Breakage in last commit to this file: - pCurPriv->area isn't set up until Enable, these days. - -2004-07-19 04:19 anholt - - * ati_draw.c: Set the right number of texture coordinates for r200 - Render support (still disabled, needs to be tested). - -2004-07-19 04:16 anholt - - * r128_composite.c, radeon_composite.c: - Add Radeon picture - transform support. - On R128, don't refer to an old Composite's - mask transform when the current Composite doesn't have a mask. - - Staticize some global variables in r128_composite.c. - -2004-07-19 00:53 anholt - - * ati.c, ati.h, ati_cursor.c, ati_draw.c, ati_draw.h: Use the - offscreen memory manager as much as possible to do the - reservation of memory at startup. Do some drive-by cleanups - while I'm here (sorry!). - -2004-07-19 00:20 anholt - - * r128_composite.c: Add support for transforms of textures on R128. - -2004-07-03 03:23 anholt - - * r128_composite.c: Clean up Rage 128 composite code. Now it - composites more operations correctly and is simpler. - -2004-06-27 17:48 keithp - - * ati.c, ati.h, ati_cursor.c, ati_draw.c: 2004-06-27 Keith Packard - <keithp@keithp.com> - - * hw/kdrive/ati/ati.c: (ATICardInit), (ATISetOffscreen), - (ATIScreenInit), (ATIRandRSetConfig), (ATIRandRInit), - (ATIFinishInitScreen), (ATIEnable): - * hw/kdrive/ati/ati.h: - * hw/kdrive/ati/ati_cursor.c: (ATICursorInit): - * hw/kdrive/ati/ati_draw.c: (RadeonSwitchTo2D), - (RadeonSwitchTo3D), - (ATIBlockHandler), (ATIWakeupHandler), (ATIDrawEnable), - (ATIDrawDisable), (ATIDrawFini): - Separate out off-screen allocation from Init. - Fix Enable to update off-screen addresses. - Wrap RandR to update off-screen addresses. - - * hw/kdrive/fbdev/fbdev.c: (fbdevMapFramebuffer): - Set off_screen_base and memory_size fields correctly. - -2004-06-25 21:13 keithp - - * ati.c, ati_cursor.c, ati_draw.c, ati_reg.h: 2004-06-25 Keith - Packard <keithp@keithp.com> - - * hw/kdrive/ati/ati.c: (ATIScreenInit): - * hw/kdrive/ati/ati_cursor.c: (ATIMoveCursor), - (ClassicAllocCursorColors), (ClassicSetCursorColors), - (ClassicRecolorCursor), (ClassicLoadCursor), - (RadeonLoadCursor), - (ATIRealizeCursor), (ATISetCursor), (ATICursorEnable), - (ATIRecolorCursor): - * hw/kdrive/ati/ati_draw.c: (ATIDrawFini): - * hw/kdrive/ati/ati_reg.h: - Add ARGB cursor support for Radeon cards. - -2004-06-10 12:22 anholt - - * ati_draw.c: - Pass the right pixel mask (all ones) in to - PrepareSolid in the solid-fill-based composite acceleration. - - Use a real pixmap when doing an UploadToScratch (For - pDrawable->type == DRAWABLE_WINDOW, you need to get the backing - pixmap). - Pass back the x/y offsets from kaaGetOffscreenPixmap - unconditionally, because they'll be used in the scratch case. - - Turn on the Render acceleration for Rage 128 and Radeon - 100-series at last! - -2004-06-10 02:50 anholt - - * ati_draw.c: Align scratch area offsets to the offscreen byte - alignment. - -2004-06-10 01:37 anholt - - * ati_dma.c: Oops, testers reported that the last patch actually - didn't work (conflicts occurred), so the R300 PDMA doesn't work. - Disable. - -2004-06-09 22:57 anholt - - * ati_dma.c, ati_microcode.c: Bug #242: Fix setup of R300 cards, by - providing R300 CP code from volodya-project and initializing - PDMA. - -2004-05-17 13:18 anholt - - * Makefile.am, ati.c, ati.h, ati_cursor.c, ati_dma.c, ati_dma.h, - ati_draw.c, ati_draw.h, ati_dri.c, ati_microcode.c, ati_reg.h, - ati_video.c, r128_composite.c, radeon_composite.c: Overhaul of - the ATI driver: - Add monochrome hardware cursor support. - Try - to auto-detect AGP support for DRI on Radeons. And fail. - Detect it properly on R128. - Set up card for pseudo-DMA if - possible. Convert 2D rendering code to prepare DMA packets - only. Use generic code to decode DMA packets to MMIO if PDMA - is unavailable. Add WIP code to support "real" DMA without DRM - support. - Dispatch pending DMA commands when the server sleeps. - Otherwise some things, such as typing in an xterm, wouldn't - show up for a time. - Fix Radeon Composite acceleration in - many ways, and add Rage 128 Composite acceleration. Disable - them both due to still-not-understood issues they have. They - fail with In, Out, AtopReverse, and Xor, and text rendering is - strange. - Add textured XV support for R100 and Rage 128. No - brightness/sat controls, but it does support multiple ports, - and cooperates with Composite. - Add WIP code for hostdata - uploads. - Many cleanups and fixes. - -2004-01-24 21:31 anholt - - * ati_dri.c: Disable GLX visuals code on !GLXEXT, and remove a - useless prototype. - -2004-01-24 17:30 anholt - - * ati.c, ati.h, ati_dri.c, radeon_composite.c: - 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-24 17:16 anholt - - * ati_draw.h: Oops, turn fallback output back off. - -2004-01-24 17:04 anholt - - * ati_dri.c: Whitespace cleanup. - -2004-01-10 16:10 anholt - - * ati_draw.c, r128_blendtmp.h: Support 1x1 repeat sources in R128's - Blend. - -2004-01-09 00:43 anholt - - * ati.c, ati.h, ati_draw.c, ati_draw.h, ati_dri.c: 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-08 12:18 anholt - - * ati_draw.c, radeon_composite.c: Compile fixes for non-DRI case - and for non-C99 compiler. - -2004-01-08 00:25 anholt - - * ati.c: Forced commit: Previous commit included the removal of the - 8192 scanline limit on offscreen memory in the fbdev case. I - remember daenzer (who originally put that code in) saying he - wasn't sure of it, and there doesn't seem to be any reason for - that limit given how acceleration is done. - -2004-01-08 00:16 anholt - - * ati.c, ati.h, ati_draw.c: - 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-06 18:30 anholt - - * radeon_composite.c: 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-04 12:47 anholt - - * ati_draw.c, radeon_composite.c: - 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-03 03:46 anholt - - * ati_draw.c, radeon_composite.c: - 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. - -2003-12-31 15:24 anholt - - * radeon_composite.c: Some strange \240 character snuck into the - original commit of this file. - -2003-12-30 00:45 anholt - - * ati_drawtmp.h: There's never a copy between different depths. - Remove the check. - -2003-12-30 00:23 anholt - - * Makefile.am, ati_draw.c, ati_draw.h, ati_drawtmp.h, ati_reg.h, - radeon_composite.c: - 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-29 01:04 anholt - - * Makefile.am: Add dependency lines so that servers are rebuilt - when server libraries are changed. - -2003-12-28 22:24 anholt - - * Makefile.am, ati.c, ati.h, ati_draw.c, ati_draw.h, ati_drawtmp.h, - ati_dri.c, ati_dri.h, ati_dripriv.h, ati_reg.h, ati_sarea.h, - ati_stub.c, r128_blendtmp.h, r128_common.h, r128_sarea.h, - radeon_common.h, radeon_sarea.h: 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-28 21:10 anholt - - * ati_drawtmp.h, r128_blendtmp.h: - Disable libdrm verbosity. It - isn't important enough yet to make a run-time flag for it. - - Fix the (void)atic; tricks to quiet unused variable warnings in - ATI template files. Mixing statements and variable defines works - in newer compilers, but not pdx's. - -2003-12-28 01:16 anholt - - * ati.h, ati_draw.c, ati_draw.h, ati_drawtmp.h, ati_dri.c, - r128_blendtmp.h: - Allow acceleration between same-depth pixmaps, - rather than between anything and a dst that matched the screen - depth (fixes corruption for non-screen-depth src and makes more - acceleration possible). - Add ATI_FALLBACK macro and use it to - allow verbose descriptions of why hardware acceleration fails. - - Check that src and dst alignment meet requirements of the card - before accelerating. The BIOS may set up screens that don't - meet the requirements. - Fix the R128 offset alignment (32 - bytes, not 8). - Enable Blend operation even if screen is 24bpp - (it will fail if the dest is 24bpp anyway). - -2003-12-27 02:46 anholt - - * ati_reg.h, r128_blendtmp.h: Properly initialize texture registers - in Blend. Fixes problems with blending code such as whiteness in - test-render, or no blending at all. - - Tested by: andersca - -2003-12-23 14:29 anholt - - * Makefile.am, ati_draw.c, ati_drawtmp.h, ati_reg.h, - r128_blendtmp.h: - Implement acceleration of Composite on R128 - when there is no mask, no transformation, no repeat, and only - certain ops are used. - Add debugging output for software - fallbacks for Composite. - Allow pixmaps in offscreen that don't - match root depth. - Clean up some mess in ati_reg.h. - - Many thanks to andersca for a lot of this code. - -2003-12-09 21:01 anholt - - * ati_draw.c: Add missing kaaDrawFini to ATI driver. - -2003-12-01 14:56 anholt - - * Makefile.am, ati.c, ati.h, ati_draw.c, ati_draw.h, ati_drawtmp.h, - ati_dri.c, ati_dri.h, ati_dripriv.h, ati_reg.h, ati_sarea.h, - ati_stub.c, r128_common.h, r128_sarea.h, radeon_common.h, - radeon_sarea.h: - Initial add of enough of the DRI to create a 2d - driver that uses the DRM for its acceleration. - Converted the - ATI driver to use the DRM to execute rendering commands using - DMA instead of MMIO when available. - -2003-11-30 20:33 anholt - - * Makefile.am, ati.c, ati.h, ati_stub.c: - 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-11-30 19:15 anholt - - * ati.c: Add more RV250 PCI IDs. - -2003-11-30 17:46 anholt - - * ati_draw.c: 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-11-25 14:39 anholt - - * ati.c: Add new Radeon 9200 PCI IDs. - -2003-11-23 02:12 anholt - - * ati_draw.c: - 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-22 18:08 anholt - - * ati.c: Add RV250 PCI IDs. - -2003-11-19 23:49 anholt - - * ati.c, ati.h, ati_draw.c, ati_reg.h: - 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-19 16:05 anholt - - * ati.c, ati_draw.c: - 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-19 00:32 anholt - - * .cvsignore, Makefile.am, ati.c, ati.h, ati_draw.c, ati_reg.h, - ati_stub.c: - 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. - diff --git a/hw/kdrive/ati/Makefile.am b/hw/kdrive/ati/Makefile.am index 9e1fc7f57..8429250f3 100644 --- a/hw/kdrive/ati/Makefile.am +++ b/hw/kdrive/ati/Makefile.am @@ -60,8 +60,7 @@ ATI_LIBS = \ Xati_LDADD = \ $(ATI_LIBS) \ - @KDRIVE_LIBS@ \ - @XSERVER_LIBS@ + @KDRIVE_LIBS@ Xati_DEPENDENCIES = \ libati.a \ diff --git a/hw/kdrive/chips/Makefile.am b/hw/kdrive/chips/Makefile.am index 8188a8e7e..51b0edf31 100644 --- a/hw/kdrive/chips/Makefile.am +++ b/hw/kdrive/chips/Makefile.am @@ -22,8 +22,7 @@ CHIPS_LIBS = \ Xchips_LDADD = \ $(CHIPS_LIBS) \ - @KDRIVE_LIBS@ \ - @XSERVER_LIBS@ + @KDRIVE_LIBS@ Xchips_DEPENDENCIES = \ libchips.a \ diff --git a/hw/kdrive/ephyr/ephyr_draw.c b/hw/kdrive/ephyr/ephyr_draw.c index 84faecc00..93ef27ad3 100644 --- a/hw/kdrive/ephyr/ephyr_draw.c +++ b/hw/kdrive/ephyr/ephyr_draw.c @@ -520,6 +520,5 @@ exaDDXDriverInit(ScreenPtr pScreen) ExaScreenPriv(pScreen); pExaScr->migration = ExaMigrationSmart; - pExaScr->hideOffscreenPixmapData = TRUE; pExaScr->checkDirtyCorrectness = TRUE; } diff --git a/hw/kdrive/epson/Makefile.am b/hw/kdrive/epson/Makefile.am index cd2057132..2a440149d 100644 --- a/hw/kdrive/epson/Makefile.am +++ b/hw/kdrive/epson/Makefile.am @@ -22,8 +22,7 @@ EPSON_LIBS = \ Xepson_LDADD = \ $(EPSON_LIBS) \ - @KDRIVE_LIBS@ \ - @XSERVER_LIBS@ + @KDRIVE_LIBS@ Xepson_DEPENDENCIES = \ libepson.a \ diff --git a/hw/kdrive/fbdev/Makefile.am b/hw/kdrive/fbdev/Makefile.am index ea2aff3b3..1ce4833a7 100644 --- a/hw/kdrive/fbdev/Makefile.am +++ b/hw/kdrive/fbdev/Makefile.am @@ -16,8 +16,7 @@ Xfbdev_SOURCES = \ Xfbdev_LDADD = \ libfbdev.a \ - @KDRIVE_LIBS@ \ - @XSERVER_LIBS@ + @KDRIVE_LIBS@ Xfbdev_DEPENDENCIES = \ libfbdev.a \ diff --git a/hw/kdrive/i810/Makefile.am b/hw/kdrive/i810/Makefile.am index e3a702dde..ea02cb67d 100644 --- a/hw/kdrive/i810/Makefile.am +++ b/hw/kdrive/i810/Makefile.am @@ -25,8 +25,7 @@ I810_LIBS = \ Xi810_LDADD = \ $(I810_LIBS) \ - @KDRIVE_LIBS@ \ - @XSERVER_LIBS@ + @KDRIVE_LIBS@ Xi810_DEPENDENCIES = \ libi810.a \ diff --git a/hw/kdrive/igs/igsdraw.c b/hw/kdrive/igs/igsdraw.c index d2ae098a6..e1ff2befc 100644 --- a/hw/kdrive/igs/igsdraw.c +++ b/hw/kdrive/igs/igsdraw.c @@ -1367,74 +1367,6 @@ igsCopyWindow(WindowPtr pWin, DDXPointRec ptOldOrg, RegionPtr prgnSrc) REGION_UNINIT(pWin->drawable.pScreen, &rgnDst); } -void -igsPaintWindow(WindowPtr pWin, RegionPtr pRegion, int what) -{ - KdScreenPriv(pWin->drawable.pScreen); - PixmapPtr pTile; - - if (!REGION_NUM_RECTS(pRegion)) - return; - switch (what) { - case PW_BACKGROUND: - switch (pWin->backgroundState) { - case None: - return; - case ParentRelative: - do { - pWin = pWin->parent; - } while (pWin->backgroundState == ParentRelative); - (*pWin->drawable.pScreen->PaintWindowBackground)(pWin, pRegion, - what); - return; - case BackgroundPixmap: - pTile = pWin->background.pixmap; - if (igsPatternDimOk (pTile->drawable.width) && - igsPatternDimOk (pTile->drawable.height)) - { - igsFillBoxTiled ((DrawablePtr)pWin, - (int)REGION_NUM_RECTS(pRegion), - REGION_RECTS(pRegion), - pTile, - pWin->drawable.x, pWin->drawable.y, GXcopy); - return; - } - break; - case BackgroundPixel: - igsFillBoxSolid((DrawablePtr)pWin, - (int)REGION_NUM_RECTS(pRegion), - REGION_RECTS(pRegion), - pWin->background.pixel, GXcopy, ~0); - return; - } - break; - case PW_BORDER: - if (pWin->borderIsPixel) - { - igsFillBoxSolid((DrawablePtr)pWin, - (int)REGION_NUM_RECTS(pRegion), - REGION_RECTS(pRegion), - pWin->border.pixel, GXcopy, ~0); - return; - } - else - { - pTile = pWin->border.pixmap; - if (igsPatternDimOk (pTile->drawable.width) && - igsPatternDimOk (pTile->drawable.height)) - { - igsFillBoxTiled ((DrawablePtr)pWin, - (int)REGION_NUM_RECTS(pRegion), - REGION_RECTS(pRegion), - pTile, - pWin->drawable.x, pWin->drawable.y, GXcopy); - return; - } - } - break; - } - KdCheckPaintWindow (pWin, pRegion, what); -} Bool igsDrawInit (ScreenPtr pScreen) @@ -1453,9 +1385,7 @@ igsDrawInit (ScreenPtr pScreen) */ pScreen->CreateGC = igsCreateGC; pScreen->CopyWindow = igsCopyWindow; - pScreen->PaintWindowBackground = igsPaintWindow; - pScreen->PaintWindowBorder = igsPaintWindow; - + /* * Initialize patterns */ diff --git a/hw/kdrive/mach64/Makefile.am b/hw/kdrive/mach64/Makefile.am index 537939083..746ffff8f 100644 --- a/hw/kdrive/mach64/Makefile.am +++ b/hw/kdrive/mach64/Makefile.am @@ -29,8 +29,7 @@ MACH64_LIBS = \ Xmach64_LDADD = \ $(MACH64_LIBS) \ - @KDRIVE_LIBS@ \ - @XSERVER_LIBS@ + @KDRIVE_LIBS@ Xmach64_DEPENDENCIES = \ libmach64.a \ diff --git a/hw/kdrive/mga/Makefile.am b/hw/kdrive/mga/Makefile.am index 0598651d6..37bc50cf2 100644 --- a/hw/kdrive/mga/Makefile.am +++ b/hw/kdrive/mga/Makefile.am @@ -24,8 +24,7 @@ MGA_LIBS = \ Xmga_LDADD = \ $(MGA_LIBS) \ - @KDRIVE_LIBS@ \ - @XSERVER_LIBS@ + @KDRIVE_LIBS@ Xmga_DEPENDENCIES = \ libmga.a \ diff --git a/hw/kdrive/neomagic/ChangeLog b/hw/kdrive/neomagic/ChangeLog deleted file mode 100644 index 4e0788e5a..000000000 --- a/hw/kdrive/neomagic/ChangeLog +++ /dev/null @@ -1,98 +0,0 @@ -2006-02-15 Keith Packard <keithp@keithp.com> - - * Makefile.am: - Add XSERVER_LIBS to build in xorg tree - -2005-08-07 Keith Packard <keithp@keithp.com> - - * neo_draw.c: - Build with modular X libraries and headers - -2005-06-09 Eric Anholt <anholt@FreeBSD.org> - - * neo_draw.c: - * neomagic.c: (neoScreenInit): - Perform a warnings sweep on hw/kdrive. A number of these were my fault, - but some come from others. - -2005-06-09 Eric Anholt <anholt@FreeBSD.org> - - * neo_draw.c: (neoWaitMarker), (neoDrawInit): - * neomagic.c: - * neomagic.h: - - Replace the syncAccel hook in the kdrive structure with a pair of - hooks in the kaa structure: markSync and waitMarker. The first, if - set, returns a hardware-dependent marker number which can then be - waited for with waitMarker. If markSync is absent (which is the case - on all drivers currently), waitMarker must wait for idle on any given - marker number. The intention is to allow for more parallelism when - we get downloading from framebuffer, or more fine-grained idling. - - Replace the KdMarkSync/KdCheckSync functions with kaaMarkSync and - kaaWaitSync. These will need to be refined when KAA starts being - smart about using them. Merge kpict.c into kasync.c since kasyn.c has - all the rest of these fallback funcs. - - Restructure all drivers to initialize a KaaInfo structure by hand - rather than statically in dubious order. - - Whack the i810 driver into shape in hopes that it'll work after this - change (it certainly wouldn't have before this). Doesn't support my - i845 though. - - Make a new KXV helper to avoid duplicated code to fill the region - with the necessary color key. Use it in i810 and mach64 (tested). - -2005-02-08 Keith Packard <keithp@keithp.com> - - reviewed by: <delete if not using a buddy> - - * ChangeLog: - * neomagicstub.c: (InitInput): - -2005-02-08 Keith Packard <keithp@keithp.com> - - reviewed by: <delete if not using a buddy> - - * ChangeLog: - * neomagicstub.c: (InitInput): - -2005-02-08 Keith Packard <keithp@keithp.com> - - reviewed by: <delete if not using a buddy> - - * ChangeLog: - * neomagicstub.c: (InitInput): - -2005-02-08 Keith Packard <keithp@keithp.com> - - reviewed by: <delete if not using a buddy> - - * ChangeLog: - * neomagicstub.c: (InitInput): - -2005-02-08 Keith Packard <keithp@keithp.com> - - reviewed by: <delete if not using a buddy> - - * neomagicstub.c: (InitInput): - -2004-07-21 Phil Blundell <pb@nexus.co.uk> - - * Makefile.am (Xneomagic_LDADD): Include -lts if appropriate. - Patch from pattieja@bentham.ispvip.biz. - -2004-06-07 Franco Catrin L. <fcatrin@tuxpan.com> - * Small fix for depth calculation - -2004-04-11 Franco Catrin L. <fcatrin@tuxpan.com> - - * Basic bitblt implementation - * Fixed width and height calculation in solids - * Added ROP (not tested) - -2004-04-10 Franco Catrin L. <fcatrin@tuxpan.com> - - * MMIO enabled after switching to new VT - * First acceleration function implemented (DrawSolid) - -2004-04-06 Franco Catrin L. <fcatrin@tuxpan.com> - - * Returned to a working state. Brent will - continue working on a backend in a separate CVS branch diff --git a/hw/kdrive/neomagic/Makefile.am b/hw/kdrive/neomagic/Makefile.am index 468654711..95f0e1eaa 100644 --- a/hw/kdrive/neomagic/Makefile.am +++ b/hw/kdrive/neomagic/Makefile.am @@ -19,8 +19,6 @@ bin_PROGRAMS = Xneomagic noinst_LIBRARIES = libneomagic.a libneomagic_a_SOURCES = \ - backend.h \ - backend.c \ neomagic.c \ neomagic.h \ neo_draw.c diff --git a/hw/kdrive/neomagic/backend.c b/hw/kdrive/neomagic/backend.c deleted file mode 100644 index 12fbf030a..000000000 --- a/hw/kdrive/neomagic/backend.c +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Generic card driving functions. - * Essentially, cascades calls to fbdev and vesa to initialize cards that - * do not have hardware-specific routines yet. Copied from the ati driver. - * - * Copyright (c) 2004 Brent Cook <busterb@mail.utexas.edu> - * - * This code is licensed under the GPL. See the file COPYING in the root - * directory of the sources for details. - */ - -#ifdef HAVE_CONFIG_H -#include <kdrive-config.h> -#endif -#include "backend.h" - -Bool -backendInitialize(KdCardInfo *card, BackendInfo *backend) -{ - Bool success = FALSE; - -#ifdef KDRIVEVESA - if (!success && vesaInitialize(card, &backend->priv.vesa)) { - success = TRUE; - backend->type = VESA; - backend->cardfini = vesaCardFini; - backend->scrfini = vesaScreenFini; - backend->initScreen = vesaInitScreen; - backend->finishInitScreen = vesaFinishInitScreen; - backend->createRes = vesaCreateResources; - backend->preserve = vesaPreserve; - backend->restore = vesaRestore; - backend->dpms = vesaDPMS; - backend->enable = vesaEnable; - backend->disable = vesaDisable; - backend->getColors = vesaGetColors; - backend->putColors = vesaPutColors; - } -#endif -#ifdef KDRIVEFBDEV - if (!success && fbdevInitialize(card, &backend->priv.fbdev)) { - success = TRUE; - backend->type = FBDEV; - backend->cardfini = fbdevCardFini; - backend->scrfini = fbdevScreenFini; - backend->initScreen = fbdevInitScreen; - backend->finishInitScreen = fbdevFinishInitScreen; - backend->createRes = fbdevCreateResources; - backend->preserve = fbdevPreserve; - backend->restore = fbdevRestore; - backend->dpms = fbdevDPMS; - backend->enable = fbdevEnable; - backend->disable = fbdevDisable; - backend->getColors = fbdevGetColors; - backend->putColors = fbdevPutColors; - } -#endif - return success; -} - -Bool -backendScreenInitialize(KdScreenInfo *screen, BackendScreen *backendScreen, - BackendInfo *backendCard) -{ - Bool success = FALSE; - -#ifdef KDRIVEFBDEV - if (backendCard->type == FBDEV) { - screen->card->driver = &backendCard->priv.fbdev; - success = fbdevScreenInitialize(screen, &backendScreen->fbdev); - screen->memory_size = backendCard->priv.fbdev.fix.smem_len; - screen->off_screen_base = backendCard->priv.fbdev.var.yres_virtual - * screen->fb[0].byteStride; - } -#endif -#ifdef KDRIVEVESA - if (backendCard->type == VESA) { - screen->card->driver = &backendCard->priv.vesa; - if (screen->fb[0].depth == 0) { - screen->fb[0].depth = 16; - } - success = vesaScreenInitialize(screen, &backendScreen->vesa); - } -#endif - return success; -} diff --git a/hw/kdrive/neomagic/backend.h b/hw/kdrive/neomagic/backend.h deleted file mode 100644 index 33eae2680..000000000 --- a/hw/kdrive/neomagic/backend.h +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generic card driving functions. - * Essentially, cascades calls to fbdev and vesa to initialize cards that - * do not have hardware-specific routines yet. Copied from the ati driver. - * - * Copyright (c) 2004 Brent Cook <busterb@mail.utexas.edu> - * - * This code is licensed under the GPL. See the file COPYING in the root - * directory of the sources for details. - */ - -#ifndef _BACKEND_H_ -#define _BACKEND_H_ -#include "kdrive.h" - -#ifdef KDRIVEFBDEV -#include <fbdev.h> -#endif -#ifdef KDRIVEVESA -#include <vesa.h> -#endif - -typedef enum _BackendType {VESA, FBDEV} BackendType; - -typedef struct _BackendInfo { - // backend info - BackendType type; - - // backend internal structures - union { -#ifdef KDRIVEFBDEV - FbdevPriv fbdev; -#endif -#ifdef KDRIVEVESA - VesaCardPrivRec vesa; -#endif - } priv; - - // pointers to helper functions for this backend - void (*cardfini)(KdCardInfo *); - void (*scrfini)(KdScreenInfo *); - Bool (*initScreen)(ScreenPtr); - Bool (*finishInitScreen)(ScreenPtr pScreen); - Bool (*createRes)(ScreenPtr); - void (*preserve)(KdCardInfo *); - void (*restore)(KdCardInfo *); - Bool (*dpms)(ScreenPtr, int); - Bool (*enable)(ScreenPtr); - void (*disable)(ScreenPtr); - void (*getColors)(ScreenPtr, int, int, xColorItem *); - void (*putColors)(ScreenPtr, int, int, xColorItem *); -} BackendInfo; - -typedef union _BackendScreen { -#ifdef KDRIVEFBDEV - FbdevScrPriv fbdev; -#endif -#ifdef KDRIVEVESA - VesaScreenPrivRec vesa; -#endif -} BackendScreen; - -Bool -backendInitialize(KdCardInfo *card, BackendInfo *backend); - -Bool -backendScreenInitialize(KdScreenInfo *screen, BackendScreen *backendScreen, - BackendInfo *backendCard); - -#endif diff --git a/hw/kdrive/nvidia/Makefile.am b/hw/kdrive/nvidia/Makefile.am index 8ebfec9de..b380e44ee 100644 --- a/hw/kdrive/nvidia/Makefile.am +++ b/hw/kdrive/nvidia/Makefile.am @@ -25,8 +25,7 @@ NVIDIA_LIBS = \ Xnvidia_LDADD = \ $(NVIDIA_LIBS) \ - @KDRIVE_LIBS@ \ - @XSERVER_LIBS@ + @KDRIVE_LIBS@ Xnvidia_DEPENDENCIES = \ libnvidia.a \ diff --git a/hw/kdrive/pm2/Makefile.am b/hw/kdrive/pm2/Makefile.am index b2b48ba6a..208d0319e 100644 --- a/hw/kdrive/pm2/Makefile.am +++ b/hw/kdrive/pm2/Makefile.am @@ -23,8 +23,7 @@ PM2_LIBS = \ Xpm2_LDADD = \ $(PM2_LIBS) \ - @KDRIVE_LIBS@ \ - @XSERVER_LIBS@ + @KDRIVE_LIBS@ Xpm2_DEPENDENCIES = \ libpm2.a \ diff --git a/hw/kdrive/r128/Makefile.am b/hw/kdrive/r128/Makefile.am index 609e0f5d2..62c1fcfa3 100644 --- a/hw/kdrive/r128/Makefile.am +++ b/hw/kdrive/r128/Makefile.am @@ -22,8 +22,7 @@ R128_LIBS = \ Xr128_LDADD = \ $(R128_LIBS) \ - @KDRIVE_LIBS@ \ - @XSERVER_LIBS@ + @KDRIVE_LIBS@ Xr128_DEPENDENCIES = \ libr128.a \ diff --git a/hw/kdrive/savage/s3.h b/hw/kdrive/savage/s3.h index 628abc806..d8db0ebbf 100644 --- a/hw/kdrive/savage/s3.h +++ b/hw/kdrive/savage/s3.h @@ -470,7 +470,6 @@ void s3CursorDisable (ScreenPtr pScreen); void s3CursorFini (ScreenPtr pScreen); void s3RecolorCursor (ScreenPtr pScreen, int ndef, xColorItem *pdefs); -void s3DumbPaintWindow (WindowPtr pWin, RegionPtr pRegion, int what); void s3DumbCopyWindow (WindowPtr pWin, DDXPointRec ptOldOrg, RegionPtr prgnSrc); Bool s3DrawInit (ScreenPtr pScreen); diff --git a/hw/kdrive/savage/s3draw.c b/hw/kdrive/savage/s3draw.c index 39cc256b3..311a7dc01 100644 --- a/hw/kdrive/savage/s3draw.c +++ b/hw/kdrive/savage/s3draw.c @@ -2261,71 +2261,6 @@ s3PaintKey (DrawablePtr pDrawable, #endif void -s3PaintWindow(WindowPtr pWin, RegionPtr pRegion, int what) -{ - SetupS3(pWin->drawable.pScreen); - s3ScreenInfo(pScreenPriv); - s3PatternPtr pPattern; - - DRAW_DEBUG ((DEBUG_PAINT_WINDOW, "s3PaintWindow 0x%x extents %d %d %d %d n %d", - pWin->drawable.id, - pRegion->extents.x1, pRegion->extents.y1, - pRegion->extents.x2, pRegion->extents.y2, - REGION_NUM_RECTS(pRegion))); - if (!REGION_NUM_RECTS(pRegion)) - return; - switch (what) { - case PW_BACKGROUND: - switch (pWin->backgroundState) { - case None: - return; - case ParentRelative: - do { - pWin = pWin->parent; - } while (pWin->backgroundState == ParentRelative); - (*pWin->drawable.pScreen->PaintWindowBackground)(pWin, pRegion, - what); - return; - case BackgroundPixmap: - pPattern = s3GetWindowPrivate(pWin); - if (pPattern) - { - s3FillBoxPattern ((DrawablePtr)pWin, - (int)REGION_NUM_RECTS(pRegion), - REGION_RECTS(pRegion), - GXcopy, ~0, pPattern); - return; - } - break; - case BackgroundPixel: - s3FillBoxSolid((DrawablePtr)pWin, - (int)REGION_NUM_RECTS(pRegion), - REGION_RECTS(pRegion), - pWin->background.pixel, GXcopy, ~0); - return; - } - break; - case PW_BORDER: -#ifndef S3_TRIO - if (s3s->fbmap[1] >= 0) - fbOverlayUpdateLayerRegion (pWin->drawable.pScreen, - fbOverlayWindowLayer (pWin), - pRegion); -#endif - if (pWin->borderIsPixel) - { - s3FillBoxSolid((DrawablePtr)pWin, - (int)REGION_NUM_RECTS(pRegion), - REGION_RECTS(pRegion), - pWin->border.pixel, GXcopy, ~0); - return; - } - break; - } - KdCheckPaintWindow (pWin, pRegion, what); -} - -void s3CopyWindowProc (DrawablePtr pSrcDrawable, DrawablePtr pDstDrawable, GCPtr pGC, @@ -3005,55 +2940,6 @@ s3_24CreateWindow(WindowPtr pWin) return fbCreateWindow (pWin); } -void -s3_24PaintWindow(WindowPtr pWin, RegionPtr pRegion, int what) -{ - SetupS3(pWin->drawable.pScreen); - s3PatternPtr pPattern; - - DRAW_DEBUG ((DEBUG_PAINT_WINDOW, "s3PaintWindow 0x%x extents %d %d %d %d n %d", - pWin->drawable.id, - pRegion->extents.x1, pRegion->extents.y1, - pRegion->extents.x2, pRegion->extents.y2, - REGION_NUM_RECTS(pRegion))); - if (!REGION_NUM_RECTS(pRegion)) - return; - switch (what) { - case PW_BACKGROUND: - switch (pWin->backgroundState) { - case None: - return; - case ParentRelative: - do { - pWin = pWin->parent; - } while (pWin->backgroundState == ParentRelative); - (*pWin->drawable.pScreen->PaintWindowBackground)(pWin, pRegion, - what); - return; - case BackgroundPixel: - if (ok24(pWin->background.pixel)) - { - s3_24FillBoxSolid((DrawablePtr)pWin, - (int)REGION_NUM_RECTS(pRegion), - REGION_RECTS(pRegion), - pWin->background.pixel, GXcopy, ~0); - return; - } - } - break; - case PW_BORDER: - if (pWin->borderIsPixel && ok24(pWin->border.pixel)) - { - s3_24FillBoxSolid((DrawablePtr)pWin, - (int)REGION_NUM_RECTS(pRegion), - REGION_RECTS(pRegion), - pWin->border.pixel, GXcopy, ~0); - return; - } - break; - } - KdCheckPaintWindow (pWin, pRegion, what); -} Bool s3DrawInit (ScreenPtr pScreen) @@ -3088,8 +2974,6 @@ s3DrawInit (ScreenPtr pScreen) { pScreen->CreateGC = s3_24CreateGC; pScreen->CreateWindow = s3_24CreateWindow; - pScreen->PaintWindowBackground = s3_24PaintWindow; - pScreen->PaintWindowBorder = s3_24PaintWindow; pScreen->CopyWindow = s3CopyWindow; } else @@ -3100,8 +2984,6 @@ s3DrawInit (ScreenPtr pScreen) pScreen->CreateWindow = s3CreateWindow; pScreen->ChangeWindowAttributes = s3ChangeWindowAttributes; pScreen->DestroyWindow = s3DestroyWindow; - pScreen->PaintWindowBackground = s3PaintWindow; - pScreen->PaintWindowBorder = s3PaintWindow; #ifndef S3_TRIO if (pScreenPriv->screen->fb[1].depth) { diff --git a/hw/kdrive/sdl/Makefile.am b/hw/kdrive/sdl/Makefile.am index e74249967..fe9309e46 100644 --- a/hw/kdrive/sdl/Makefile.am +++ b/hw/kdrive/sdl/Makefile.am @@ -7,9 +7,8 @@ bin_PROGRAMS = Xsdl Xsdl_SOURCES = sdl.c -Xsdl_LDADD = @KDRIVE_PURE_LIBS@ \ +Xsdl_LDADD = \ @KDRIVE_LIBS@ \ - @XSERVER_LIBS@ \ @XSDL_LIBS@ Xsdl_DEPENDENCIES = @KDRIVE_LOCAL_LIBS@ diff --git a/hw/kdrive/sis530/sisdraw.c b/hw/kdrive/sis530/sisdraw.c index fd80fa76a..f2b39a477 100644 --- a/hw/kdrive/sis530/sisdraw.c +++ b/hw/kdrive/sis530/sisdraw.c @@ -1537,75 +1537,6 @@ sisCopyWindow(WindowPtr pWin, DDXPointRec ptOldOrg, RegionPtr prgnSrc) REGION_UNINIT(pWin->drawable.pScreen, &rgnDst); } -void -sisPaintWindow(WindowPtr pWin, RegionPtr pRegion, int what) -{ - KdScreenPriv(pWin->drawable.pScreen); - PixmapPtr pTile; - - if (!REGION_NUM_RECTS(pRegion)) - return; - switch (what) { - case PW_BACKGROUND: - switch (pWin->backgroundState) { - case None: - return; - case ParentRelative: - do { - pWin = pWin->parent; - } while (pWin->backgroundState == ParentRelative); - (*pWin->drawable.pScreen->PaintWindowBackground)(pWin, pRegion, - what); - return; - case BackgroundPixmap: - pTile = pWin->background.pixmap; - if (sisPatternDimOk (pTile->drawable.width) && - sisPatternDimOk (pTile->drawable.height)) - { - sisFillBoxTiled ((DrawablePtr)pWin, - (int)REGION_NUM_RECTS(pRegion), - REGION_RECTS(pRegion), - pTile, - pWin->drawable.x, pWin->drawable.y, GXcopy); - return; - } - break; - case BackgroundPixel: - sisFillBoxSolid((DrawablePtr)pWin, - (int)REGION_NUM_RECTS(pRegion), - REGION_RECTS(pRegion), - pWin->background.pixel, GXcopy); - return; - } - break; - case PW_BORDER: - if (pWin->borderIsPixel) - { - sisFillBoxSolid((DrawablePtr)pWin, - (int)REGION_NUM_RECTS(pRegion), - REGION_RECTS(pRegion), - pWin->border.pixel, GXcopy); - return; - } - else - { - pTile = pWin->border.pixmap; - if (sisPatternDimOk (pTile->drawable.width) && - sisPatternDimOk (pTile->drawable.height)) - { - sisFillBoxTiled ((DrawablePtr)pWin, - (int)REGION_NUM_RECTS(pRegion), - REGION_RECTS(pRegion), - pTile, - pWin->drawable.x, pWin->drawable.y, GXcopy); - return; - } - } - break; - } - KdCheckPaintWindow (pWin, pRegion, what); -} - Bool sisDrawInit (ScreenPtr pScreen) { @@ -1621,9 +1552,7 @@ sisDrawInit (ScreenPtr pScreen) */ pScreen->CreateGC = sisCreateGC; pScreen->CopyWindow = sisCopyWindow; - pScreen->PaintWindowBackground = sisPaintWindow; - pScreen->PaintWindowBorder = sisPaintWindow; - + return TRUE; } diff --git a/hw/kdrive/smi/Makefile.am b/hw/kdrive/smi/Makefile.am index 6cee31610..a4d6624c5 100644 --- a/hw/kdrive/smi/Makefile.am +++ b/hw/kdrive/smi/Makefile.am @@ -27,8 +27,7 @@ SMI_LIBS = \ Xsmi_LDADD = \ $(SMI_LIBS) \ - @KDRIVE_LIBS@ \ - @XSERVER_LIBS@ + @KDRIVE_LIBS@ Xsmi_DEPENDENCIES = \ libsmi.a \ diff --git a/hw/kdrive/src/kaa.c b/hw/kdrive/src/kaa.c index da618bee5..486967783 100644 --- a/hw/kdrive/src/kaa.c +++ b/hw/kdrive/src/kaa.c @@ -1008,52 +1008,6 @@ kaaFillRegionTiled (DrawablePtr pDrawable, } #endif -static void -kaaPaintWindow(WindowPtr pWin, RegionPtr pRegion, int what) -{ - - if (!REGION_NUM_RECTS(pRegion)) - return; - switch (what) { - case PW_BACKGROUND: - switch (pWin->backgroundState) { - case None: - return; - case ParentRelative: - do { - pWin = pWin->parent; - } while (pWin->backgroundState == ParentRelative); - (*pWin->drawable.pScreen->PaintWindowBackground)(pWin, pRegion, - what); - return; - case BackgroundPixel: - kaaFillRegionSolid((DrawablePtr)pWin, pRegion, pWin->background.pixel); - return; -#if 0 - case BackgroundPixmap: - kaaFillRegionTiled((DrawablePtr)pWin, pRegion, pWin->background.pixmap); - return; -#endif - } - break; - case PW_BORDER: - if (pWin->borderIsPixel) - { - kaaFillRegionSolid((DrawablePtr)pWin, pRegion, pWin->border.pixel); - return; - } -#if 0 - else - { - kaaFillRegionTiled((DrawablePtr)pWin, pRegion, pWin->border.pixmap); - return; - } -#endif - break; - } - KdCheckPaintWindow (pWin, pRegion, what); -} - Bool kaaDrawInit (ScreenPtr pScreen, KaaScreenInfoPtr pScreenInfo) @@ -1083,8 +1037,6 @@ kaaDrawInit (ScreenPtr pScreen, */ pScreen->CreateGC = kaaCreateGC; pScreen->CopyWindow = kaaCopyWindow; - pScreen->PaintWindowBackground = kaaPaintWindow; - pScreen->PaintWindowBorder = kaaPaintWindow; #ifdef RENDER if (ps) { ps->Composite = kaaComposite; diff --git a/hw/kdrive/src/kasync.c b/hw/kdrive/src/kasync.c index 51909630e..5388f217d 100644 --- a/hw/kdrive/src/kasync.c +++ b/hw/kdrive/src/kasync.c @@ -224,14 +224,6 @@ KdCheckGetSpans (DrawablePtr pDrawable, } void -KdCheckPaintWindow (WindowPtr pWin, RegionPtr pRegion, int what) -{ - kaaWaitSync (pWin->drawable.pScreen); - kaaDrawableDirty ((DrawablePtr)pWin); - fbPaintWindow (pWin, pRegion, what); -} - -void KdCheckCopyWindow (WindowPtr pWin, DDXPointRec ptOldOrg, RegionPtr prgnSrc) { kaaWaitSync (pWin->drawable.pScreen); @@ -265,8 +257,6 @@ KdScreenInitAsync (ScreenPtr pScreen) { pScreen->GetImage = KdCheckGetImage; pScreen->GetSpans = KdCheckGetSpans; - pScreen->PaintWindowBackground = KdCheckPaintWindow; - pScreen->PaintWindowBorder = KdCheckPaintWindow; pScreen->CopyWindow = KdCheckCopyWindow; #ifdef RENDER KdPictureInitAsync (pScreen); diff --git a/hw/kdrive/src/kdrive.h b/hw/kdrive/src/kdrive.h index d6646f0ef..8722ba303 100644 --- a/hw/kdrive/src/kdrive.h +++ b/hw/kdrive/src/kdrive.h @@ -612,9 +612,6 @@ KdCheckGetSpans (DrawablePtr pDrawable, char *pdstStart); void -KdCheckPaintWindow (WindowPtr pWin, RegionPtr pRegion, int what); - -void KdCheckCopyWindow (WindowPtr pWin, DDXPointRec ptOldOrg, RegionPtr prgnSrc); void diff --git a/hw/kdrive/vesa/Makefile.am b/hw/kdrive/vesa/Makefile.am index d58f20f95..ac50d2bf5 100644 --- a/hw/kdrive/vesa/Makefile.am +++ b/hw/kdrive/vesa/Makefile.am @@ -21,8 +21,7 @@ Xvesa_SOURCES = \ Xvesa_LDADD = \ libvesa.a \ - @KDRIVE_LIBS@ \ - @XSERVER_LIBS@ + @KDRIVE_LIBS@ Xvesa_DEPENDENCIES = \ libvesa.a \ diff --git a/hw/kdrive/via/Makefile.am b/hw/kdrive/via/Makefile.am index 8c8189d12..249b3f31e 100644 --- a/hw/kdrive/via/Makefile.am +++ b/hw/kdrive/via/Makefile.am @@ -23,8 +23,7 @@ VIA_LIBS = \ Xvia_LDADD = \ $(VIA_LIBS) \ - @KDRIVE_LIBS@ \ - @XSERVER_LIBS@ + @KDRIVE_LIBS@ Xvia_DEPENDENCIES = \ libvia.a \ |