[PATCH xserver 1/2] xfree86/modes: Fix HW cursor clipping for crtc->driverIsPerformingTransform

Keith Packard keithp at keithp.com
Fri Jan 29 09:56:36 PST 2016

Aaron Plattner <aplattner at nvidia.com> writes:

> On 01/29/2016 07:23 AM, Keith Packard wrote:
>> Michel Dänzer <michel at daenzer.net> writes:
>>> I'm not sure that makes sense; e.g. it seems inconsistent with leaving
>>> the cursor image untransformed in the driverIsPerformingTransform case.
>>> It seems to me like the idea behind driverIsPerformingTransform was to
>>> leave all transformations to the driver/hardware.
>> I was just thinking that we've already done the transform to perform the
>> clip, so forcing the driver to *also* transform seems weird to me.
> The idea was that for GPUs that can do scaling after compositing the
> cursor, you want to program the untransformed cursor position and then
> let the hardware transform happen, while on the Tegra hardware I wrote
> this for, it couldn't do that and the transform had to be applied to the
> cursor separately.  I left it up to the driver to decide so that we
> could use this path in the desktop GPU X driver.  That was the idea
> behind
> http://marc.info/?l=freedesktop-xorg-devel&m=131431532812271&w=2

Right, the problem we've uncovered is that someone needs to perform
clipping of the cursor position, and that needs to happen in the
transformed space. Transforming the coordinate, clipping and then
sending the untransformed coordinates and hoping the driver
transform matches the server transform seems silly to me.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 810 bytes
Desc: not available
URL: <http://lists.x.org/archives/xorg-devel/attachments/20160129/46e873af/attachment.sig>

More information about the xorg-devel mailing list