[PATCH v2 0/5] Switching between HW and SW cursors

Michel Dänzer michel at daenzer.net
Wed Dec 23 23:57:24 PST 2015


This is v2 of a previous series, but all patches are different, and I
changed the order somewhat so that drivers can rely on
xf86CursorResetCursor getting called, so they don't need to call
xf86_reload_cursors anymore.

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 code to
   xf86_use_hw_cursor(_argb) to force SW cursor in this case.

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
   requires xf86CursorResetCursor added in patch 3 in order 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.

Patch 1 refactors the xf86_use_hw_cursor(_argb) code to prevent
duplication in patch 2. Patch 4 cleans up dead code from the modesetting
driver. Last but not least, since CRTC transforms can now work correctly
with the modesetting driver, patch 5 makes them actually take effect.

[PATCH xserver 1/5] xfree86/modes: Refactor xf86_use_hw_cursor_argb
[PATCH xserver 2/5] xfree86/modes: Check for CRTC transforms in
[PATCH xserver 3/5] xfree86: Re-set current cursor after RandR 1.2
[PATCH xserver 4/5] modesetting: Remove xf86_reload_cursors call
[PATCH xserver 5/5] modesetting: Allow CRTC transforms to actually


More information about the xorg-devel mailing list