summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2008-12-02intel: Add a function for setting (GTT,GTT) domain, for use by UXA.Eric Anholt
This function can also serve the role that the bo_wait_rendering did, when write_enable is unset.
2008-11-23nv50: support NV94 chipsetBen Skeggs
2008-11-21nv50: update context-related tables for original 8800GTSBen Skeggs
I either messed up when I pulled these from a mmio-trace last time, or the previous values didn't work on my card. Hopefully it's the former! In any case, at least one of the original NV50 chipsets work now.
2008-11-20DRM: make drm_map_type match upstream kernelJesse Barnes
Since the TTM type isn't upstream yet, we need to make sure libdrm uses what the kernel uses, which is _DRM_GEM = 6.
2008-11-19Unbreak drm build.Stephane Marchesin
2008-11-13libdrm_intel: fix warnings on 64 bitJesse Barnes
Cast a couple of %llx args to unsigned long long.
2008-11-13libdrm: add support for i915 GTT mapping ioctlJesse Barnes
Add a drm_intel_gem_bo_map_gtt() function for mapping a buffer object through the aperture rather than directly to its CPU cacheable memory.
2008-11-07intel: Restart on interrupt of bo_wait_rendering instead of complaining.Eric Anholt
2008-11-02nouveau: compat fix for set_page_locked().Pekka Paalanen
The set_page_locked() function has changed its name again. 2.6.28 offers __set_page_locked() instead, which uses non-atomic __set_bit() to do the work. In this case, offer our own set_page_locked() using the atomic set_bit(), because I do not know if atomic access is really necessary. Atomic behaviour is the one previously expected. Signed-off-by: Pekka Paalanen <pq@iki.fi>
2008-10-30libdrm 2.4.1.Eric Anholt
2008-10-30intel: Rename dri_ and intel_ symbols to drm_intel_.Eric Anholt
I wanted to avoid doing this, as it's a bunch of churn, but there was a conflict between the dri_ symbols in libdrm and the symbols that were in Mesa in 7.2, which broke Mesa 7.2 AIGLX when the 2D driver had loaded new libdrm symbols. The new naming was recommended by cworth for giving the code a unique prefix identifying where the code lives. Additionally, take the opportunity to fix up two API mistakes: emit_reloc's arguments were in a nonsensical order, and set_tiling lacked the stride argument that the kernel will want to use soon. API compatibility with released code is maintained using #defines.
2008-10-28intel: Add dri_bufmgr_check_aperture support for bufmgr_gem.Eric Anholt
This relies on a new kernel ioctl to get the available aperture size. In order to provide reasonable performance from dri_bufmgr_check_aperture, we now require that once a buffer has been used as the target of a relocation, it gets no further relocations added to it. This cuts the cost of check_aperture from 10% to 1% in the 3D driver with no code changes, but slightly complicates our plans for the 2D driver.
2008-10-28nv50: symlink nv50_grctx.h to linux-core...Ben Skeggs
2008-10-28nv50: move context-related tables a separate header fileBen Skeggs
This turns the various nvXX_graph_init_ctxvals() methods into tables, and speeds up compliation of nv50_graph.c quite a bit. This has bothered me for a while, but others are complaining now so it's time to fix it :)
2008-10-27drm: missing init_mm symbol, compatibility fixPekka Paalanen
The drm_compat.c version of kmap_atomic_prot_pfn() uses the macro pgd_offset_k(), which references the symbol init_mm. Starting in 2.6.25, init_mm is no longer exported by default. The only user of kmap_atomic_prot_pfn() is i915, so this should not hurt anyone, and it allows people to load drm.ko. Signed-off-by: Pekka Paalanen <pq@iki.fi>
2008-10-27i915: Since FreeBSD doesn't have gem support yet, don't advertise it.Robert Noland
This allows us to not crash X when using newer Intel ddx drivers.
2008-10-27radeon: fix error in busmaster enable logicAlex Deucher
- logic was wrong. rs400/rs480 should clear the RADEON_BUS_MASTER_DIS bit - should fix kernel bug 11798
2008-10-27radeon: fix some fallout from the busmaster disable cleanupAlex Deucher
rs400 is just like rs480. I mixed up the internal chipset names for rs600 and rs400.
2008-10-25drm/i915: fix ioremap of a user address for non-root (CVE-2008-3831)Matthias Hopf
Olaf Kirch noticed that the i915_set_status_page() function of the i915 kernel driver calls ioremap with an address offset that is supplied by userspace via ioctl. The function zeroes the mapped memory via memset and tells the hardware about the address. Turns out that access to that ioctl is not restricted to root so users could probably exploit that to do nasty things. We haven't tried to write actual exploit code though. It only affects the Intel G33 series and newer.
2008-10-24intel: Also total child_size of the target_bos. Partial fix #17964.Xiang, Haihao
2008-10-23[FreeBSD] We should use dev2unit() rather than minor()Robert Noland
2008-10-23[FreeBSD] This check isn't correct and causes at least mga to lockup.Robert Noland
2008-10-16intel: ioctl is not defined to return -errnoKeith Packard
Don't count on ioctl returning -errno; use errno directly. Signed-off-by: Keith Packard <keithp@keithp.com> Signed-off-by: Eric Anholt <eric@anholt.net>
2008-10-16intel: avoid deadlock in intel_bufmgr_fake.Xiang, Haihao
2008-10-14intel: Fix compile warning.Eric Anholt
2008-10-14intel: Add interface for getting tiling mode of a bo.Eric Anholt
2008-10-13link libdrm_intel properlyJulien Cristau
libdrm_intel needs symbols from libdrm, so link against it.
2008-10-13intel: Avoid pthread mutex recursion in bufmgr_fake.Eric Anholt
Bug #18035. Fixes deadlock in glean texCube testcase.
2008-10-13libdrm: don't depend or link to libdrm_intelDave Airlie
2008-10-10[FreeBSD] Plug memory leak in drm_rmdraw() and drm_drawable_free_all()Robert Noland
2008-10-10[FreeBSD] Rework all of the memory allocationsRobert Noland
Allocate memory from different pools. This allows the OS to track memory allocations for us, much like the linux memory debugging. This will ease tracking down memory leaks since the OS can track the number of allocations from each pool and help to point us in the right direction. Also replace drm_alloc and friends with static __inline__ versions while we are here.
2008-10-09[FreeBSD] Fix linux list compat list_for_each_safe()Robert Noland
linux_for_each_safe would not handle lists with a single entry.
2008-10-09i915: Cleanup interrupt handlingRobert Noland
2008-10-09Manage fences in user-mode bufmgr_fake to clean buffersKeith Packard
When using bufmgr_fake without DRM, the X server idles the ring whenever it wants to wait for something to complete (brutal, but effective). In this case, bufmgr_fake must treat the pending fence as having passed. However, it wasn't recording the fences as it emitted them, nor cleaning buffers as they passed. Signed-off-by: Keith Packard <keithp@keithp.com>
2008-10-09intel: Protect bufmgr objects with a pthread mutex.Eric Anholt
We want to be able to use the bufmgr from multiple threads for GL, and thus we need to protect the internal structures. The pthread-stubs package is used so that programs not linked against pthreads get weak symbols to stubs and don't eat most of the cost.
2008-10-09intel: fix for write_domain and static BOs.Xiang, Haihao
http://bugs.freedesktop.org/show_bug.cgi?id=17705
2008-10-06radeon: add comment to clarify bus mastering on PCIE chipsAlex Deucher
2008-10-06radeon: fix duplicate define in my last commitAlex Deucher
That's what I get for committing at 3 AM.
2008-10-07radeon: PCIE cards don't appear to have explicit bus masterDave Airlie
2008-10-07drm: add create gpu tree scriptDave Airlie
2008-10-06radeon: fix bus master enabled bits on newer asicsAlex Deucher
2008-10-06radeon: fix missing bit from rs740 patchMihail Zenkov
See bug 17908
2008-10-04radeon: Add support for HD2100 IGP (RS740)Alex Deucher
2008-10-03[FreeBSD] Don't explicitly bzero driver softc.Robert Noland
This is already handled for us. Suggested by John Baldwin
2008-10-03[FreeBSD] Use M_WAITOK when allocating driver memory.Robert Noland
We don't explicitly check for error here and M_WAITOK will just put the process to sleep waiting on resources to become available. Suggested by John Baldwin
2008-10-03[FreeBSD] Do a bit of optimization on drm_order()Robert Noland
2008-10-01Use devfs_get_cdevpriv in mmap as well.Robert Noland
d_mmap gets called twice and we are only able to associate the file_priv during the first call. The second call will return EBADF and we need to assume that the call was succesful. d_mmap will not tolerate having an error returned for the second call.
2008-09-27intel: Copy data from card memory back to backing store when mapping.Xiang, Haihao
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=17705
2008-09-23intel: Allow up to 15 seconds chewing on one buffer before acknowledging -EBUSY.Eric Anholt
The gltestperf demo in some cases took over seven seconds to make it through one batchbuffer on a GM965. Bug #17004.
2008-09-23intel: Replace wraparound test logic in bufmgr_fake. Again.Eric Anholt
I'd swapped the operands, so if we weren't in lockstep with the hardware we said the sequence was always passed. Additionally, a race was available that we might have failed at recovering from. Instead, I've replaced the logic with new stuff that should be more robust and not rely on all the parties in userland following the same IRQ_EMIT() == 1 protocol. Also, in a radical departure from past efforts, include a long comment describing the failure modes and how we're working around them. Thanks to haihao for catching the original issue.