Age | Commit message (Collapse) | Author |
|
Driver installs as intel_drv.so with symlink to i810_drv.so to ensure
existing configurations continue to work. Updated manual page to reflect
name change and add attributions for recent work.
|
|
|
|
Setting option "Ignore" "Yes" will cause the server to pretend as if the
specified output does not exist at all. It will not be listed by the
RandR1.2 extension, and the server will not attempt to detect monitors at
startup time.
|
|
xf86RandRCrtcSet was ignoring changes to only rotation, so the screen would
be left incorrectly rotated.
|
|
This includes not reporting some fields on hardware where those bits are
reserved, correcting one of the hardware error bit numbers, and reducing
the severity of the debugging output warnings.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The now-generic (kind of) EXA code will be cleaned up and moved to generic
files in a later commit.
|
|
Previously, we tried to use 2 points instead of 3 to describe the source
rectangles, which mostly just worked for scaling.
|
|
|
|
This adds reasonably driver-independent rotation support to the common
layer. The piece required in the driver is to allocate and redirect the crtc
to a shadow frame buffer. The driver uses Render to perform the actual
rotation operation (which leaves us free to do fun projective transforms at
some point in the future :-).
|
|
Typical results were failure to sync, and a black screen.
|
|
|
|
Our modes typically come from EDID or default modes, and when the monitor
asks for a specific mode, deciding to tweak it usually results in incorrect
display. And if the user is specifying a mode by hand, tweaking it then is
still pretty rude.
Reviewed by: ajax
|
|
|
|
The XAA Composite wrapper doesn't check for sourcing from the root pixmap
when deciding whether to sync the hardware drawing. Fix the rotation code to
reference the root window in IncludeInferiors mode to avoid reading without
correct synchronization.
|
|
When converting from global cursor to per-crtc cursor, the ARGB cursor data
was accidentally painted to the wrong location, overwriting some critical
data and causing the hardware to lock up. (along with generating a garbage
cursor image from uninitialized data).
|
|
Instead of using memset to zero the structure (at the wrong time, no less),
use xcalloc to gather pre-initialized memory.
|
|
When shadow frame buffer is allocated for rotation, it needs to be
initialized by copying from the frame buffer. Do this by simply marking the
entire screen as damaged which will force an update.
|
|
Rotated pixmap should match size of displayed mode, not the rotated version
of that size.
Take damaged region, rotate each box and display them instead of displaying
the whole screen after each damage update. This exposes a bug where the
screen is not correctly damaged after rotation.
|
|
For EXA, this requires version 2.1 of EXA to do rotation, as the VT switching
issues were too complicated otherwise.
|
|
|
|
|
|
|
|
|
|
With this, additional power saving occurs with the core screensaver, for
example by turning off LVDS backlight.
|
|
tell DRI we are smashing the context state.
|
|
Also, add bind/unbind of the shadow rotate buffers, which was missed in a
previous commit.
|
|
The remaining issue is having a cursor image per CRTC so that the cursors can
be rotated on the independently rotated CRTCs.
|
|
|
|
With this, the screen now gets rotated, though there are major issues.
|
|
|
|
Also, add a bit more error checking.
|
|
|
|
|
|
It currently displays garbage.
|
|
|
|
|
|
|
|
This extends the output funcs to have a callback for when it's time to
configure properties, and another for when the server has changed a property
whose value isn't pending a mode set. (Pending properties are to be picked up
by the driver at mode_set time).
|
|
Conflicts:
src/i830_driver.c
src/i830_randr.c
Just a few sync changes.
|
|
Yes, there are lots of bits tied together here, and we should split this
patch apart.
Move I830 mode setting to xf86 mode setting.
Make mode setting function also set the base address. This should fix
problems where the base gets set incorrectly at times.
Add driver-independent rotation support, requires driver-specific hooks for
shadow pixmap allocation, otherwise it uses Render for painting.
|
|
Makes the mode setting logic device independent.
Magic rename hooks allow multiple drivers to provide the
generic code without name conflicts.
Rotation code requires special pixmap creation hook, and uses
Render to perform the actual rotation.
|
|
A side effect is the reduction in vertex dispatch, which is nice.
|
|
|