Age | Commit message (Collapse) | Author | |
---|---|---|---|
2007-12-15 | Revert "nouveau: nv30: missing ramin init, does it brake other hw?" | Patrice Mandin | |
This reverts commit 46235ea4595152d8dd5f016c18c6845a77db30b0. | |||
2007-12-13 | catch an out of memory condition | Alan Hourihane | |
2007-12-11 | Make relocation validate client computed values when debugging | Keith Packard | |
2007-12-11 | i915: wait for buffer idle before writing relocations | Keith Packard | |
When writing a relocation entry, make sure the target buffer is idle, otherwise the GPU may see inconsistent data. | |||
2007-12-11 | Bump driver minor for relocation optimzations | Keith Packard | |
2007-12-11 | Allow relocation to be skipped when buffers don't move. | Keith Packard | |
One of the costs of superioctl has been the need to perform relocations inside the kernel. The cost of mapping the buffers to the CPU and writing data is fairly high, especially if those buffers have been mapped and read by the GPU. If we assume that buffers don't move around very often, we can have the client compute the relocations itself using the previous GPU address. When that object doesn't move, the kernel can skip computing and writing the updated data. Here's a patch which adds a new field to struct drm_bo_info_req called 'presumed_offset', and a new DRM_BO_HINT_PRESUMED_OFFSET that is set when this field has been filled in by the client. There are two separate optimizations performed when the presumed_offset is correct: 1. i915_exec_reloc checks to see if all previous buffer offsets were guessed correctly. If so, there's no need for it to look at *any* of the relocations for a buffer. When this happens, it skips the whole relocation process, simply returning success. 2. i915_apply_reloc checks to see if the target buffer offset was guessed correctly. If so, it skips mapping the relocatee, computing the relocation and writing the value. If no relocations are needed, the relocatee should never be mapped to the CPU, and so the kernel shouldn't need to wait for any fences to pass. | |||
2007-12-10 | Merge branch 'master' into r500-support | Dave Airlie | |
2007-12-10 | drm: move agp include outside CONFIG_AGP as it isn't dependant on agp in kernel | Dave Airlie | |
2007-12-08 | mach64: comment bus master / ring buffer behavior and security | José Fonseca | |
2007-12-07 | Fix pipe<->plane mapping vs. vblank handling (again) | Jesse Barnes | |
If drmMinor >= 6, the intel DDX driver will enable vblank events on both pipes. If drmMinor >= 10 on pre-965 chipsets, the intel DDX driver will swap the pipe<->plane mapping to allow for framebuffer compression on laptop screens. This means the secondary vblank counter (corresponding to pipe B) will be incremented when vblank interrupts occur. Now Mesa waits for vblank events on whichever plane has a greater portion of the displayed window. So it will happly ask to wait for the primary counter even though that one won't increment. So we can fix this in either the DDX driver, Mesa or the kernel (though I thought we already had several times). Since current (and previous) userspace assumes it's talking about a pipe == plane situation and now uses planes when talking to the kernel, we should probably just hide the mapping details there (indeed they already are hidden there for vblank swaps), which this patch does. So as far as userland is concerned, whether we call things planes or pipes is irrelevant, as long as kernel developers understand that userland hands them planes and they have to figure out which pipe that corresponds to (which will typically be the same on 965+ hardware and reversed on pre-965 mobile chips). | |||
2007-12-06 | take down stuff after asking driver to unload | Dave Airlie | |
2007-12-05 | mach64: make buffer emission macros normal functions | José Fonseca | |
2007-12-05 | mach64: use utf-8 | José Fonseca | |
2007-12-05 | Remove references to the sarea_priv perf_boxes field. | Kristian Høgsberg | |
This field isn't touched or read by any other code in the stack so it's time to retire these last few references. | |||
2007-12-05 | patch from -mm kernel to use upper_32_bits | Dave Airlie | |
2007-12-02 | bsd: Replace other occurrences of msleep with mtx_sleep | Robert Noland | |
2007-12-02 | bsd: Now make secondary vblank work | Robert Noland | |
We needed to specifically check for driver support and test the correct vbl_received value. Also pulled over support for _DRM_VBLANK_NEXTONMISS from the linux code. | |||
2007-12-01 | bsd: Hook secondary vblank support. | Robert Noland | |
2007-12-01 | bsd: Fix typo in i915_drv.c | Robert Noland | |
2007-12-01 | mtx_sleep is preferred to msleep | Robert Noland | |
Calling semantics are the same and both were introduced in 5.0 | |||
2007-12-01 | Clarify order of operations | Robert Noland | |
2007-12-01 | DRM_DEBUG already prints the function name. | Robert Noland | |
2007-12-01 | drm: Add _DRM_DRIVER map flag. | Robert Noland | |
This flag indicates that the driver is responsible for the map. | |||
2007-12-01 | bsd: Move counter initialization to load time. | Robert Noland | |
2007-11-30 | nouveau: Properly identify NV40 and NV44 generation. | Maarten Maathuis | |
2007-11-29 | Beside the emitted warning, the added cast (u64 -> unsigned) strips out | Jiri Slaby | |
part of address on 64 bit. Cast to unsigned long instead. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> | |||
2007-11-29 | drm: enable udev node creation | Dave Airlie | |
2007-11-29 | drm: oops not a cleanup.. | Dave Airlie | |
2007-11-29 | Fix up drm_ati_pcigart_info | Robert C. Noland III | |
2007-11-29 | drm: more cleanups | Dave Airlie | |
2007-11-28 | i965: oops force mi batchbuffer start | Dave Airlie | |
2007-11-27 | r500: add a bunch of all r5xx pci ids.. | Dave Airlie | |
fix up a range that may be needed for r500 mesa | |||
2007-11-22 | drm: major whitespace/coding style realignment with kernel | Dave Airlie | |
2007-11-22 | drm: cleanup drm_regman.c coding style | Dave Airlie | |
2007-11-22 | i915: add context handle to superioctl struct | Dave Airlie | |
This will be used later for lockless operation. | |||
2007-11-22 | r500: add pci id for X1650 | Dave Airlie | |
2007-11-21 | drm: don't reset to 0 irq_enabled when client open file descriptor | Jerome Glisse | |
2007-11-21 | r500: suggestion from glisse to not add cliprect offset on r5xx | Dave Airlie | |
2007-11-20 | radeon: add initial r5xx support | Dave Airlie | |
2007-11-19 | Fix capitalization of __linux__ define. | Eric Anholt | |
2007-11-19 | drm: fix dead lock in drm_buffer_object_transfer | Jerome Glisse | |
2007-11-18 | Bug #13233: Fix build on FreeBSD. | Robert Noland | |
2007-11-18 | Bug #13233: Chase move of agp headers on FreeBSD. | Robert Noland | |
2007-11-18 | radeon: refactor out the fb/agp location read/write. | Dave Airlie | |
Add a new get param to get the fb location into userspace. Mesa currently hits MMIO to do this, but this isn't always possible. | |||
2007-11-16 | nouveau: also mention the number of succcessfully copied bios bytes. | Stephane Marchesin | |
2007-11-15 | nouveau: rename | Jeremy Kolb | |
2007-11-15 | nouveau: flip buffer into gart. | Jeremy Kolb | |
2007-11-15 | nouveau: be verbose about PPC bios for now. | Stephane Marchesin | |
2007-11-15 | nouveau: revert the nv34 context size change, it was not the culprit after all. | Stephane Marchesin | |
2007-11-15 | nouveau: use get_property instead of of_get_property on pre-2.6.22 kernels. | Stephane Marchesin | |