Commit Graph

3440 Commits (3f66a0005c1273b0fc935b9bd62a6fabaf99c2be)

Author SHA1 Message Date
Dave Airlie cdbd616ea5 agp: export the correct symbol 2008-02-29 10:16:24 +10:00
Thomas Hellstrom 8ef838e5ff Add a compat kmap_atomic_prot_pfn to do quick kernel map / unmaps of
PCI- or high memory.
This is substantially more efficient than drm_bo_kmap,
since the mapping only lives on a single processor.
Unmapping is done use kunmap_atomic(). Flushes only a single tlb() entry.

Add a support utility int drm_bo_pfn_prot() that returns the
pfn and desired page protection for a given bo offset.

This is all intended for relocations in bound TTMS or vram.
Mapping-accessing-unmapping must be atomic, either using preempt_xx() macros
or a spinlock.
2008-02-28 14:06:46 +01:00
Thomas Hellstrom 28d4d02d67 Initial commit. 2008-02-28 14:05:53 +01:00
Thomas Hellstrom 40c9e6a26d Add a compat kmap_atomic_prot_pfn to do quick kernel map / unmaps of
PCI- or high memory.
This is substantially more efficient than drm_bo_kmap,
since the mapping only lives on a single processor.
Unmapping is done use kunmap_atomic(). Flushes only a single tlb() entry.

Add a support utility int drm_bo_pfn_prot() that returns the
pfn and desired page protection for a given bo offset.

This is all intended for relocations in bound TTMS or vram.
Mapping-accessing-unmapping must be atomic, either using preempt_xx() macros
or a spinlock.
2008-02-28 13:47:15 +01:00
Dave Airlie 01dcc47d89 drm: add modesetting as a driver feature.
This change adds a driver feature that for i915 is controlled by a module
parameter. You now need to do insmod i915.ko modeset=1 to enable it the
modesetting paths.

It also fixes up lots of X paths. I can run my new DDX driver on this code
with and without modesetting enabled
2008-02-28 16:24:17 +10:00
Dave Airlie 132ba667f4 drm: add a check for if modesetting is supported.
This is Linux only code, it just uses sysfs to see if a control
device has been registered on the requested PCI ID
2008-02-28 12:59:39 +10:00
Thomas Hellstrom fd595fa4dc Reinstate buffer idle before applying relocations. 2008-02-27 21:44:40 +01:00
Thomas Hellstrom 72983ff301 Don't wait for buffer idle before applying relocations. 2008-02-27 19:46:28 +01:00
Jerome Glisse 75c9e0d346 radeon: remove TTM from an earlier merge 2008-02-26 23:30:45 +01:00
Alan Hourihane 1e66322633 Merge branch 'master' of git+ssh://git.freedesktop.org/git/mesa/drm into modesetting-101
Conflicts:

	shared-core/i915_dma.c
2008-02-26 15:42:41 +00:00
Alan Hourihane 73cb02b543 DRM_INFO -> DRM_DEBUG 2008-02-26 15:21:44 +00:00
Alan Hourihane 191385d518 DRM_INFO -> DRM_DEBUG 2008-02-26 15:20:59 +00:00
Alan Hourihane 89f65c50d7 define PRETHAW 2008-02-26 15:20:29 +00:00
Alan Hourihane 2476cb209e Implement short circuit for base change only
Allow mode to be set with fb_id set to -1, meaning set
the mode with the current fb (if we have one bound).

Allow intelfb to hook back up it's fb if modesetting
clears it (maybe temporary).

Move any crtc->fb related register changes to set_base
in intel_fb.

General intelfb cleanups.
2008-02-26 15:19:34 +00:00
Thomas Hellstrom e87cec1968 [i915] Relocation fixes. 2008-02-26 10:47:05 +01:00
Dave Airlie b92e343dc4 i915: fix typos 2008-02-26 16:20:27 +10:00
Dave Airlie 35d1b13b4a i915_mmio: add overlay regs 2008-02-26 16:13:06 +10:00
Dave Airlie 879fb12e28 drm: fix pick crtcs mode selection code 2008-02-26 17:11:03 +11:00
Thomas Hellstrom 56bb29cf37 Make the execbuffer code reasonably safe against errors.
In particular -EAGAINs, which should be common during Xserver operation.
Also handle the fence creation failure case.
2008-02-26 00:05:26 +01:00
Roland Scheidegger d6098db140 fix texture uploads with large 3d textures (bug 13980)
Texture uploads could hit the blitter coordinate limit, adjust the texture
offset when uploading the pieces. Make sure to check the end address of the
upload too.
2008-02-23 11:01:36 +01:00
Jesse Barnes 20d0e53916 i915: put ARX back into index mode before doing restore
Fixes resume from hibernate in some configurations.
2008-02-22 13:57:38 -08:00
Maarten Maathuis 0d32015974 nouveau: Remove some random (french) comment. 2008-02-22 19:28:54 +01:00
Maarten Maathuis 7e5f9c8bd3 nouveau: A single define of dma skips is more than enough. 2008-02-22 19:28:54 +01:00
Kristian Høgsberg b7086e6ae5 Fix one last occurance of struct _drm_i915_batchbuffer.
Thanks to Todd Merrill for pointing it out.
2008-02-22 11:22:52 -05:00
Alan Hourihane a72399da2a silence warning 2008-02-22 11:39:21 +00:00
Kristian Høgsberg b0fee67a30 i915: Remove leading underscore from struct tags.
This matches the changes in mesa to use the system drm includes
for the definitions of the drm ioctl structs.
2008-02-22 00:12:39 -05:00
Dave Airlie fad1db2d73 modesetting: fix memory leak and misallocation 2008-02-22 13:49:51 +10:00
Dave Airlie cdad850ebc add ioctl to get back memory managed area sized - used for kernel inited areas 2008-02-22 13:49:51 +10:00
Dave Airlie 0d1cb1e840 hopefully shit works now without this... 2008-02-22 13:49:51 +10:00
Alan Hourihane e85ec6693a Merge branch 'master' of git+ssh://git.freedesktop.org/git/mesa/drm into modesetting-101 2008-02-21 23:56:27 +00:00
Kristian Høgsberg 32c67922b7 Don't free irq resources until after we've unregistered the handler. 2008-02-21 15:31:48 -05:00
Alan Hourihane ea3de6daa4 Merge branch 'master' of git+ssh://git.freedesktop.org/git/mesa/drm into modesetting-101
Conflicts:

	linux-core/drm_sysfs.c
2008-02-21 11:37:07 +00:00
Michel Dänzer 374b41e5bc linux: Clean up vblank related resources from drm_irq_uninstall().
This fixes at least two problems:

* The vblank_disable_fn timer callback could get called after the DRM was
  de-initialized, e.g. on X server shutdown.
* Leak of vblank related resources when disabling and re-enabling the IRQ, e.g.
  on an X server reset.
2008-02-21 11:49:38 +01:00
Alan Hourihane 9d1061b8cf fix SAREA 2008-02-20 22:23:31 +00:00
Alan Hourihane 3f6c8f64aa fix SAREA 2008-02-20 22:22:49 +00:00
Alan Hourihane 88cb873045 minor test fixes 2008-02-20 19:55:14 +00:00
Alan Hourihane 66cd6bd666 compatibility code for pci_get_bus_and_slot() 2008-02-20 19:55:14 +00:00
Dave Airlie e484681a43 remove more offset 2008-02-20 11:44:10 +10:00
Dave Airlie 8844245cfc drm/fb: get rid of offset from structure use bo offset 2008-02-20 11:27:22 +10:00
Dave Airlie 2c409f9a07 ttm: make sure userspace can't destroy kernel create memory managers 2008-02-20 11:27:22 +10:00
Dave Airlie 6c41e5381f drm: add support for passing state into the suspend hooks.
fix i915 driver to use state for hibernate save avoidance.

Signed-off-by: Dave Airlie <airlied@redhat.com>
2008-02-20 10:02:20 +10:00
Alan Hourihane 8caf6e9571 Fix up conflicts for DRI2 (untested) 2008-02-19 15:17:24 +00:00
Alan Hourihane f24ed2ad6c Merge branch 'master' of git+ssh://git.freedesktop.org/git/mesa/drm into modesetting-101
Conflicts:

	linux-core/i915_fence.c
	linux-core/via_fence.c
	shared-core/i915_dma.c
	shared-core/i915_drv.h
	shared-core/i915_irq.c
2008-02-18 22:35:46 +00:00
Keith Packard 5d8c754bc2 [915]: more registers for S3 (DSPCLK_GATE_D, CACHE_MODE_0, MI_ARB_STATE)
Failing to preserve the MI_ARB_STATE register was causing FIFO underruns on
the VGA output on my HP 2510p after resume.
2008-02-16 20:14:49 -08:00
Stephane Marchesin cd87e6352b nouveau: no GART on ia64 either. 2008-02-16 03:50:29 +01:00
Jesse Barnes 2b1c9cd696 i915: initial (and untested) TV out support
Ported from xf86-video-intel.  Still need to tie in TV modes somehow, though
preferably w/o using the properties mechanism.
2008-02-15 16:13:21 -08:00
Ben Skeggs 15cbde683f nv40: actually init all tile regs. 2008-02-16 04:47:02 +11:00
Dave Airlie 088b383829 fb: fixup the offset by getting it from the right place 2008-02-15 16:42:44 +10:00
Dave Airlie 222092a1a8 various fixes from trying to get userspace started 2008-02-15 16:15:04 +10:00
Dave Airlie 75b01cf996 switch naming to new proposed scheme 2008-02-15 10:04:28 +10:00