[PATCH 0/5] Switching from HW cursor to SW cursor

Michel Dänzer michel at daenzer.net
Mon Dec 21 01:39:52 PST 2015


This series addresses two cases in which a HW cursor cannot be used:

1) When a transform is active on a CRTC. Patch 2 adds a CRTC hook
   use_hw_cursor_argb, which allows drivers to force SW cursor on a
   per-CRTC basis. However, this hook alone could only force SW cursor
   as of the next time a new cursor image is set. The
   xf86CursorResetCursor function added in patch 1 allows switching
   between HW cursor and SW cursor immediately.

2) When a GPU screen is acting as an output slave for another screen.
   There was already code in xf86CursorSetCursor for this case, but it
   again needs xf86CursorResetCursor to take effect immediately.

   A patch has been posted allowing HW cursor to be used in this case.
   I think the solution in this series is compatible with that patch.

Patches 3 & 4 make the modesetting driver take advantage of the new
functionality. As a bonus, CRTC transforms can now work correctly with
the modesetting driver, so patch 5 makes them actually take effect.

Once patches 1 & 2 land, I'll post patches corresponding to 3-5 for the
xf86-video-ati driver to the xorg-driver-ati list.

[PATCH xserver 1/5] xfree86: Add xf86CursorResetCursor
[PATCH xserver 2/5] xfree86/modes: Add use_hw_cursor(_argb) CRTC
[PATCH xserver 3/5] modesetting: Implement CRTC use_hw_cursor_argb
[PATCH xserver 4/5] modesetting: Call xf86CursorResetCursor on
[PATCH xserver 5/5] modesetting: Allow CRTC transforms to actually


More information about the xorg-devel mailing list