summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2008-03-13nv50: force channel vram access through vmBen Skeggs
If we ever want to be able to use the 3D engine we have no choice. It appears that the tiling setup (required for 3D on G8x) is in the page tables. The immediate benefit of this change however is that it's now not possible for a client to use the GPU to render over the top of important engine setup tables, which also live in VRAM. G8x VRAM size is limited to 512MiB at the moment, as we use a 1-1 mapping of real vram pages to their offset within the start of a channel's VRAM DMA object and only populate a single PDE for VRAM use.
2008-03-12Merge branch 'intel-post-reloc'Thomas Hellstrom
Conflicts: linux-core/drm_compat.c linux-core/drm_compat.h linux-core/drm_ttm.c shared-core/i915_dma.c Bump driver minor to 13 due to introduction of new relocation type.
2008-03-12Bug # 14712Thomas Hellstrom
Disable page saving for GPU read-only TTMs.
2008-03-12Dont allow !sysadmin clients to alter the memory type ofThomas Hellstrom
NO_EVICT buffers.
2008-03-12Fix for debug memory routinesAlan Hourihane
2008-03-12Add error messageAlan Hourihane
2008-03-12Add an emergency pinnable memory quota for root-only processes.Thomas Hellstrom
2008-03-12Fix kernel crash when we hit OOM conditions.Thomas Hellstrom
(Alan Hourihane)
2008-03-12Avoid duplicate calls to drm_ttm_bind in some cases.Thomas Hellstrom
2008-03-12Make sure other TTM memory types than TT is really unbound when evicted.Thomas Hellstrom
2008-03-12Avoid large kmallocs.Thomas Hellstrom
2008-03-11nouveau: move AGP reset to mem_init_agpStuart Bennett
Also, power cycle PGRAPH when resetting AGP -- it seems to fix problems encountered by p0g on nv25
2008-03-10remove unneeded load callDave Airlie
2008-03-08Switch from PIPE_VBLANK to PIPE_EVENT interrupts.Keith Packard
My 965GM gets interrupts stuck when using the old PIPE_VBLANK interrupt. Switch to the PIPE_EVENT interrupt mechanism, and set the PIPE*STAT registers to use START_VBLANK on 965 and VBLANK on previous chips.
2008-03-08drm/radeon: check sarea_priv existsDave Airlie
2008-03-07nouveau: redo channel idle detectionBen Skeggs
Will hopefully work a bit better than previous code, which depended on knowing the channel's most recent PUT value. Some chips always return 0 on reading these regs, and currently userspace is the only other entity which knows the value.
2008-03-07nouveau: don't touch NV_USER regs on channel destroy.Ben Skeggs
Not only was this entirely pointless, it actually causes my NV30GL to die randomly when channels are destroyed.
2008-03-07flush_agp_mappings commitDave Airlie
2008-03-06drm/bo: allow non-suser priv to add kernel BOs.Dave Airlie
modprobe can be run with dropped capabilities we still want the kernel bos to work.
2008-03-05drm: Fix for non-coherent DMA PowerPCBenjamin Herrenschmidt
This patch fixes bits of the DRM so to make the radeon DRI work on non-cache coherent PCI DMA variants of the PowerPC processors. It moves the few places that needs change to wrappers to that other architectures with similar issues can easily add their own changes to those wrappers, at least until we have more useful generic kernel API. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2008-03-06ttm: make sure userspace can't destroy kernel create memory managersDave Airlie
this adds something to say the kernel initialised the memory region not the userspace. and blocks userspace from deallocating kernel areas
2008-03-06drm/ttm: add ioctl to get back memory managed area sizedDave Airlie
taken from modesetting branch but could be useful outside it.
2008-03-06drm: reorganise minor number handling using code from modesetting branchDave Airlie
Rip out the whole head thing and replace it with an idr and drm_minor structure.
2008-03-05i915: Evict if relocatee buffer is CACHED_MAPPED beforeXiang, Haihao
writting relocations, otherwise the GPU probably sees some inconsistent data. Fix fd.o bug#14656
2008-03-04Clarify when WAIT_LAZY is relevant to users.Eric Anholt
2008-03-04Remove unused DRM_FENCE_FLAG_WAIT_IGNORE_SIGNALS.Eric Anholt
2008-03-04Clarify through the names what drm_ttm_alloc_pages() and friend actually did.Eric Anholt
These are all about the page directory (pointers to pages) rather than the actual pages backing the allocation.
2008-03-04Don't shortcut the info syscall for drmBOBusy on nonshareable objects.Eric Anholt
This broke the results when you're trying to check if a buffer you dispatched some time ago is done being rendered from.
2008-03-03 [i915] 2D driver may reset Frame count value, this may lead driverZou Nan hai
to leap it's vblank count a huge value. This will stall some applications that switch video mode if vblank_mode is set to a non zero value in drirc.
2008-02-29FIX_KMAP_BEGIN requires CONFIG_HIMEM (see include/asm-i386.h/fixmap.h)Patrice Mandin
2008-02-29Working revision.Thomas Hellstrom
2008-02-29Fix compilation breakage on x86-64.Thomas Hellstrom
2008-02-29More post-ioctl work.Thomas Hellstrom
2008-02-29agp: export the correct symbolDave Airlie
2008-02-28Add a compat kmap_atomic_prot_pfn to do quick kernel map / unmaps ofThomas Hellstrom
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-28Initial commit.Thomas Hellstrom
2008-02-28Add a compat kmap_atomic_prot_pfn to do quick kernel map / unmaps ofThomas Hellstrom
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-27Reinstate buffer idle before applying relocations.Thomas Hellstrom
2008-02-27Don't wait for buffer idle before applying relocations.Thomas Hellstrom
2008-02-26[i915] Relocation fixes.Thomas Hellstrom
2008-02-26Make the execbuffer code reasonably safe against errors.Thomas Hellstrom
In particular -EAGAINs, which should be common during Xserver operation. Also handle the fence creation failure case.
2008-02-23fix texture uploads with large 3d textures (bug 13980)Roland Scheidegger
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-22i915: put ARX back into index mode before doing restoreJesse Barnes
Fixes resume from hibernate in some configurations.
2008-02-22nouveau: Remove some random (french) comment.Maarten Maathuis
2008-02-22nouveau: A single define of dma skips is more than enough.Maarten Maathuis
2008-02-22Fix one last occurance of struct _drm_i915_batchbuffer.Kristian Høgsberg
Thanks to Todd Merrill for pointing it out.
2008-02-22i915: Remove leading underscore from struct tags.Kristian Høgsberg
This matches the changes in mesa to use the system drm includes for the definitions of the drm ioctl structs.
2008-02-21Don't free irq resources until after we've unregistered the handler.Kristian Høgsberg
2008-02-21linux: Clean up vblank related resources from drm_irq_uninstall().Michel Dänzer
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-20fix SAREAAlan Hourihane