Commit Graph

703 Commits

Author SHA1 Message Date
Peter Hutterer
d4dad6f84f Merge branch 'master' into mpx
Conflicts:

	configure.ac
	dix/events.c
	hw/xfree86/common/xf86Xinput.c
2007-04-12 11:11:03 +09:30
Remigiusz Marcinkiewicz
aecbc71214 Input: Allow a pointer to a device to be returned in NIDR
Allow a pointer to the first device added to be returned, so we know which
device(s) were added by the NIDR call.
2007-04-11 00:38:16 +03:00
Magnus Vigerlöf
82962bbae2 Input: Add DeleteInputDeviceRequest
Add DIDR, which asks the DDX to remove a device, analogous to
NewInputDeviceRequest.  Only implemented for XFree86 at the moment.
2007-04-10 23:58:20 +03:00
Peter Hutterer
e8777a91f3 Merge branch 'master' into mpx
Conflicts:

	Xi/closedev.c
	Xi/exevents.c
	Xi/extinit.c
	Xi/listdev.c
	dix/window.c
	hw/xfree86/common/xf86Xinput.c
	include/extinit.h
	mi/mipointer.c
2007-04-02 15:36:26 +09:30
Alberto Mardegan
f2808005f4 Bug #6620: Fixed a missing 'else' in ATIPseudoDMAInit().
Before this, we'd write some registers twice on R200 hardware and also
possibly end up with a bad value in atis->cce_pri_size.
2007-03-31 16:51:24 +02:00
Eric Anholt
e76b634951 Fix indentation of fakexa help text. 2007-03-27 16:47:07 -07:00
Adam Jackson
021fc5cb2c Static markup and dead code cull over xkb/.
The former <X11/extensions/XKBsrv.h> has been pulled into the server now as
include/xkbsrv.h, and the world updated to look for it in the new place,
since it made no sense to define server API in an extension header.  Any
further work along this line will need to do similar things with XKBgeom.h
and friends.
2007-03-20 18:37:02 -04:00
Peter Hutterer
c5b07fb717 kdrive: update kdrive to new mi API with additional device argument. Includes
an update of ati_cursor.c and i810_cursor.c
2007-03-14 17:42:30 +10:30
Daniel Stone
68d39d8571 kdrive/ephyr: fix keysym type confusion once and for all
Take keysyms in as an XID in hostx_load_keymap() and explicitly
convert them to CARD32 for loading into the server.  Fixes Xephyr on
AMD64, wa-hey.
2007-02-16 23:02:46 +02:00
Daniel Stone
5507cb885d kdrive: delete input debugging, yet again ...
I have no idea how this keeps on coming back.
2007-02-16 23:02:45 +02:00
Daniel Stone
0f6dd4aea6 kdrive/ephyr: free screen struct
Free screen->driver on screenFini, instead of just leaking it.
2007-02-15 16:14:57 +02:00
Alan Coopersmith
5dcad9e9d7 Fix bus error on startup in 64-bit Xephyr
hostx_get_visual_masks takes unsigned long * arguments, but was being
passed pointers to CARD32's.
2007-02-02 14:45:16 -08:00
Daniel Stone
8724af248c kdrive/mga: fix compiler warning
Change a case that only made one test for an if, preventing the compiler
warning about all other PICT_* types being unsupported.
2006-12-06 23:24:24 +02:00
Daniel Stone
99378b58db kdrive/tslib: remove vendor-specific hacks
Parts of the KDrive merge accidentally contained a bunch of
vendor-specific hacks; sorry.
2006-12-06 23:24:24 +02:00
Daniel Stone
f2903c12bb SyntheticMotion: don't dereference sprite.screen when not using Xinerama
(cherry picked from aa052e43c6c293e14f78837e00c6b7581f9713bb commit)
2006-12-06 23:24:23 +02:00
Daniel Stone
332f179db7 kdrive/sdl: fix compilation 2006-11-08 15:30:03 +02:00
Juliusz Chroboczek
aa0261a98e Improve vm86 error handling in Xvesa. 2006-11-06 02:29:49 +01:00
Juliusz Chroboczek
6b2c65fdd1 Fix typo in Xvesa: incorrect reporting of DAC capabilities. 2006-11-06 00:30:09 +01:00
Samuel Thibault
412e93349e kdrive: make building of Linux support conditional (bug #5613)
Only try to build Linux support on Linux.  We should probably disable all
OS-dependent DDXes if we don't have a workable OS (and only build
Xephyr/Xfake), but that's future work.
2006-11-04 19:08:23 +02:00
Daniel Stone
a2d6242106 kdrive:remove Change{Keyboard,Pointer}Device
This was removed in the DIX, so just axe it.
2006-11-02 00:46:33 +02:00
Daniel Stone
3df454719f kdrive: add KdRingBell prototype 2006-11-01 23:02:57 +02:00
Daniel Stone
644ee2434a kdrive: avoid null dereferences
Avoid jumping into NULL pointers for OS or card functions which do not
exist.
2006-10-29 03:52:11 +03:00
Daniel Stone
738d2e8817 kdrive: move bell ringing into an OS function
Move the bell into an OS function, and use that if it's declared; else,
fall back to using the driver's function.
Remove the Linux keyboard bell function; just move it into the OS layer.
Use named initialisers when converting the old structures, and eliminate
unused functions.
2006-10-29 03:48:02 +03:00
Daniel Stone
65cd5aa4d7 kdrive/input: remove unnecessary #ifdef XINPUTs
Xi is now mandatory, so don't bother with the ifdefs.
2006-10-25 01:12:45 +03:00
Daniel Stone
b9e180e632 port all users to the new DIX motion history API
Port KDrive, Xvfb, and Xnest, as well as the virtual core devices, to the
new motion history API.  Make GetPointerEvents also update the history.
2006-10-25 01:09:19 +03:00
Daniel Stone
a7c2d9a15d kdrive: numerous warning fixes 2006-10-23 06:08:27 +03:00
Daniel Stone
523fe64ba1 kdrive/lots of DDXes: make stubs use KdOsAddInputDrivers()
In theory, removing LinuxPciScan should make these drivers OS-independent.
2006-10-23 02:56:28 +03:00
Daniel Stone
57f98e2b72 kdrive/tslib: port to new absolute API, remove debugging
Port to new absolute device (not touchscreen) API, and remove some
leftover debugging.
2006-10-23 02:55:41 +03:00
Daniel Stone
a6dc629052 kdrive/os: add KdOsAddInputDrivers
Add KdOsAddInputDrivers, which adds all relevant input drivers.

Could possibly be refactored to KdAddInputDrivers, which called through
OsFuncs to a new function, if it existed.
2006-10-23 02:54:59 +03:00
Daniel Stone
ac240b00ff kdrive/input: use Absolute instead of Touchscreen
Adjust to suit Zepheniah's new absolute device API.
2006-10-23 02:54:07 +03:00
Daniel Stone
b1ba4b3e8a kdrive/neomagic: include vesa.h, use DebugF 2006-10-23 02:53:15 +03:00
Daniel Stone
f08b6b2367 kdrive: change DEVICE_TOUCHSCREEN to DEVICE_ABS_{CALIB,AREA} 2006-10-22 12:30:02 +03:00
Daniel Stone
aeba855b07 move keymap copy to event processing, from enqueuing
Move the keymap copying to event processing time (in
ProcessInputEvents), instead of being at event enqueuing time.
Break SetCore{Pointer,Keyboard} out into separate functions.
Change mieqEnqueue to take a device pointer, that asks for the
_original_ device associated with this event.
2006-10-20 00:43:11 +03:00
Daniel Stone
58314756ae GetPointerEvents: add first_valuator parameter
Add a first_valuator parameter.  Looks correct by inspection, but untested
with first_valuator != 0 as yet.
2006-10-08 16:18:05 +03:00
Daniel Stone
8d8e7f8bae kdrive/input: remove excessive debugging in NIDR 2006-10-08 15:26:54 +03:00
Daniel Stone
ad631afcf3 make core keyboard/pointer map functions act on all core-sending devices
Make Set{Keyboard,Modifier,Pointer}Mapping act on all devices which send core
events.
Change LegalModifier to accept a DeviceIntPtr.
2006-09-29 00:34:23 +03:00
Daniel Stone
5e9d33fe87 Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug 2006-09-07 15:43:31 +03:00
Matthew Allum
69d5becce4 Fix previous commit breaking other kdrives pulling in fbdev.a 2006-08-31 17:30:24 +01:00
Matthew Allum
fd609956f2 Add framebuffer device command line switch for Xfbdev 2006-08-31 17:18:57 +01:00
Matthew Allum
5ddbf4bcd4 Re-add support for tslib (1.0 release) and Xcalibrate extension. 2006-08-29 22:07:15 +01:00
Daniel Stone
393dc0a338 kdrive: remove @KDRIVE_LIBS@ from Xfoo_DEPENDENCIES 2006-08-29 22:53:54 +03:00
Daniel Stone
89d272bb18 [PATCH] kdrive/linux keyboard: remove more debugging spew 2006-08-29 15:18:25 +03:00
Daniel Stone
bd6f539ff9 [PATCH] kdrive/linux keyboard: silence excessive debugging noise 2006-08-29 15:18:23 +03:00
Daniel Stone
f9624e0109 kdrive/input: verify SIGIO with --enable-debug 2006-08-17 16:09:51 +03:00
Daniel Stone
5d073697ad kdrive/input: minor warning cleanups
And also a compiler error fix when VERIFY_SIGIO is defined.
2006-08-15 15:37:10 +03:00
Daniel Stone
47c1c948e6 kdrive/input: only run special key behaviours on non-XKB
Only attempt to manually deal with special key behaviours (e.g. terminating
the server) when not using XKB, and leave locking behaviour up to GKVE.
2006-08-15 15:25:16 +03:00
Daniel Stone
cec284f2b3 kdrive: properly ifdef composite enabling 2006-08-10 18:03:58 +03:00
Daniel Stone
539d1f3347 GKVE/GPE: have DDX allocate events
Don't allocate events on every GKE/GKVE/GPE call, just have the DDX manage
it instead.  Introduce GetMaximumEventsNum(), which is the maximum number
of events these functions will ever produce.
2006-08-10 14:00:14 +03:00
Daniel Stone
4be9abb850 kdrive: remove ddx_DEPENDENCIES
Remove foo_DEPENDENCIES as they weren't guaranteed to just be libs,
and loader arguments (-lfoo, -Lfoo) might've crept in.
2006-08-09 07:20:16 +03:00
Daniel Stone
bedc4ecf23 xephyr: aid input debugging
Add the 'ephyr' mouse and keyboard drivers to the driver list so we can
re-add devices.
Set the names properly in Ephyr{Keyboard,Mouse}Init, not in InitInput.
2006-08-07 23:00:45 +03:00
Daniel Stone
baf93b3abe kdrive: move map initialisation to KdNewPointer
Do a linear n -> n initialisation on the map up until KD_MAX_BUTTON in
KdNewPointer, moving it out of both KdParsePointer, and KdPointerProc.
Also remove dead pointer acceleration code.
2006-08-07 21:12:45 +03:00
Daniel Stone
ccb53340b6 ephyr: cleanup
Remove extraneous KdAddPointerDriver call.
2006-08-07 21:12:00 +03:00
Daniel Stone
9b7ecbd1dd kdrive: prevent overrun in map
We actually need n + 1 elements for the mouse button map, not n.
2006-08-07 21:09:32 +03:00
Daniel Stone
eb6e8d4042 kdrive: increase maximum number of buttons
Increase KD_MAX_BUTTONS to 32.
2006-08-07 21:05:37 +03:00
Daniel Stone
98fdf874ee move all autorepeat logic to DIX
Move core autorepeat logic for keyboards down to the DIX, remove it from
KDrive.
2006-08-07 16:51:39 +03:00
Daniel Stone
c85e64cba1 Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug 2006-08-07 15:54:55 +03:00
Daniel Stone
997ba45b19 fix incorrect button test
Test for n (1..nButtons) being under nButtons, not button (1..(1<<nButtons)).
2006-08-04 11:18:16 +03:00
Matthew Allum
39169fd373 Back out 'mystery' spurious host window hints. 2006-08-01 13:39:22 +01:00
Daniel Stone
eb7733a48a kdrive: drop excessive NewInputDeviceRequest debugging 2006-07-26 11:28:45 +03:00
Daniel Stone
4ea475924c re-add OpenedHand copyright
Ae-add OpenedHand copyright, accidentally dropped in KDrive new world
order patch.  Sorry guys.
2006-07-25 20:00:48 +03:00
Daniel Stone
7465010d59 Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug 2006-07-21 19:05:41 -04:00
Daniel Stone
1d31ed7782 xephyr: load keysyms at init, not enable
Load keysyms at init time, not enable, so we don't get the wrong map width.
2006-07-21 19:02:52 -04:00
Adam Jackson
0aaac95b0d Remove RCS tags. Fix Xprint makefile braindamage. 2006-07-21 17:56:00 -04:00
Daniel Stone
7711c56d2e xephyr: fix keymap, pointer; dix: fix multiple axes
Initialise our axes properly in the DIX, and make sure we don't
unnecessarily clip maxval when it's not set.
Fix keymap copying in Xephyr (to some degree: it's still broken),
and set nAxes and nButtons properly.
2006-07-21 15:19:54 -04:00
Daniel Stone
f18c3122a5 sanitise debug output
Don't spit out huge chunks of pointless ephemera, especially without
--enable-debug.
2006-07-21 15:19:54 -04:00
Daniel Stone
463e0fe35b update KDrive to new input API
Update KDrive to fit the new API (mieqInit and InitPointerDeviceStruct), and
include InitTouchscreenDeviceStruct in the DIX.
2006-07-21 15:19:54 -04:00
Daniel Stone
02d0910511 new KDrive input world order
Convert KDrive to GPE/GKE interface.
Add first-class drivers and enumerate every device separately through
Xi, instead of lamely attempting to aggregate them.
Add XKB support to the Linux keyboard driver.
Add 'thumb button' support to the tslib driver.
Rejig InitInput, so each DDX has to add a list of drivers it supports.
Support NewInputDeviceRequest, et al.
2006-07-21 15:19:51 -04:00
Daniel Stone
27df2eda79 fix KdXvCopyPackedData to actually work
Remove extraneous bit shift in KdXvCopyPackedData, so it's actually
useful.
2006-07-21 15:17:35 -04:00
Matthew Allum
90a9b82272 Fix crash in Xephyr when running on host X with keymap width < 4 ( i.e xvnc ) 2006-07-08 21:57:07 +01:00
Matthew Allum
e805621894 Add support to Xephyr for simulating 8bit grayscale. 2006-07-08 21:10:58 +01:00
Daniel Stone
a73e0f8cdf Die XTESTEXT1, die! 2006-06-01 18:47:47 +00:00
Daniel Stone
fd8bde8bb0 Remove -xkbmap argument. 2006-05-29 11:14:03 +00:00
Alan Coopersmith
b46d6a44fa Make Xephyr build on Solaris:
Add #include <sys/file.h> on Solaris for FNONBLOCK/FASYNC definitions
hw/kdriver/linux/Makefile.am Move agp.c & agp.h to KDRIVE_HW_SOURCES since
    they're not needed for Xephyr-only builds
Add -lrt to XEPHYR_LIBS if needed to get nanosleep().
2006-05-03 23:45:16 +00:00
Adam Jackson
291e89d4f2 Remove NEED_LINEHELPER BC cruft for pre-R6 DDXes. 2006-04-30 19:16:14 +00:00
Eric Anholt
3d4ca57b69 Add a helper for the Component Alpha Over case, which breaks the operation
down into an OutReverse and an Add. Turn off the fallback to software
    glyphs when component alpha, now that we expect all (new) drivers to be
    able to support it. Also, make Xephyr fall back in the CA Over case to
    exercise this code. This speeds up my rgb24text and ls -lR in
    gnome-terminal by a factor of 5.
2006-04-26 18:27:40 +00:00
Eric Anholt
074dc9a023 Add an option to verify at the point of migration that pixmaps which aren't
marked dirty are in fact not dirty. This will hopefully help catch
    issues like the previous commit. Leave it on in fakexa.
2006-04-25 16:47:23 +00:00
Eric Anholt
c947d796aa Missed in previous commit: Add a new migration scheme, called "Smart" for
lack of a better name. This one behaves somewhat between Greedy and
    Always. It moves in if we can accelerate, unless the destination is
    clean and shouldn't be kept in framebuffer according to the score, in
    which case we migrate out (and force-migrate anything where migration
    is free). This should help fix lack of acceleration for drivers without
    UTS since removing exaAsyncPixmapGCOps, and has removed one performance
    trap with Radeon I'd noticed. It is the new default.
2006-04-18 19:18:43 +00:00
Donnie Berkholz
ba632f697a Fix kdrive build by linking in libexa before KDRIVE_LIBS. 2006-04-17 07:10:31 +00:00
Adam Jackson
b2097b99a2 ../stub 2006-04-02 21:45:03 +00:00
Eric Anholt
ccca76b808 Clean up warnings and a debug printf. 2006-04-01 23:41:23 +00:00
Eric Anholt
2e38fedd29 Add an option to EXA for the DDX to request that EXA hide the pixmap's
devPrivate.ptr when pointing at offscreen memory, outside of
    exaPrepare/FinishAccess(). This was used with fakexa to find (by NULL
    dereference) many instances of un-Prepared CPU access to the
    framebuffer:
- GC tiles used in several ops when fillStyle == FillTiled were never
    Prepared.
- Migration could lead to un-Prepared access to mask data in render's
    Trapezoids and Triangles
- PutImage's UploadToScreen failure fallback failed to Prepare.
2006-03-31 19:41:28 +00:00
Eric Anholt
5c04610f8a Add a dependency on EXA, so it rebuilds when the library does. The manual
indicated I shouldn't do this, but experience indicates I should.
2006-03-30 21:21:59 +00:00
Eric Anholt
3cf46cc1e3 Add an UploadToScreen implementation, for testing PutImage support, and
make the DownloadFromScreen more robust.
2006-03-30 05:15:58 +00:00
Eric Anholt
4bb5ab0b44 Add a DownloadFromScreen implementation, used for testing GetImage
acceleration, and set the migration scheme to Always on init (since
    this is all for testing, and Always should make migration happen more
    frequently than Greedy).
2006-03-29 22:03:18 +00:00
Eric Anholt
d695579848 If fakexa is enabled, create a larger buffer in the Ximage, but keep the
same width/height for front-buffer drawing. The fakexa code then uses
    this extra space for offscreen pixmaps. Note that this tones down the
    absurdity of fakexa's offscreen pixmap alignment requirements (odd
    alignment is too weird, so stick with "24", which is still strange but
    exists out there). It also fixes a couple of bugs in the fakexa
    implementation revealed by using offscreen pixmaps.
2006-03-10 21:36:24 +00:00
Eric Anholt
2822cbc1fb Rearrange EXA driver structures so that there's a hope of maintaining ABI
when extending the driver interface. The card and accel structures are
    merged into the ExaDriverRec, which is to be allocated using
    exaDriverAlloc(). The driver structure also grows exa_major and
    exa_minor, which drivers fill in and have checked by EXA
    (double-checking that the driver really did check that the EXA version
    was correct). Removes exaInitCard(), which is replaced by the driver
    filling in the rec by hand, and the exaGetVersion() and related
    EXA_*VERSION which are replaced by always using the XFree86 loadable
    module versioning.
2006-03-09 06:04:07 +00:00
Eric Anholt
b7d2dfc1e5 Add appropriate MIT license. Oops. 2006-03-07 20:06:15 +00:00
Eric Anholt
9d8c0e4bcb Add a new flag to ephyr, "-fakexa", which turns on an EXA acceleration
implementation that calls fb to get its work done. The purpose is to
    have a trusted EXA driver for use with testing changes to the core of
    EXA. However, fakexa has not received much testing yet, lacks offscreen
    pixmaps support, and doesn't reliably provide garbage when EXA doesn't
    get its syncing right. All of these should be fixed soon.
2006-03-07 19:57:46 +00:00
Keith Packard
8987b2c1ef Make more extensions optional in build (for kdrive). Fix kdrive build for
actual hardware. Fix kdrive pointer signed/unsigned types. Add
    kdrive-required YX rotation functions. Replace rgb text file loading
    with static rgb color table.
2006-02-16 07:17:31 +00:00
Eric Anholt
50e2ff9a25 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-15 03:20:55 +00:00
Benjamin Herrenschmidt
2dc7b5e0d9 Move call to xf86WrapperInit() to OsVendorInit() in xf86Init.c and remove
stubs in other DDX.
2006-02-13 04:43:40 +00:00
Eric Anholt
5f45776ef3 Add missing HAVE_DIX_CONFIG_H which caused issues with mismatched screen
structure interpretations, and remove a bunch of unused junk from
    kdrive-config.h. Xephyr almost works on my amd64.
2006-02-12 10:30:47 +00:00
Eric Anholt
4fafba61d5 Remove libcwrapper damage from GLX (requires fresh Mesa HEAD), and get it
compiling in kdrive.
2006-02-11 03:03:45 +00:00
Eric Anholt
a8cec1b656 Merge from kdrive: use RECT_PRIM to avoid tearing in xvideo. 2006-02-10 09:00:02 +00:00
Eric Anholt
efc3fab7f4 Make kdrive (i.e. Xephyr only) buildable on FreeBSD and probably other OSes
without linux VT switching, fbdev, and vm86 support.
2006-02-10 07:52:05 +00:00
Daniel Stone
2949c705f1 Add all subdirs used to DIST_SUBDIRS, and files to EXTRA_DIST.
Attempt to build xeglmodule.c, not xglxmodule.c.
Add xf86Sbus.h to EXTRA_DIST, as _HEADERS doesn't appear to get the same
    treatment as _SOURCES in terms of automatically DISTing.
2006-01-10 03:23:05 +00:00
Adam Jackson
49a9249239 Make kdInputMachine static const, shrinks .data a bit. 2005-12-29 21:11:41 +00:00
Adam Jackson
05c139d4cd Enough build fixes to get {sdl,ephyr,fake} to link. 2005-12-28 10:02:54 +00:00
Adam Jackson
27d79ab2bc s/XSERVER/KDRIVE/ 2005-12-27 23:03:15 +00:00
Adam Jackson
72817714a0 Remove Imakefiles. 2005-12-27 23:01:27 +00:00
Adam Jackson
7fd73d2953 Build fixes: XSERVER_LIBS -> KDRIVE_LIBS, config.h -> kdrive-config.h 2005-12-27 08:29:50 +00:00
Keith Packard
a11ce76b06 Build with modular X.org libraries and headers.
composite/compwindow.c Don't damage unmoved windows. Let border clip reset
    leave damage alone, pending actual damage for painting.
2005-08-08 06:25:21 +00:00
Matthew Allum
4220a0c4cc Make Xephyr work without shadow fb 2005-08-05 09:08:32 +00:00
Damien Ciabrini
4047191124 Added hardware support for transformation matrix (zoom, rotation, etc...).
Fixed the composition function for RGB and A8 format. Avoid syncing
    hardware after HW fills or copies.
2005-07-06 15:34:22 +00:00
Damien Ciabrini
c48f631cdb Fix offset alignment code in the offscreen memory allocator to prevent
textures from being allocated in the next free memory area.
2005-07-06 13:57:41 +00:00
Matthew Allum
0929f79c1b Another Xephyr focus/modifier fix 2005-06-30 13:39:00 +00:00
Lars Knoll
d8a98454e3 Add support for gradients and solid fills to Render.
Changed the semantics of the Convolution filter a bit. It now doesn't try
    to normalize the filter values but leaves this to the client. This
    gives more reasonable behaviour in the limit where the filter
    parameters sum up to 0.
2005-06-29 11:57:16 +00:00
Matthew Allum
5620122206 Fix issues with focus in and modifiers from host confusing Xephr 2005-06-23 16:50:07 +00:00
Matthew Allum
a668b6c11a redo tslib 2005-06-23 16:34:07 +00:00
David Reveman
2eab094816 Build fixes 2005-06-13 16:38:06 +00:00
Eric Anholt
d24ed90547 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-10 02:14:44 +00:00
Eric Anholt
75065f3a54 Perform a warnings sweep on hw/kdrive. A number of these were my fault, but
some come from others.
2005-06-09 23:22:55 +00:00
Eric Anholt
e11e60b361 Greatly improve the correctness and performance of the MGA render
implementation. Includes cache flushing to prevent bad first reads of
    the framebuffer, fixing blending of many formats, falling back on many
    unsupported operations, and falling back early to prevent migration.
    Passes all of rendercheck except some of the blend (!) tests.
2005-06-09 21:59:26 +00:00
Matthew Allum
92b3775ae8 TSLib fixes. Add fullscreen support to ephyr 2005-06-09 16:22:27 +00:00
Eric Anholt
545c082cf9 - 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-06-09 10:44:45 +00:00
Keith Packard
b4b27e9eaa Force DPMS normal on screen enable
Add placeholder for bit used to redirect input
Add macrovision register defines
2005-02-28 20:45:15 +00:00
Eric Anholt
c4b3fcda98 Move the draw tracing supplies into ati_draw.h, and do some touchups on it.
(When tracing drawing, I want to know what I'm drawing to, at a
    minimum).
2005-02-21 03:44:10 +00:00
Eric Anholt
de34b0eefc Extend the filter support to R200, and do the check for filter settings in
Check rather than Prepare, to avoid migration of things we won't be
    able to accelerate.
2005-02-21 03:05:55 +00:00
Søren Sandmann Pedersen
35bd81dfec Fri Feb 11 14:28:22 2005 Søren Sandmann <sandmann@redhat.com>
When COMPOSITE is enabled, call CopyWindow even when the pixels "don't
    move" on screen.
Don't reject modes that are not supported by the unused monitor.
2005-02-11 19:38:04 +00:00
Keith Packard
aab9a8dd99 Add initial evdev framework 2005-02-09 03:56:35 +00:00
Keith Packard
db2c83551c hw/kdrive/ati/radeon_composite.c Support linear filtering
Change how touch screens work -- make them just another 'mouse' device. Add
    unfinished (and unused) code to accelerate tiled fills.
2005-02-08 22:43:54 +00:00
Eric Anholt
5ca5fe7111 Add an OUT_RING_REG macro for use with DMA_PACKET0, which is like OUT_RING
but includes debugging to ensure that the reg being submitted is the
    one that follows in the packet. Convert most uses of OUT_RING to it,
    and convert a couple of OUT_REG sets to DMA_PACKET0/OUT_RING_REG. Also,
    add checking to see if more registers are submitted to a DMA_PACKET0
    than should be, to avoid hangs during stupid mistakes (checking for
    less isn't done).
2005-01-27 05:25:57 +00:00
Eric Anholt
0bd459488b Move the bailing out due to ATIUploadToScreen() being unfinished up
farther, so that the traces aren't as confusing.
2005-01-27 03:52:49 +00:00
Eric Anholt
a973af4a9a Remove an unused field. 2005-01-27 03:50:48 +00:00
Keith Packard
8813898ef6 Fix R100 text by forcing the 3d engine to idle before executing more 3d
commands. Add docs for the ISYNC_CNTL register, which doesn't quite do
    what we want.
2005-01-25 06:04:21 +00:00
Eric Anholt
33155b4fd3 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-25 03:37:05 +00:00
Keith Packard
3b1f1508b1 Add tracing. Hack Radeon cache registers to use 3D addresses. Works on M6 2005-01-25 02:39:48 +00:00
Eric Anholt
6eaca06dac Fix a leak of a region when the driver's CheckComposite fails. 2005-01-25 01:40:18 +00:00
Eric Anholt
8a1bee8ea9 Silence a warning about uninitialized variable (though it would be). 2005-01-25 01:38:26 +00:00
Keith Packard
d7263b11f0 Reinitialize offscreen memory before enabling cursor on VT switch-to 2005-01-20 20:51:27 +00:00
Eric Anholt
13c6b2f0b6 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-20 16:22:04 +00:00
Eric Anholt
dbe45c7159 Use RadeonSwitchTo3D() instead of doing the WAIT_UNTIL ourselves (RST3D()
also does DC_FLUSH, which may be important).
2005-01-20 07:28:02 +00:00
Eric Anholt
fc43c15494 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-20 07:09:00 +00:00
Eric Anholt
7775506534 Make R200 PDMA work -- primary queue sizes are now 9 bits, not 8. 2005-01-20 01:09:48 +00:00
Keith Packard
ff433adba3 Prefer 32bpp to 24bpp. Fix 16 color planar mode (!) 2005-01-19 06:35:28 +00:00
Eric Anholt
106703edf6 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-22 18:39:41 +00:00
Eric Anholt
fa0677ab43 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 09:51:47 +00:00
Eric Anholt
4b0247b9e0 Whitespace nit. 2004-12-21 09:49:30 +00:00
Matthew Allum
47935dd7f0 Xephyr on Xorg fix 2004-12-06 22:29:31 +00:00
Phil Blundell
2620676306 Patch from Florian Boor <florian.boor@kernelconcepts.de>:
Check return value from ts_config. (TslibInit): Likewise.
2004-12-01 19:43:29 +00:00
Phil Blundell
df2f2ff5a4 Re-read "fix" structure from kernel after mode selection, in case line
pitch has changed.
2004-11-28 23:20:17 +00:00
Matthew Allum
2b75c19ea2 minor Xephyr fix 2004-11-24 17:50:50 +00:00
Matthew Allum
a96254234f XEphyr -parent switch fixes 2004-11-24 17:08:06 +00:00
Phil Blundell
636a9e7868 Don't leave stale pointers hanging around after ts_close(). (TslibFini):
Likewise.
2004-11-13 18:03:16 +00:00
Phil Blundell
36d9e01c0d New global variable. (KdProcessArgument): Set it to TRUE on -nozap switch.
(KdUseMsg): Add help for -nozap and -rgba switches.
Declare.
Honour dontZap flag.
2004-11-13 16:41:00 +00:00
Matthew Allum
d7f46f71d8 Xephyr grab fix 2004-11-11 14:55:30 +00:00
Matthew Allum
50cdff7ee2 Xephyr improvements 2004-11-09 11:36:49 +00:00
Matthew Allum
81a3b6fe27 Add support to Xephyr for lower depths than hosts 2004-11-08 22:39:47 +00:00
Phil Blundell
e0cc487149 Add epson.
Build Makefile in hw/kdrive/epson.
2004-10-20 18:06:58 +00:00
Phil Blundell
258c9016a0 Block SIGIO before disabling input fds. (KdEnableInput): Unblock it after
enabling them again.
2004-10-20 18:02:32 +00:00
Phil Blundell
cbd5fbcb7e Import Epson 13806 driver from Costas Stylianou:
New files.
2004-10-20 08:20:51 +00:00
Eric Anholt
b600fcda38 Fix the R200 Render code. Composite and Trapezoids are now supported just
as well as on R100.
2004-09-20 03:12:00 +00:00
Eric Anholt
90ff3688cd Unbreak the AGP DRI case. That was quite a pile of broken code. 2004-09-19 10:57:31 +00:00
Phil Blundell
0d95bdfbab Only set screen parameters if resolution has changed from current values.
Patch from scoony@noos.fr.
2004-09-14 23:08:10 +00:00
Eric Anholt
ba3b6fd23b 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-14 06:26:54 +00:00
Eric Anholt
80dc84d067 - 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 23:22:31 +00:00
Eric Anholt
ab50679aab Fix a bad argument missed in the previous commit for ATIDRIDMA* functions. 2004-09-12 23:01:24 +00:00
Eric Anholt
2d069b1d19 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 22:21:12 +00:00
Eric Anholt
27b5a65f05 Reset the CCE/CP on engine reset, and make the ATIDRIDMA functions take a
more useful argument.
2004-09-12 20:31:39 +00:00
Eric Anholt
fcd52d276f Add missing kaa.h include for kaaInitTrapOffsets. 2004-09-12 20:19:15 +00:00
Eric Anholt
b5d406e8c8 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 20:02:10 +00:00
Eric Anholt
7cab70d1cb 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-12 19:52:51 +00:00
Eric Anholt
0cd662ea80 - 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-09-11 09:28:19 +00:00
Eric Anholt
396100dd23 - Don't require Imrecise mode for Trapezoid acceleration. It looks like we
might be able to do Precise in hardware, so leave it up to the driver.
- Add a helper function for computing a set of offsets for smooth trapezoid
    rasterizing using many sharp trapezoids.
2004-09-11 09:23:12 +00:00
Matthew Allum
501dcf37aa cursor fixes 2004-09-08 11:31:49 +00:00
Matthew Allum
20918ab480 avoid ephyr breakage when tslib enabled 2004-09-07 19:00:04 +00:00
Matthew Allum
8bf6ea903b fixes to Xephyr debug mode 2004-09-07 12:44:19 +00:00
Matthew Allum
2753c8e2c8 see changelog 2004-09-01 15:30:58 +00:00
Matthew Allum
7c0aaa53bf '-dpi' fixes for Xephyr 2004-09-01 11:13:36 +00:00
Matthew Allum
16ff3a8727 Actuall select events for -parent option 2004-09-01 08:31:20 +00:00
Matthew Allum
2d065c4c33 Added ephyr server sources 2004-08-31 16:33:05 +00:00
Eric Anholt
6ec9ecd591 Add a set of three hooks for accelerating trapezoids, and use it for the
RasterizeTrapezoid screen function. These hooks will be called for
    imprecise, non-sharp trapezoids with A8 destinations.
Note that the current main consumer of trapezoids, cairo, is requesting
    precise, sharp trapezoids by not changing the default Picture
    attributes, but gets non-sharp effects in software because fb bases its
    choice of sharp/non-sharp on the mask format being A8 vs A1, and cairo
    asks for A8. Follow fb's (poor?) example by ignoring the sharp setting
    and basing the choice off of the mask being A8.
2004-08-30 22:16:46 +00:00
Eric Anholt
ccaf332ce3 Rather than initially place pixmaps in framebuffer based on a size
heuristic, delay the decision until the first
    kaaPixmapUse{Screen|Memory}, and put it in framebuffer if UseScreen was
    called. Provides a significant improvement in cairo speeds (100%
    speedup in cairogears here) and is likely to improve text performance
    as well.
2004-08-30 16:43:10 +00:00
Keith Packard
f15f881727 Eliminate bogus rate check in fbdevModeSupported. Hmm. Potentially bogus
rate selection necessary for Mac fbdev
Don't know about fb changes to pixmaps, so can't track dirt.
Add Mac specific 1280x854 mode. Warn when requested mode isn't found.
Add ability to soft-boot video cards.
Add region expand request. FIXME: need test cases
2004-07-26 17:14:27 +00:00
Keith Packard
c57944cd9a Check for mmio before restoring crtc/crtc2 pitch registers 2004-07-24 17:02:49 +00:00
Keith Packard
9565d9e0cf Correct pitch so that accelerator can run on 1400x1050 screens. Add a few
more register sets for cursors.
2004-07-22 18:17:59 +00:00
Phil Blundell
448e0754e3 Include -lts if appropriate. Patch from pattieja@bentham.ispvip.biz. 2004-07-21 20:33:35 +00:00
Phil Blundell
07e6011106 Select optimized
16bpp shadow copy functions if screen is 16bpp. Select -YX versions for
90 and 270 rotations if architecture is ARM.
2004-07-20 14:33:42 +00:00
Eric Anholt
8853f93318 Add support for a8b8g8r8 and x8b8g8r8 pictures, which showed up frequently
with metacity usage.
2004-07-19 12:07:01 +00:00
Eric Anholt
adf4b38f49 Breakage in last commit to this file: pCurPriv->area isn't set up until
Enable, these days.
2004-07-19 11:42:49 +00:00
Eric Anholt
d2e74e419d Set the right number of texture coordinates for r200 Render support (still
disabled, needs to be tested).
2004-07-19 11:19:12 +00:00
Eric Anholt
cefcb7f123 - 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 11:16:13 +00:00
Eric Anholt
9fe216a458 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 07:53:54 +00:00
Eric Anholt
e2bb9f38cd Add support for transforms of textures on R128. 2004-07-19 07:20:01 +00:00
Carlos Romero
3e52373fc8 Enable i810. 2004-07-15 09:56:40 +00:00
Eric Anholt
aeb78eaa98 Commit the rest of the dirty optimization from 20040703 and add a missing
header include. I don't know how this happened, but I'm going to blame
    a "few" fscks having happened between testing the code and committing
    (due to other driver changes that made me not blame dirty for the
    failures I saw) for disappearance of kasync.c changes. Fixes a lot of
    corruption.
2004-07-08 08:21:25 +00:00
Eric Anholt
b467673528 Remove duplicate protos in kdrive.h. 2004-07-08 06:57:58 +00:00
Carlos Romero
764d9e822b missing xkb/[xkb.h, xkbDflts.h] and hw/kdrive/mga/g400_common.h 2004-07-07 20:43:25 +00:00
Carlos Romero
f96ef08d48 Initial kdrive XKB/XINPUT support, use --enable-xkb --enable-xinput 2004-07-07 19:21:07 +00:00
Eric Anholt
7c466d64c3 Clean up Rage 128 composite code. Now it composites more operations
correctly and is simpler.
2004-07-03 10:23:03 +00:00
Eric Anholt
0207015669 Add a "dirty" flag to the pixmap private. Clear it when setting up an
offscreen pixmap area, and set it when any rendering occurs. When
    moving a pixmap out of offscreen, don't read data back if it wasn't
    dirtied (compared to the system memory copy).
2004-07-03 09:16:30 +00:00
Phil Blundell
fd594b0559 Call ts_read multiple times, to avoid events getting stuck in the pipeline. 2004-07-02 21:30:00 +00:00
Eric Anholt
d5db59bd79 Add an offscreen area scoring to improve choosing offscreen areas to kick
out when allocation can't find a free area of the requested size. When
    offscreen pixmaps get used, the offscreen area's score is increased by
    a constant value. Every certain number of increases, all offscreen area
    scores get decreased by a fraction. When choosing a set of areas to
    remove for a new allocation, the set of areas with the smallest total
    score is chosen for removal. While this is not the smartest system, it
    prevents things like always removing the first offscreen area in memory
    (likely the most recent) to be kicked out when doing replacing.
2004-06-29 20:37:51 +00:00
Keith Packard
7ff67f2872 Separate out off-screen allocation from Init. Fix Enable to update
off-screen addresses. Wrap RandR to update off-screen addresses.
Set off_screen_base and memory_size fields correctly.
2004-06-28 00:48:51 +00:00
Keith Packard
5b75aae2cf Add ARGB cursor support for Radeon cards. 2004-06-26 04:13:03 +00:00
Damien Ciabrini
da78a4ddd8 Update MGA composite patch commit. (some files were missing in the previous
commit)
2004-06-16 21:36:54 +00:00
Jaymz Julian
580b9a7da1 MGA composite support from Damien Ciabrini - thanks! 2004-06-14 08:43:57 +00:00
Eric Anholt
4ffde8a6b3 - 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 19:22:58 +00:00
Eric Anholt
c3bc6dd551 Align scratch area offsets to the offscreen byte alignment. 2004-06-10 09:50:59 +00:00
Eric Anholt
cf3f95d216 Oops, testers reported that the last patch actually didn't work (conflicts
occurred), so the R300 PDMA doesn't work. Disable.
2004-06-10 08:37:28 +00:00
Eric Anholt
0b7647ee35 Bug #242: Fix setup of R300 cards, by providing R300 CP code from
volodya-project and initializing PDMA.
2004-06-10 05:57:31 +00:00
Franco Catrin L
b3a18ca8b8 Neomagic driver enabled 2004-06-07 05:13:29 +00:00
Franco Catrin L
893ea12559 small fixes. README added 2004-06-07 05:05:10 +00:00
Keith Packard
f8a1dd3ce7 Add top-level build support for GL X server (not working yet)
Fix a few allocation bugs with alternate visual ids Allow for non-8/8/8
    alternate visuals
Turn off any existing shadow before enabling it again (avoids
    re-registering existing damage)
Add some validation code to catch re-registered damages
2004-06-04 16:10:50 +00:00
Phil Blundell
6741fadc52 New conditional. (REQUIRED_MODULES): Demand xcalibrateext if building
XCalibrate.
New file.
Add xcalibrate.c.
Read raw events if requested.
2004-06-02 20:49:50 +00:00
Phil Blundell
d4d0c8470c Add -lts if using tslib. 2004-05-30 20:40:30 +00:00
Carlos Romero
8124810950 Initialize permedia engine for acceleration to work. 2004-05-30 13:51:18 +00:00
Ralph Thomas
ea1bbf8d83 Adding driver for VIA CLE266 graphics chip. Currently it only accelerates
copy and fill operations.
2004-05-29 12:15:46 +00:00
Daniel Stone
6af411b02e Hey, I like devfs.
Try /dev/fb/0 if /dev/fb0 fails.
2004-05-28 04:56:49 +00:00
Carlos Romero
f8124d3ef5 Add pm2 to the build 2004-05-25 13:02:44 +00:00
Carlos Romero
32d0920ef9 Initial import of Permedia2 driver 2004-05-24 19:31:41 +00:00
Keith Packard
932efe8e6d Allow for multiple composite-based visuals, then add an RGB24 visual in
addition to the ARGB32 one. This allows 'glitz' to run on top of any X
    server using mesa.
Switch to using 32bpp for depth 24 pixmaps (even when the frame buffer is
    not depth 24).
2004-05-21 03:32:27 +00:00
Keith Packard
cde51fd05b Miscomputing pitch in 24bpp modes because of rounding errors. 2004-05-20 19:51:44 +00:00
Keith Packard
b9d920f3dc Fix SYNC_ALWAYS (debugging) code to use mach64WaitIdle instead of
KdCheckSync -- the boolean used in the latter won't be set yet.
Oops. == instead of =.
Must sync hardware before rasterizing trapezoids in case the mask is in
    off-screen memory and has just been erased. Yes, it is silly to place
    masks in off-screen memory. That's a separate issue.
2004-05-20 05:27:03 +00:00
Keith Packard
94648799c8 Pin header-only pixmaps in memory.
Off-screen reallocation could have used a stale pointer.
Separate framebuffer mapping computation from actual frame buffer mapping.
    Now map the frame buffer from vesaEnable so that VT switch shares the
    same mapping code. This makes sure any shadow framebuffer is allocated
    again.
2004-05-20 02:42:20 +00:00
Eric Anholt
cade317d31 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-05-17 20:18:02 +00:00
Eric Anholt
834537e212 Make kaaMoveInPixmap public. This will be used by the ATI driver's xvideo
support to ensure that the destination is in framebuffer.
2004-05-17 07:19:49 +00:00
Eric Anholt
85f46e0bcd Add new CheckComposite hook. This allows a driver to avoid the migration of
pixmaps for a Composite operation if the operation can't be supported.
    This hook is optional.
2004-05-17 07:14:23 +00:00
Eric Anholt
74b2a76947 Add new flag, KAA_OFFSCREEN_ALIGN_POT, which tells KAA to align pixmap
pitches to a power-of-two number of bytes. Useful for Render
    acceleration on older cards.
2004-05-14 00:34:28 +00:00
Eric Anholt
2bea33e881 Don't let the visible screen get "migrated" offscreen, which manifests
itself as a hang.
Reported by: Ginokas <ginokas@free.fr>
2004-05-14 00:27:29 +00:00
Eric Anholt
40354e7618 Add generic functions for copying packed/planar XV data, copied from
mach64.
2004-05-13 22:57:15 +00:00
Eric Anholt
2e330e980f Move fourcc.h to a generic location in src/. 2004-05-13 21:41:48 +00:00
Keith Packard
f52a4d472d Follow GLX in setting ARGB visual nplanes to 24.
Retry current mouse protocol when sync is lost
2004-05-13 21:25:51 +00:00
Eric Anholt
aa5a878472 There's no need to explicitly set softCursor -- kdrive handles this if the
cursor hooks aren't set.
2004-05-13 21:15:06 +00:00
Keith Packard
7124cfaa00 Use current resolution by default, change rate to 75 to match
fbdevModeSupported cut-off (?). Glenn McGrath <glennm@hydrix.com>
2004-05-06 16:19:32 +00:00
Keith Packard
b5f200ce9d Attached is a patch to fix a build error whe ncompiling with tslib support,
a variable wasnt set, i just changed it to be like the other
    MAkefile.ams :) -- Glenn McGrath <glennm@hydrix.com>
2004-05-04 03:28:06 +00:00
Keith Packard
a8429d7610 Add completely fake X server -- draws to allocated buffer, has no keyboard
or mouse.
2004-04-28 07:26:46 +00:00
Franco Catrin L
20248eedd6 fixed Changelog format 2004-04-11 16:39:48 +00:00
Franco Catrin L
bc7168ee76 Added ROP 2004-04-11 16:24:03 +00:00
Franco Catrin L
784d37ee36 Fixed size calculation in solid rendering 2004-04-11 15:51:04 +00:00
Franco Catrin L
056322336c Basic bitblt implementation 2004-04-11 15:20:17 +00:00
Franco Catrin L
c231856a13 First acceleration function implemented (DrawSolid) 2004-04-11 00:53:10 +00:00
Franco Catrin L
47436a8af8 Finnally got MMIO working all timecat ChangeLog cat ChangeLog cat ChangeLog
:-D
2004-04-11 00:15:57 +00:00
Franco Catrin L
1740b938e4 Return back to VESA only version 2004-04-06 18:09:44 +00:00
Franco Catrin L
07bc231872 small fixes, but still can't get this driver woking again 2004-04-05 18:19:34 +00:00
Brent Cook
b526276faa removed hardcoded vesa references so we can operate with any backend. fbdev
works for initializing the screen, but input fails shortly after.
2004-04-05 02:52:35 +00:00
Brent Cook
920e6ff81b Begin separating VESA calls into a more generic backend wrapper like the
ati driver, cascading between VESA and FBDEV. We only have init
    functions done so far; need to add all of the others. Fixed some
    compiler warnings. Whitespace and formatting cleanups (using 4 spaces,
    no tabs)
2004-04-04 07:30:07 +00:00
Brent Cook
530371ceaf added touchscreen support, detect all known PCI chips in the Neomagic line.
We'll not bother with ISA for now.
2004-04-03 22:26:37 +00:00
Brent Cook
962b898868 initial import of original driver by Franco Catrin L. Wraps VESA for most
parts, with some hardware acceleration enabled for the cursor on the
    NM2300.
2004-04-03 22:22:48 +00:00
Daniel Stone
45b638b87f Twenty link errors for Xizzle now - count 'em. 20.
Get rid of all references to SCO.
Change SDK include dir to $(includedir)/xizzle. Add SDK libs where
    necessary.
Reformat to be nicer and easier to shuffle around; also, fix lib ordering
    so we get so much closer to the elusive final link. Shuffle
    common/xf86Init.c into libxizzle.a.
Fix a couple of early snafus - s/BUILDXI/XINPUT/, et al; make the SDK stuff
    conditional as needed; fix the SBus includes.
Name library os-support/libxizzleos.a, not os-support/foo/libxizzlefoo.a.
    Clean up ARCH_SOURCES so it's always initialised to something.
Move linked libraries to _LIBADD, which somehow escaped my attention. Make
    inclusion of drm/libxizzlelinuxdrm.a dependent on DRI.
s/VERSION/VBE_VERSION/;
Axe this redundant dir.
All Xizzle-specific: axe hw/xizzle/Xi, shuffle link order, fix list of
    required modules to be vaguely sane, add some pertinent libs/incs.
2004-03-10 11:49:11 +00:00
Jaymz Julian
6c412a43e4 sdl x server so that we can x-on-x the fb stuff for ease of debugging. if
anyone uses this in production, a big scary monster will eat them. hrm,
    perhaps i should make it have a --i-know-what-i'm-doing param that it
    doens't start without, heh
2004-02-28 09:47:55 +00:00
Warren Turkal
a27ffd2678 completely get rid of NeedNestedPrototypes
completely get rid of NeedVarargsPrototypes
remove a lot of NeedFunctionPrototypes
ansify many function declarations
2004-02-18 02:12:44 +00:00
Warren Turkal
b146ef1548 Moving toward a working input extension. 2004-02-15 15:04:57 +00:00
Jaymz Julian
bd20c8d340 Polling input mode for the kdrive os layer. And a moose! 2004-02-05 09:09:51 +00:00
Jaymz Julian
af798d2774 More NULL checks. These ones are more useful than the last (which just made
debugging a bunch of problems easier), since you can implement less in
    the basic simplest case driver now (not that i'm lazy, mind :-p)
2004-02-04 16:08:27 +00:00
Eric Anholt
2ec70aa701 Disable GLX visuals code on !GLXEXT, and remove a useless prototype. 2004-01-25 05:31:24 +00:00
Eric Anholt
01e9cc858a - Add glx visuals code based on XFree86's Radeon driver.
- Reserve areas for back/depth/span when USING_DRI && GLXEXT. This would be
    better in a TransitionTo3d, but we'd need to work with the offscreen
    memory manager for that.
- Misc. fixes to ati_dri.c for DRI+GLX. Needs more work still.
2004-01-25 01:30:33 +00:00
Eric Anholt
f2bedd17af Oops, turn fallback output back off. 2004-01-25 01:16:19 +00:00
Eric Anholt
26c5a8dfdd Whitespace cleanup. 2004-01-25 01:04:12 +00:00
Keith Packard
6870c08157 Oops, lost a diff needed for the non-screen format pixmap code 2004-01-15 09:19:56 +00:00