summaryrefslogtreecommitdiff
path: root/hw/kdrive
diff options
context:
space:
mode:
authorEamon Walsh <ewalsh@tycho.nsa.gov>2007-09-19 07:25:55 -0400
committerEamon Walsh <ewalsh@moss-charon.epoch.ncsc.mil>2007-09-19 07:25:55 -0400
commit97c150b61bbe436453b05d3c07cd2173870aac40 (patch)
tree5335d0df93703e7ca8617cfae57315709d032a29 /hw/kdrive
parent57907e0943da0c3fd3bf6c128d210b544629ce72 (diff)
parent547ad2125ece93bbe01f6d09a3baf176ebd16bb3 (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')
-rw-r--r--hw/kdrive/Makefile.am2
-rw-r--r--hw/kdrive/ati/ChangeLog622
-rw-r--r--hw/kdrive/ati/Makefile.am3
-rw-r--r--hw/kdrive/chips/Makefile.am3
-rw-r--r--hw/kdrive/ephyr/ephyr_draw.c1
-rw-r--r--hw/kdrive/epson/Makefile.am3
-rw-r--r--hw/kdrive/fbdev/Makefile.am3
-rw-r--r--hw/kdrive/i810/Makefile.am3
-rw-r--r--hw/kdrive/igs/igsdraw.c72
-rw-r--r--hw/kdrive/mach64/Makefile.am3
-rw-r--r--hw/kdrive/mga/Makefile.am3
-rw-r--r--hw/kdrive/neomagic/ChangeLog98
-rw-r--r--hw/kdrive/neomagic/Makefile.am2
-rw-r--r--hw/kdrive/neomagic/backend.c86
-rw-r--r--hw/kdrive/neomagic/backend.h70
-rw-r--r--hw/kdrive/nvidia/Makefile.am3
-rw-r--r--hw/kdrive/pm2/Makefile.am3
-rw-r--r--hw/kdrive/r128/Makefile.am3
-rw-r--r--hw/kdrive/savage/s3.h1
-rw-r--r--hw/kdrive/savage/s3draw.c118
-rw-r--r--hw/kdrive/sdl/Makefile.am3
-rw-r--r--hw/kdrive/sis530/sisdraw.c73
-rw-r--r--hw/kdrive/smi/Makefile.am3
-rw-r--r--hw/kdrive/src/kaa.c48
-rw-r--r--hw/kdrive/src/kasync.c10
-rw-r--r--hw/kdrive/src/kdrive.h3
-rw-r--r--hw/kdrive/vesa/Makefile.am3
-rw-r--r--hw/kdrive/via/Makefile.am3
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 \