summaryrefslogtreecommitdiff
path: root/src/Makefile.am
AgeCommit message (Collapse)Author
2013-06-19configure: test for librt (clock_gettime)Jonathan Gray
clock_gettime() is in libc not librt on OpenBSD so check to see if linking librt is required. Signed-off-by: Jonathan Gray <jsg@jsg.id.au>
2012-07-15uxa: Remove Shadow hackChris Wilson
This was an incomplete hack so deprecate in favour of Shadow-on-Steriods, SNA. References: https://bugs.freedesktop.org/show_bug.cgi?id=47324 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-05-25Only create a single instance of the intel_options arrayChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-05-24Unify options handling between UXA and SNAEugeni Dodonov
Unifies available options for both UXA and SNA drivers, and moves them into a common header file, intel_opts.h. Signed-off-by: Eugeni Dodonov <eugeni.dodonov@intel.com>
2012-05-23intel: add compat header file for conversion fnsDave Airlie
Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-02-11Include a local copy of list.hChris Wilson
In 1.11.903, the list.h was renamed to xorg-list.h with a corresponding change to all structures. As we carried local fixes to list.h and extended functionality, just create our own list.h with a bit of handwaving to protect us for the brief existence of xorg/include/list.h. Reported-by: Armin K <krejzi@email.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=45938 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-29uxa: Depend upon DRI2 not DRIChris Wilson
The symbols required for building intel_dri.c are checked during configure under the DRI2 defines. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-17uxa: Explicitly check for libdrm_intel in configureChris Wilson
And remove the excess dependencies from the common files. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-11-17glamor: Include glamor cflags and libs for atypical buildsChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-11-17glamor: Initial commit to introduce glamor acceleration.Zhigang Gong
Added one configuration option --enable-glamor to control whether use glamor. Added one new file intel_glamor.c to wrap glamor egl API for intel driver's usage. This commit doesn't really change the driver's control path. It just adds necessary files for glamor and change some configuration. Reviewed-by: Eugeni Dodonov <eugeni.dodonov@intel.com> Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-11-16Compile out UXA if so desiredChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-07-28Xv: Refactor out pipeline setup functions for future reuse in render.Kenneth Graunke
While we're at it, make the functions simply take an intel_screen_private pointer directly instead of having to fetch it from ScrnInfoPtr. Also coalesce some gen6/gen7 functions that were 98% identical. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Acked-by: Eric Anholt <eric@anholt.net> Acked-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-04sna: Introduce a new acceleration model.Chris Wilson
The premise is that switching between rings (i.e. the BLT and RENDER rings) on SandyBridge imposes a large latency overhead whilst rendering. The cause is that in order to switch rings, we need to split the batch earlier than is desired and to add serialisation between the rings. Both of which incur large overhead. By switching to using a pure 3D blit engine (ok, not so pure as the BLT engine still has uses for the core drawing model which can not be easily represented without a combinatorial explosion of shaders) we can take advantage of additional efficiencies, such as relative relocations, that have been incorporated into recent hardware advances. However, even older hardware performs better from avoiding the implicit context switches and from the batching efficiency of the 3D pipeline... But this is X, and PolyGlyphBlt still exists and remains in use. So for the operations that are not worth accelerating in hardware, we introduce a shadow buffer mechanism through out and reintroduce pixmap migration. Doing this efficiently is the cornerstone of ensuring that we do exploit the increased potential of recent hardware for running old applications and environments (i.e. so that the latest and greatest chip is actually faster than gen2!) For the curious, sna is SandyBridge's New Acceleration. If you are running older chipsets and welcome the performance increase offered by this patch, then you may choose to call it Snazzy instead. Speedups ======== gen3 firefox-fishtank 1203584.56 (1203842.75 0.01%) -> 85561.71 (125146.44 14.87%): 14.07x speedup gen5 grads-heat-map 3385.42 (3489.73 1.44%) -> 350.29 (350.75 0.18%): 9.66x speedup gen3 xfce4-terminal-a1 4179.02 (4180.09 0.06%) -> 503.90 (531.88 4.48%): 8.29x speedup gen4 grads-heat-map 2458.66 (2826.34 4.64%) -> 348.82 (349.20 0.29%): 7.05x speedup gen3 grads-heat-map 1443.33 (1445.32 0.09%) -> 298.55 (298.76 0.05%): 4.83x speedup gen3 swfdec-youtube 3836.14 (3894.14 0.95%) -> 889.84 (979.56 5.99%): 4.31x speedup gen6 grads-heat-map 742.11 (744.44 0.15%) -> 172.51 (172.93 0.20%): 4.30x speedup gen3 firefox-talos-svg 71740.44 (72370.13 0.59%) -> 21959.29 (21995.09 0.68%): 3.27x speedup gen5 gvim 8045.51 (8071.47 0.17%) -> 2589.38 (3246.78 10.74%): 3.11x speedup gen6 poppler 3800.78 (3817.92 0.24%) -> 1227.36 (1230.12 0.30%): 3.10x speedup gen6 gnome-terminal-vim 9106.84 (9111.56 0.03%) -> 3459.49 (3478.52 0.25%): 2.63x speedup gen5 midori-zoomed 9564.53 (9586.58 0.17%) -> 3677.73 (3837.02 2.02%): 2.60x speedup gen5 gnome-terminal-vim 38167.25 (38215.82 0.08%) -> 14901.09 (14902.28 0.01%): 2.56x speedup gen5 poppler 13575.66 (13605.04 0.16%) -> 5554.27 (5555.84 0.01%): 2.44x speedup gen5 swfdec-giant-steps 8941.61 (8988.72 0.52%) -> 3851.98 (3871.01 0.93%): 2.32x speedup gen5 xfce4-terminal-a1 18956.60 (18986.90 0.07%) -> 8362.75 (8365.70 0.01%): 2.27x speedup gen5 firefox-fishtank 88750.31 (88858.23 0.14%) -> 39164.57 (39835.54 0.80%): 2.27x speedup gen3 midori-zoomed 2392.13 (2397.82 0.14%) -> 1109.96 (1303.10 30.35%): 2.16x speedup gen6 gvim 2510.34 (2513.34 0.20%) -> 1200.76 (1204.30 0.22%): 2.09x speedup gen5 firefox-planet-gnome 40478.16 (40565.68 0.09%) -> 19606.22 (19648.79 0.16%): 2.06x speedup gen5 gnome-system-monitor 10344.47 (10385.62 0.29%) -> 5136.69 (5256.85 1.15%): 2.01x speedup gen3 poppler 2595.23 (2603.10 0.17%) -> 1297.56 (1302.42 0.61%): 2.00x speedup gen6 firefox-talos-gfx 7184.03 (7194.97 0.13%) -> 3806.31 (3811.66 0.06%): 1.89x speedup gen5 evolution 8739.25 (8766.12 0.27%) -> 4817.54 (5050.96 1.54%): 1.81x speedup gen3 evolution 1684.06 (1696.88 0.35%) -> 1004.99 (1008.55 0.85%): 1.68x speedup gen3 gnome-terminal-vim 4285.13 (4287.68 0.04%) -> 2715.97 (3202.17 13.52%): 1.58x speedup gen5 swfdec-youtube 5843.94 (5951.07 0.91%) -> 3810.86 (3826.04 1.32%): 1.53x speedup gen4 poppler 7496.72 (7558.83 0.58%) -> 5125.08 (5247.65 1.44%): 1.46x speedup gen4 gnome-terminal-vim 21126.24 (21292.08 0.85%) -> 14590.25 (15066.33 1.80%): 1.45x speedup gen5 firefox-talos-svg 99873.69 (100300.95 0.37%) -> 70745.66 (70818.86 0.05%): 1.41x speedup gen4 firefox-planet-gnome 28205.10 (28304.45 0.27%) -> 19996.11 (20081.44 0.56%): 1.41x speedup gen5 firefox-talos-gfx 93070.85 (93194.72 0.10%) -> 67687.93 (70374.37 1.30%): 1.37x speedup gen4 evolution 6696.25 (6854.14 0.85%) -> 4958.62 (5027.73 0.85%): 1.35x speedup gen3 swfdec-giant-steps 2538.03 (2539.30 0.04%) -> 1895.71 (2050.62 62.43%): 1.34x speedup gen4 gvim 4356.18 (4422.78 0.70%) -> 3276.31 (3281.69 0.13%): 1.33x speedup gen6 evolution 1242.13 (1245.44 0.72%) -> 953.76 (954.54 0.07%): 1.30x speedup gen6 firefox-planet-gnome 4554.23 (4560.69 0.08%) -> 3758.76 (3768.97 0.28%): 1.21x speedup gen3 firefox-talos-gfx 6264.13 (6284.65 0.30%) -> 5261.56 (5370.87 1.28%): 1.19x speedup gen4 midori-zoomed 4771.13 (4809.90 0.73%) -> 4037.03 (4118.93 0.85%): 1.18x speedup gen6 swfdec-giant-steps 1557.06 (1560.13 0.12%) -> 1336.34 (1341.29 0.32%): 1.17x speedup gen4 firefox-talos-gfx 80767.28 (80986.31 0.17%) -> 69629.08 (69721.71 0.06%): 1.16x speedup gen6 midori-zoomed 1463.70 (1463.76 0.08%) -> 1331.45 (1336.56 0.22%): 1.10x speedup Slowdowns ========= gen6 xfce4-terminal-a1 2030.25 (2036.23 0.25%) -> 2144.60 (2240.31 4.29%): 1.06x slowdown gen4 swfdec-youtube 3580.00 (3597.23 3.92%) -> 3826.90 (3862.24 0.91%): 1.07x slowdown gen4 firefox-talos-svg 66112.25 (66256.51 0.11%) -> 71433.40 (71584.31 0.14%): 1.08x slowdown gen4 gnome-system-monitor 5691.60 (5724.03 0.56%) -> 6707.56 (6747.83 0.33%): 1.18x slowdown gen3 ocitysmap 3494.05 (3502.44 0.20%) -> 4321.99 (4524.42 2.78%): 1.24x slowdown gen4 ocitysmap 3628.42 (3641.66 9.37%) -> 5177.16 (5828.74 8.38%): 1.43x slowdown gen5 ocitysmap 4027.77 (4068.11 0.80%) -> 5748.26 (6282.25 7.38%): 1.43x slowdown gen6 ocitysmap 1401.61 (1402.24 0.40%) -> 2365.74 (2379.14 4.12%): 1.69x slowdown [Note the performance regression for ocitysmap comes from that we now attempt to support rendering to and (more importantly) from large surfaces. By enabling such operations is the only way to one day be faster than purely using the CPU, in the meantime we suffer regression due to the increased migration and aperture thrashing. The other couple of regressions will be eliminated with improved span and shader support, now that the framework for such is in place.] The performance increase for Cairo completely overlooks the other critical aspects of the architecture: World of Padman: gen3 (800x600): 57.5 -> 96.2 gen4 (800x600): 47.8 -> 74.6 gen6 (1366x768): 100.4 -> 140.3 [F15] 144.3 -> 146.4 [drm-intel-next] x11perf (gen6); aa10text: 3.47 -> 14.3 Mglyphs/s [unthrottled!] copywinwin10: 1.66 -> 1.99 Mops/s copywinpix10: 2.28 -> 2.98 Mops/s And we do not have a good measure for how much improvement the reworking of the fallback paths give, except that xterm is now over 4x faster... PS: This depends upon the Xorg patchset "Remove the cacheing of the last scratch PixmapRec" for correct invalidations of scratch Pixmaps (used by the dix to implement SHM operations, used by chromium and gtk+ pixbufs. PPS: ./configure --enable-sna Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2010-10-22intel: Listen for hotplug uevents (V3)Adam Jackson
This connects the kernel uevent indicating monitor hotplugging to the RandR notification events so that X applications can be notified automatically when monitors are connected or disconnected. This also adds a configuration option to disable hotplug events. V2: missed a #ifdef HAVE_UDEV around some udev-specific declarations V3: document Hotplug option in man page Signed-off-by: Keith Packard <keithp@keithp.com>
2010-10-04Split shadow handling routines to their own file.Chris Wilson
This is about to get messy, so separate out the shadow from the normal code. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2010-08-01Rename drmmode_display to intel_displayChris Wilson
And fixup all the drmmode_* functions to have an intel prefix and categorise those into intel_mode, intel_crtc, intel_output and intel_property so that the functions are a little more self-descriptive and, more importantly, are consistent. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2010-06-28Repair the damage to 'make distcheck' after splitting out i810Chris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2010-06-25Rename common infrastructure to the intel namespace.Chris Wilson
After splitting out the i810 driver into its own legacy directory, we can identify the common routines not as i830 but as intel. This clarifies the code which *is* i830 specific. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2010-06-25i810: Move into a legacy directory.Chris Wilson
The driver is still built but is no longer under active development so move it and supporting files to a new directory. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2010-06-09Revert "xp:trapezoids"Chris Wilson
This reverts commit f429fb9d872950705e11171d0e7407fb7673c786. An experimental patch I forgot was on my main branch as I was bugfixing. ARGH!
2010-06-08xp:trapezoidsChris Wilson
2010-04-19Fix "make dist"Daniel Vetter
This is some fallout from my xvmc cleanup. Original-Patch-by: Rico Tzschichholz <ricotz@t-online.de> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2010-04-08XvMC: merge *_hwmc.c into i830_hwmc.cDaniel Vetter
After unifying i915 and i965, not much will be left of these files. Therefore merge them to make the following changes easier. This creates some warnings about some redefined macros, but when this is all cleaned up they'll all be gone. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2010-02-20Remove more DRI1 dead code.Eric Anholt
2010-02-20Remove dead i830_ring.h.Eric Anholt
2010-02-20Remove dead i830_display.h.Eric Anholt
2010-02-20Remove dead i830_bios.h.Eric Anholt
2010-02-20Remove the last tool now that it's been moved to gpu_tools.Eric Anholt
2010-02-20Remove bios_reader now that it's moved to gpu_tools.Eric Anholt
2009-11-30Add i830_bios.h and i830_display.h to EXTRA_DIST.2.9.99.901Carl Worth
These files have been dropped from the generated tar file since the removal of UMS support. However, the bios_reader code still includes these, so "make distcheck" fails unless these are distributed. There's probably a cleaner fix possible, but this at least fixes the build so that the snapshot can be pushed out.
2009-11-30video-intel: remove i2c_vid.h from src/Makefile.amGaetan Nadon
make dist failed due to missing i2c_vid.h Commit b9b159c49854d8d9d2207946bb583537bb0d48d6 Remove UMS support. The above commit did not remove this header file from the makefile. Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
2009-11-05Revert "configure: make --disable-dri work even if the server supports DRI"Eric Anholt
This reverts commit a851139c2141f6da370186148f2836e18b2acf83. It broke the build, and I don't see why we should be supporting this anyway. Conflicts: configure.ac src/Makefile.am
2009-11-05configure: use CWARNFLAGS from xorg-macros.m4Rémi Cardona
Signed-off-by: Rémi Cardona <remi@gentoo.org> Acked-by: Chris Wilson <chris@chris-wilson.co.uk>
2009-11-05configure: make --disable-dri work even if the server supports DRIRémi Cardona
XF86DRI is defined by the SDK so not defining it here just breaks the build. Define HAVE_DRI instead to avoid collisions. Note: DRI2 is still enabled/disabled entirely by SDK defines. Signed-off-by: Rémi Cardona <remi@gentoo.org> Acked-by: Chris Wilson <chris@chris-wilson.co.uk>
2009-10-06Remove the reg_dumper code, now that it's been moved to intel_gpu_tools.Eric Anholt
2009-10-06Remove UMS support.Eric Anholt
At this point, the only remaining feature regressions should be the lack of overlay support (about to land), and the need to update the XVMC code to work in the presence of KMS. Acked-by: Keith Packard <keithp@keithp.com> (in principle) Acked-by: Carl Worth <cworth@cworth.org> (in principle)
2009-06-30Move shader programs under its own subdirectoryZhenyu Wang
Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
2009-06-09Rename i830_exa.c to i830_uxa.cCarl Worth
It was just confusing otherwise, (since the EXA code has all been removed now).
2009-04-27unifdef LIBPCIACCESS and XSERVER_LIBPCIACCESS.Eric Anholt
Depending on new server means these are always present.
2009-04-27Remove I830_XV ifdef.Eric Anholt
The developers of the driver don't ever run or test without XV. Don't do it.
2009-04-27unifdef I830_USE_UXA.Eric Anholt
We only have on acceleration architecture now, and you can always build it if you're building the driver.
2009-04-27Remove EXA support.Eric Anholt
UXA has completely replaced EXA at this point. UXA is the same rendering core as EXA, but relying on kernel memory management or a fake bufmgr instead of trying to manage memory in the X Server.
2009-04-27Remove XAA support.Eric Anholt
While EXA/UXA aren't completely good replacements (see bugzilla for performance and stability problems), we are pretty sure at this point that it's the right way to go and that having multiple acceleration architectures is getting in the way of producing a stable codebase.
2009-04-21Require xserver 1.3Julien Cristau
I don't think anyone tests this against an old server anymore. Signed-off-by: Eric Anholt <eric@anholt.net>
2009-03-20clean up man page generation and remove all traces of the i810 driverRémi Cardona
The i810 compatibility symlink has been broken since libpciaccess, so just let it die.
2009-02-26Fix UXA for server 1.4.Eric Anholt
2009-02-24Fix distcheck from drmmode_display.h deletion.Eric Anholt
2008-11-27Merge branch '965-xvmc'Zou Nan hai
Conflicts: src/common.h src/i830_hwmc.c src/i830_video.c
2008-11-13Make sure DRM library paths are includedJesse Barnes
We need @DRM_LIBS@ in order to find drm_intel if installed in a non-standard path.
2008-10-06Fix driver build against server 1.4.2.Eric Anholt
This disables UXA and DRM modesetting pre-1.5, due to privates handling issues.