summaryrefslogtreecommitdiff
path: root/hw/kdrive/src/kdrive.h
AgeCommit message (Collapse)AuthorFilesLines
2009-09-09kdrive: remove xkb member from KdKeyboardInfoPeter Hutterer1-1/+0
Wasn't being used by anyone. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-06-11KDrive: Warning fixes and cleanupsDaniel Stone1-7/+0
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
2009-06-03kdrive: add protocol mouse optionOlivier Blin1-0/+1
kdrive probes a lot of PS/2 protocols for the mouse device, which makes the mouse unusable for some seconds after X startup. This new "protocol" option allows forcing the mouse protocol. It can be used this way: Xfbdev -mouse mouse,,protocol=ps/2 -keybd keyboard Signed-off-by: Olivier Blin <blino@mandriva.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-04-03kdrive: s/KdSaveString/strdup/gAdam Jackson1-3/+1
This isn't even funny anymore.
2009-01-22Input: Remove modifierMap from coreDaniel Stone1-1/+0
We already have modmap (in the exact same format!) in XKB, so just use that all the time, instead of duplicating the information. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22XKB: Make XKB mandatoryDaniel Stone1-5/+1
No more #ifdef XKB, because you can't disable the build, and no more noXkbExtension either. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2008-12-12Remove #define NEED_EVENTS and NEED_REPLIESPeter Hutterer1-1/+0
A grep on xorg/* revealed there's no consumer of this define. Quote Alan Coopersmith: "The consumer was in past versions of the headers now located in proto/x11proto - for instance, in X11R6.0's xc/include/Xproto.h, all the event definitions were only available if NEED_EVENTS were defined, and all the reply definitions required NEED_REPLIES. Looks like Xproto.h dropped them by X11R6.3, which didn't have the #ifdef's anymore, so these are truly ancient now." Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com> Signed-off-by: Adam Jackson <ajax@redhat.com>
2008-10-08s/kdDontZap/kdAllowZap/Adam Jackson1-1/+1
2008-08-05Redefine WindowTable as a fixed arrayTomas Carnecky1-2/+1
Instead of xalloc'ing it every server generation. The array is always the same size (MAXSCREENS), anyway.
2008-07-17KDrive: Delete rafts of unused codeDaniel Stone1-140/+0
Most of this stuff was gone with the last real hardware drivers that used it. Au revoir.
2008-07-02Remove KdOffscreenMarkUsed() as all its callers are gone.Chris Ball1-3/+0
2008-07-01Auf wiedersehen, KAA.Adam Jackson1-139/+0
2008-01-08[Kdrive] make XCalibrate 'orientation aware'Richard Purdie1-1/+4
2007-09-19Merge branch 'master' into XACE-SELINUXEamon Walsh1-3/+0
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.
2007-09-13Remove the PaintWindow optimization.Eric Anholt1-3/+0
This was an attempt to avoid scratch gc creation and validation for paintwin because that was expensive. This is not the case in current servers, and the danger of failure to implement it correctly (as seen in all previous implementations) is high enough to justify removing it. No performance difference detected with x11perf -create -move -resize -circulate on Xvfb. Leave the screen hooks for PaintWindow* in for now to avoid ABI change.
2007-08-28devPrivates rework: since API is already broken, switch everythingEamon Walsh1-4/+4
over to new system. Need to update documentation and address some remaining vestiges of old system such as CursorRec structure, fb "offman" structure, and FontRec privates.
2007-08-25Implement core protocol backing store exclusively in terms of Composite.Adam Jackson1-14/+0
Composite's automatic redirection is a more general mechanism than the ad-hoc BS machinery, so it's much prettier to implement the one in terms of the other. Composite now wraps ChangeWindowAttributes and activates automatic redirection for windows with backing store requested. The old backing store infrastructure is completely gutted: ABI-visible structures retain the function pointers, but they never get called, and all the open-coded conditionals throughout the DIX layer to implement BS are gone. Note that this is still not a strictly complete implementation of backing store, since Composite will throw the bits away on unmap and therefore WhenMapped and Always hints are equivalent.
2007-08-07Updates some piece of the dead mouse evdev code under the new hotplug scheme.Tiago Vignatti1-1/+2
I exported the evdev driver to Xephyr server. I'm running it using something like: $ ./hw/kdrive/ephyr/Xephyr :1 -mouse evdev,,device=/dev/input/event4 -keybd \ evdev,,device=/dev/input/event1,xkbmodel=abnt2,xkblayout=br It also closes /#5668.
2007-08-07Let xkb options be passed through command line in kdrive servers. I start myTiago Vignatti1-0/+5
Xephyr using something like: ./hw/kdrive/ephyr/Xephyr :1 -fp /usr/share/fonts/X11/misc/ -mouse ephyr -keybd ephyr,,xkblayout=br,xkbmodel=abnt2
2007-07-05Clean up unused #ifdefs from fb.Adam Jackson1-3/+0
2007-06-29Death to RCS tags.Adam Jackson1-3/+0
2006-11-01kdrive: add KdRingBell prototypeDaniel Stone1-0/+6
2006-10-29kdrive: move bell ringing into an OS functionDaniel Stone1-0/+1
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-23kdrive: numerous warning fixesDaniel Stone1-0/+3
2006-10-23kdrive/os: add KdOsAddInputDriversDaniel Stone1-0/+3
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-08-07kdrive: prevent overrun in mapDaniel Stone1-1/+1
We actually need n + 1 elements for the mouse button map, not n.
2006-08-07kdrive: increase maximum number of buttonsDaniel Stone1-1/+1
Increase KD_MAX_BUTTONS to 32.
2006-07-21new KDrive input world orderDaniel Stone1-74/+169
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.
2005-06-09- Replace the syncAccel hook in the kdrive structure with a pair of hooksEric Anholt1-16/+9
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-08hw/kdrive/ati/radeon_composite.c Support linear filteringKeith Packard1-5/+4
Change how touch screens work -- make them just another 'mouse' device. Add unfinished (and unused) code to accelerate tiled fills.
2004-11-13New global variable. (KdProcessArgument): Set it to TRUE on -nozap switch.Phil Blundell1-0/+1
(KdUseMsg): Add help for -nozap and -rgba switches. Declare. Honour dontZap flag.
2004-08-30Add a set of three hooks for accelerating trapezoids, and use it for theEric Anholt1-0/+11
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-07-08Remove duplicate protos in kdrive.h.Eric Anholt1-9/+0
2004-06-29Add an offscreen area scoring to improve choosing offscreen areas to kickEric Anholt1-0/+4
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-05-20Fix SYNC_ALWAYS (debugging) code to use mach64WaitIdle instead ofKeith Packard1-0/+6
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-20Pin header-only pixmaps in memory.Keith Packard1-1/+1
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-17Add new CheckComposite hook. This allows a driver to avoid the migration ofEric Anholt1-0/+4
pixmaps for a Composite operation if the operation can't be supported. This hook is optional.
2004-05-14Add new flag, KAA_OFFSCREEN_ALIGN_POT, which tells KAA to align pixmapEric Anholt1-1/+2
pitches to a power-of-two number of bytes. Useful for Render acceleration on older cards.
2004-02-05Polling input mode for the kdrive os layer. And a moose!add-XiJaymz Julian1-0/+1
2004-01-08- Add a new UploadToScratch kaa hook for putting the data for a singleEric Anholt1-0/+6
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-03Actually align the offset of allocated offscreen areas.Eric Anholt1-0/+1
2003-12-30- Add new Composite hook for kdrive drivers, which only ensures that theEric Anholt1-0/+17
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-29Merge dri-0-1-branch to trunk. Notable changes:Eric Anholt1-0/+13
- 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-01- Add fbdev mode-setting backend to Xati. It and vesa are compiled in whenEric Anholt1-0/+5
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-19- Add PCI information (device/vendor id, bus location) to KdCardAttr toEric Anholt1-1/+8
help with ati, and future DRM drivers. - Add new "ati" kdrive driver. It has ancestry in the r128 driver from andersca, but took a detour through being the WIP SiS 300 driver on the way. It supports Radeons (tested on QD VIVO and 7500) and Rage 128. Current limitations include that it requires depth 16 and that the other Rage 128 PCI IDs aren't included yet.
2003-11-18Added infrastructure for driver specific usage messages and added vesaSeth W. Klein1-0/+3
usage message.
2003-11-17Recompute winSize/borderSize to fix them when changing redirection.Keith Packard1-10/+25
Sufficient, but not always necessary. Add borderClip to damage on creation so that clients needn't guess. Fix API to FbDots functions to make PolyPoint work with screen_x/screen_y offsets Add debugging code to make sure no pictures are left pointing at freed pixmaps. "Can't" happen, but it did once. Change KdOffscreenArea structure to eliminate separate private structure, eliminate the ScreenPtr, change from doubly linked to singly linked list. Don't damage BackgroundNone windows on PW_BACKGROUND. Re-clip damage to borderClip in DamageSubtract.
2003-11-02merge xfixes_2_branch back to HEADKeith Packard1-8/+21
2003-10-16Discard/reconstruct list of offscreen areas on VT switch so no allocationsxfixes_2_branchpointKeith Packard1-1/+1
can occur while switched away. Set type of off_screen_areas member to actual type instead of pointer
2003-10-15Add a memory_base variable and use it.Anders Carlsson1-0/+1