Android port that aims to bring both user- and developer-friendly experience in using AOSP with a set of single-board computers (SBC), phones and other devices.
471
stars
67
forks
source link
Add sunxi v4l2 rotation engine support to the drm_hwcomposer #66
Sunxi display controlled has no support for rotated planes.
Instead it offers separate IP core to rotate buffer, which is exposed to user as v4l2 driver.
To off-load GPU with changed orientation, we can use that driver.
Case 1: No rotation
[hwc layer 1] -> [drm_plane 1]
[hwc layer 2] -> [drm_plane 2]
Case 2: Changed orientation
[hwc layer 1] -> [Rotate layer into new buffer, cache it] -> [drm_plane 1]
[hwc layer 2] -> [Rotate layer into new buffer, cache it] -> [drm_plane 2]
Sunxi display controlled has no support for rotated planes. Instead it offers separate IP core to rotate buffer, which is exposed to user as v4l2 driver.
To off-load GPU with changed orientation, we can use that driver.
Case 1: No rotation [hwc layer 1] -> [drm_plane 1] [hwc layer 2] -> [drm_plane 2]
Case 2: Changed orientation
[hwc layer 1] -> [Rotate layer into new buffer, cache it] -> [drm_plane 1] [hwc layer 2] -> [Rotate layer into new buffer, cache it] -> [drm_plane 2]