Lines Matching full:rotation

101  * rotation:
102 * Rotation is set up with drm_plane_create_rotation_property(). It adds a
103 * rotation and reflection step between the source and destination rectangles.
232 * drm_plane_create_rotation_property - create a new rotation property
234 * @rotation: initial value of the rotation property
239 * Since a rotation by 180° degress is the same as reflecting both along the x
240 * and the y axis the rotation property is somewhat redundant. Drivers can use
244 * drm_property_create_bitmask()) called "rotation" and has the following
260 * Rotation is the specified amount in degrees in counter clockwise direction,
262 * rotation. After reflection, the rotation is applied to the image sampled from
266 unsigned int rotation, in drm_plane_create_rotation_property() argument
280 WARN_ON(!is_power_of_2(rotation & DRM_MODE_ROTATE_MASK)); in drm_plane_create_rotation_property()
281 WARN_ON(rotation & ~supported_rotations); in drm_plane_create_rotation_property()
283 prop = drm_property_create_bitmask(plane->dev, 0, "rotation", in drm_plane_create_rotation_property()
289 drm_object_attach_property(&plane->base, prop, rotation); in drm_plane_create_rotation_property()
292 plane->state->rotation = rotation; in drm_plane_create_rotation_property()
301 * drm_rotation_simplify() - Try to simplify the rotation
302 * @rotation: Rotation to be simplified
305 * Attempt to simplify the rotation to a form that is supported.
309 * drm_rotation_simplify(rotation, DRM_MODE_ROTATE_0 |
318 unsigned int drm_rotation_simplify(unsigned int rotation, in drm_rotation_simplify() argument
321 if (rotation & ~supported_rotations) { in drm_rotation_simplify()
322 rotation ^= DRM_MODE_REFLECT_X | DRM_MODE_REFLECT_Y; in drm_rotation_simplify()
323 rotation = (rotation & DRM_MODE_REFLECT_MASK) | in drm_rotation_simplify()
324 BIT((ffs(rotation & DRM_MODE_ROTATE_MASK) + 1) in drm_rotation_simplify()
328 return rotation; in drm_rotation_simplify()