summaryrefslogtreecommitdiff
path: root/linux-core
AgeCommit message (Collapse)Author
2008-06-18Merge branch 'modesetting-101' into modesetting-gemJesse Barnes
2008-06-18i915: switch back to fbcon on panicJesse Barnes
Normally when X is running, panic messages will be invisible and the machine will just appear to hard hang. This patch adds support for switching back to the fbcon framebuffer on panic (through the use of a panic notifier registration) so we can see what happened. Note that in order to be really useful, X will have to run its VT in something other than KD_GRAPHICS mode. Also, not all kernel errors result in panics, some go through BUG() which may trigger another type of event, not resulting in a switch.
2008-06-11Use GEM in modesettingJesse Barnes
Use GEM for ring buffer setup and framebuffer allocation. This means reworking the hardware status page stuff a bit (just use the basic range allocator for vram for now) and #ifdef'ing out the TTM & DRI2 code. Works well enough to load/unload several times and display fbcon on my T61 (though there's still some unexplained console corruption).
2008-06-11Merge commit 'origin/drm-gem' into modesetting-gemJesse Barnes
Use new GEM based ring buffer initialization. Still need to init GEM & use it for framebuffer allocation etc. Conflicts: shared-core/i915_dma.c shared-core/i915_drv.h
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-10Merge commit 'origin/drm-gem' into modesetting-gemJesse Barnes
Passed the compile test; it's ready to ship. Conflicts: libdrm/Makefile.am linux-core/Makefile.kernel linux-core/drmP.h linux-core/drm_memrange.c linux-core/drm_stub.c shared-core/drm.h shared-core/i915_dma.c shared-core/i915_drv.h shared-core/i915_irq.c
2008-06-09Add EDID quirk handlingJesse Barnes
Port over EDID quirks from X.Org so we can handle more monitors. This meant adding size info to the drm_display_mode struct, but other than that the changes were isolated to the DRM EDID handling code (as they should be).
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-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[intel-gem] Dump error status on wait_request failureKeith Packard
2008-06-06drm: fix up fb resize againDave Airlie
2008-06-06intel: don't set the mode on the framebuffer if isn't set to scanout our ↵Dave Airlie
framebuffer
2008-06-06Merge remote branch 'origin/modesetting-101' into modesetting-101-fbDave Airlie
2008-06-06intelfb: add multi fb pathsDave Airlie
2008-06-06intelfb: remove duplicate defineDave Airlie
2008-06-06intelfb: admit fbdev is crap and punt on trying to resize to a larger fbdev.Dave Airlie
2008-06-06intelfb: move mode sets into the intel crtcsDave Airlie
better place to store them.
2008-06-06drm/intel: make hotplug just be an eventDave Airlie
2008-06-06intel: if no spare crtc exists don't just take one.Dave Airlie
2008-06-05sysfs registration/teardown fixupsJesse Barnes
A check in drm_sysfs_connector_remove was supposed to allow it to be called even with unregistered objects, to make cleanup paths a little simpler. However, device_is_regsitered didn't always seem to return what we thought it would, so we'd sometimes end up leaving objects lying around rather than unregistering them. Fix this situation up by requiring devices to be registered before being removed. Any problems resulting from this change should be easier to track down than the alternative (which is leaving kobjects registered after unload).
2008-06-05drm/modeset: add more debugging and fixup some fb enable/disabe bitsDave Airlie
2008-06-05drm/modesetting: more fb interface cleanupsDave Airlie
2008-06-05drm/modesetting: attempt to make fb code more saneDave Airlie
2008-06-05drm: modesetting unify the hotplug init paths a lot.Dave Airlie
remove fb callbacks, just probe into the driver to sort it out
2008-06-05modesetting: fix fb clearing upDave Airlie
2008-06-05modesetting: use surface width height for buffer allocsDave Airlie
2008-06-05modesetting: add surface width/heightsDave Airlie
2008-06-05modesetting: initial attempt at debonging fbDave Airlie
2008-06-04i915: use kzalloc to allocate intel_output for lvdsJesse Barnes
Better to initialize all the struct fields to 0. Also more consistent with other output init routines.
2008-06-04Fix crash in drm_mode_connector_update_edid_propertyJesse Barnes
We need to initialize the edid_blob_ptr to NULL when we init a connector, otherwise drm_mode_connector_update_edid_property may think there's a valid EDID lying around and try to destroy it, causing a crash.
2008-06-04drm: fix hotplug oopsDave Airlie
2008-06-04intel: report a known connectorDave Airlie
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-04drm: introduce generation counter to interface.Dave Airlie
Idea being if you want to add new crtc/output/encoder dynamically later, you just increase the generation counter and userspace should re-read all the resources
2008-06-04drm/sysfs: don't try an unregister if not registeredDave Airlie
2008-06-04intel: use kzallocDave Airlie
2008-06-04drm/modesetting: bo not used anymoreDave Airlie
2008-06-04drm: remove sysfs in driver for now.. should probably be in helperDave Airlie
2008-06-04drm/modesetting: pass object handle to driver !boDave Airlie
2008-06-04drm/modesetting: overhaul the fb create/delete.Dave Airlie
Move TTM code into the driver
2008-06-04drm: make mode comparison more betterer.Dave Airlie
This compares the clocks after converting to fb pico timings so we get the same answer if the X and fb modes are the same.
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-02more checks for NULL encoder so we don't segfault.Alan Hourihane
2008-06-02Fix warningsAlan Hourihane
2008-06-02drm: initial mode object groups.Dave Airlie
This creates a default group attached to the legacy drm minor nodes. It covers all the objects in the set. make set resources only return objects for this set. Need to fix up other functions to only work on objects in their allowed set.
2008-06-02drm/modesetting: redo object handles around a core object.Dave Airlie
handle crtc/encoders/connectors/fb/mode/property/blob using this system.
2008-06-02drm: only report framebuffers available on this fd.Dave Airlie
Not 100% sure this is a good idea, but I think I'd rather things communicate with bo handles not fb ids.
2008-06-02drm: add functions to get/set gamma rampsDave Airlie