summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2008-06-10[intel] Fix BUG_ON trigger in irq masking if you did on/off with irqs disabled.Eric Anholt
2008-06-10[gem] Manage the ringbuffer from the kernel in the GEM case.Eric Anholt
This requires that the X Server use the execbuf interface for buffer submission, as it no longer has direct access to the ring. This is therefore a flag day for the gem interface. This also adds enter/leavevt ioctls for use by the X Server. These would get stubbed out in a modesetting implementation, but are required while in an environment where the device's state is only managed by the DRM while X has the VT.
2008-06-10xgixp: Remove dependency on TTM fencesIan Romanick
2008-06-10xgi: Fix 64-bit kernel / 32-bit user issue.Ian Romanick
2008-06-10ati_pcigart: split out the page insert functionDave Airlie
2008-06-09RADEON: Add untested support for RS400 chipsAlex Deucher
GART setup appears to work the same as RS480 chips. Also RC4xx chips are actually RS400 based, not RS480 based.
2008-06-09RADEON: switch IGP gart to use radeon_write_agp_base()Alex Deucher
2008-06-08Fix typo in i915_suspendRobert Noland
Reported by vehemens
2008-06-08I915 suspend/resume for FreeBSDRobert Noland
2008-06-09r300/r500: add hier-z regsDave Airlie
2008-06-08[FreeBSD] Rework ati_pcigart.cRobert Noland
This is mostly just a diff reduction with the linux version. I'm not convinced that it will make anything better.
2008-06-08[FreeBSD] We need to request busmastering support.Robert Noland
This seems to be the key to getting at least some radeon cards working. Most, if not all drivers need it enabled, so just request it once the driver has attached.
2008-06-08[FreeBSD] Incorporate vblank fixes for bsd.Robert Noland
2008-06-08[FreeBSD] Forgot to call mtx_destroy on all the locks at unload.Robert Noland
2008-06-08[FreeBSD] Remove the locks in the vblank_disable_fnRobert Noland
They are recursive and causing panics with witness enabled.
2008-06-08[FreeBSD] Go back to using vbl_lock and move init/destroy to load/unload.Robert Noland
2008-06-06[gem] Don't forget to munmap in the non-bo-reuse object-freeing case.Eric Anholt
2008-06-06[intel] remove settable use_mi_batchbuffer_startKeith Packard
The driver can know what hardware requires MI_BATCH_BUFFER vs MI_BATCH_BUFFER_START; there's no reason to let user mode configure this.
2008-06-06[intel-gem] Use timers to retire requests periodically.Keith Packard
Without the user IRQ running constantly, there's no wakeup when the ring empties to go retire requests and free buffers. Use a 1 second timer to make that happen more often.
2008-06-06[intel] free the hardware status page at driver_unloadKeith Packard
This goes with the other hardware status page patch.
2008-06-06[intel-gem] Add explicit throttle ioctlKeith Packard
Instead of throttling and execbuffer time, have the application ask to throttle explicitly. This allows the throttle to happen less often, and without holding the DRM lock.
2008-06-06[libdrm/intel] Eliminate extra dri_gem_bo_bucket_entry structureKeith Packard
Place the buffer reuse links right into the dri_bo_gem object.
2008-06-06[libdrm/intel] Remove unused intel_validate_entry structureKeith Packard
2008-06-06[libdrm/intel] Reuse entire dri_bo_gem structureKeith Packard
The code was discarding the dri_bo_gem structure and saving only the kernel handle. This lost the mmap address, causing pain when the next buffer user wanted to map the buffer.
2008-06-06[intel] Allocate hardware status page at driver load timeKeith Packard
I couldn't get the re-allocated HWS to work on my 965GM, so I just gave up and made it persist across the lifetime of the driver instead.
2008-06-06Ignore X server provided mmio addressKeith Packard
2008-06-06[intel-gem] Dump error status on wait_request failureKeith Packard
2008-06-05radeon: Restore software interrupt on resume.Dennis Kasprzyk
Fixes performance drop after suspend/resume on some systems.
2008-06-05Add a function to bufmgr_fake to evict all buffers in the GTT.Eric Anholt
This will be used by the X Server for VT switch.
2008-06-03Drop struct_mutex while waiting in drm_client_lock_takeKeith Packard
struct_mutex cannot be held while blocking on DRM lock.
2008-06-03Fix libdrm to actually include the new code instead of just building it.Eric Anholt
2008-06-03Fix and hook up bufmgr code to the build.Eric Anholt
2008-06-03Import bufmgr code to libdrm. Not yet hooked up to the build.Eric Anholt
2008-06-03vblank: Don't wait or update the counter while the CRTC is supposedly disabled.Michel Dänzer
Without kernel modesetting, this requires cooperation of the userspace modesetting driver. We may have to leave the vblank interrupt enabled otherwise to avoid problems.
2008-06-03vblank: Clean up compensation for spurious wraparounds of driver counter.Michel Dänzer
Only compensate when the driver counter actually appears to have moved backwards. The compensation deltas need to be incremental instead of absolute; drop the vblank_offset field and just use atomic_sub().
2008-06-03vblank: Special-case driver vblank counter going back by 1.Michel Dänzer
Turns out the radeon driver is affected by the same problem that prompted i915 to revert to less useful counter flipping at the end of the vblank interval. In the long term, we can hopefully implement more reliable methods to achieve counter flipping at the beginning of vblank, but otherwise this should be an acceptable workaround.
2008-06-03vblank: Don't return current sequence number and time if interrupted by signal.Michel Dänzer
2008-06-03Revert "don't copy back if an error was returned."Michel Dänzer
This reverts commit 6671ad1917698b6174a1af314b63b3800d75248c. The vblank ioctl needs to update the userspace parameters when interrupted by a signal, which was prevented by this. Let's see if this breaks other ioctls...
2008-06-03drm: sg alloc should write back the handle to userspaceDave Airlie
2008-06-03drm/ati_pcigart: use proper page mapping functionDave Airlie
This should be pci_map_page not pci_map_single
2008-06-02[intel-gem] reloc_and_validate_object → object_bind_and_relocateKeith Packard
Just renaming this function and related parameters to match terminology used elsewhere in the driver.
2008-06-02[intel-gem] Propagate set_domain errors.Keith Packard
set_domain can block waiting for rendering to complete. If that process is interrupted by a signal, it can return -EINTR. Catch this error in all callers and correctly deal with the result.
2008-06-01[FreeBSD] Declare vblank_disable_fn callout MPSAFE.Robert Noland
2008-06-01[FreeBSD] Get rid of vbl_lock and re-use irq_lock.Robert Noland
2008-06-01[FreeBSD] Add symlink for radeon_microcode.hRobert Noland
2008-06-01[FreeBSD] Call drm_vblank_cleanup during irq uninstallRobert Noland
I needed to re-arrange some functions for this. Also needed to call DRM_SPINUNINIT on the vbl_lock during cleanup.
2008-05-30RADEON: fix typo in last commitAlex Deucher
2008-05-30Merge commit 'origin/master' into drm-gemEric Anholt
Conflicts: linux-core/Makefile.kernel shared-core/i915_drv.h shared-core/nouveau_state.c
2008-05-30[intel-gem] Only update obj->write_domain if we're actually changing it.Eric Anholt
The problem was revealed where on 965, the display list vertex buffer would see: create -> (CPU, CPU) set_domain (CPU, CPU) -> (CPU, CPU) set_comain (CPU, 0) -> (CPU, 0) (no clflush occurred) execbuf (GPU, 0) -> (CPU+GPU, 0) (still no clflush) instead of: create -> (CPU, CPU) set_domain (CPU, CPU) -> (CPU, CPU) set_comain (CPU, 0) -> (CPU, CPU) execbuf (GPU, 0) -> (CPU+GPU, 0) (clflushed)
2008-05-30[intel-gem] Add an option to check GTT versus CPU coherency at execbuf time.Eric Anholt