Age | Commit message (Collapse) | Author |
|
|
|
This lets us defer handle creation until userspace acutally asks for
one, at which point we also have a drm_file to associate it with.
|
|
This mimics the X.org from ajax with less options
|
|
This is an initial import of the atom bios parser with modesetting support
for r500 hw using atombios. It also includes a simple memory manager
layer that translates a radeon GEM style interface onto TTM internally.
So far this memory manager has only been used for pinned object allocation
for the DDX to test modesetting.
|
|
|
|
|
|
|
|
- Otherwise userspace has no idea of the meaning.
|
|
- These facilitate DVI-I and tv-out that can drive multiple types of signals.
|
|
not needed, hotplug will work just as well hopefully.
|
|
This reverts commit 13943fe5823c45759091c1a1f487a4abe377421e.
|
|
- intel_crt seems the only one to provide it, so init it there.
|
|
|
|
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).
|
|
|
|
|
|
remove fb callbacks, just probe into the driver to sort it out
|
|
|
|
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
|
|
|
|
Move TTM code into the driver
|
|
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.
|
|
handle crtc/encoders/connectors/fb/mode/property/blob using this system.
|
|
|
|
This asks the driver to suggest the best encoder for the connector
during the pick crtcs stage.
Need to also do this during mode setting stages
|
|
Migrated the output mode collection into the helper.
|
|
Move dpms into the helper functions.
Move crtc into the encoder.
Move disable unused functions into the helper.
|
|
|
|
Okay we have crtc, encoder and connectors.
No more outputs exposed beyond driver internals
I've broken intel tv connector stuff.
Really for TV we should have one TV connector, with a sub property for the
type of signal been driven over it
|
|
Time to do some renaming on the connectors I think
|
|
|
|
|
|
|
|
|
|
|
|
Use subclassing from the drivers to allocate the objects. This saves
two objects being allocated for each crtc/output and generally makes
exit paths cleaner.
|
|
This splits a lot of the core modesetting code out into a file of
helper functions, that are only called from themselves and/or the driver.
The driver gets called into more often or can call these functions from itself
if it is a helper using driver.
I've broken framebuffer resize doing this but I didn't like the API for that
in any case.
|
|
Makes printing modelines from some routines easier.
|
|
|
|
|
|
|
|
It needs to take arguments from the caller about supported TV formats,
so declare it in drm_crtc.h and export it.
|
|
Cleanup some random cruft left over from the initial port.
|
|
Some fields had snuck into the drm_output structure. Put them back and
fill in more stuff from the EDID block.
|
|
TV out needs to do load detection, which means we have to find an
available pipe to use for the detection. Port over the pipe reservation
code for this purpose.
|
|
This patch ties outputs, output properties and hotplug events into the
DRM core. Each output has a corresponding directory under the primary
DRM device (usually card0) containing dpms, edid, modes, and connection
status files.
New hotplug change events occur when outputs are added or hotplug events
are detected.
|
|
Allow mode to be set with fb_id set to -1, meaning set
the mode with the current fb (if we have one bound).
Allow intelfb to hook back up it's fb if modesetting
clears it (maybe temporary).
Move any crtc->fb related register changes to set_base
in intel_fb.
General intelfb cleanups.
|
|
|
|
|
|
Ported from xf86-video-intel. Still need to tie in TV modes somehow, though
preferably w/o using the properties mechanism.
|