Lines Matching full:rotation
901 * drm_client_rotation() - Check the initial rotation value
903 * @rotation: Returned rotation value
906 * to match the rotation needed on its connector.
911 * True if the plane can do the rotation, false otherwise.
913 bool drm_client_rotation(struct drm_mode_set *modeset, unsigned int *rotation) in drm_client_rotation() argument
926 *rotation = DRM_MODE_ROTATE_180; in drm_client_rotation()
929 *rotation = DRM_MODE_ROTATE_90; in drm_client_rotation()
932 *rotation = DRM_MODE_ROTATE_270; in drm_client_rotation()
935 *rotation = DRM_MODE_ROTATE_0; in drm_client_rotation()
939 * The panel already defined the default rotation in drm_client_rotation()
956 panel_rot = ilog2(*rotation & DRM_MODE_ROTATE_MASK); in drm_client_rotation()
960 panel_rest = *rotation & ~DRM_MODE_ROTATE_MASK; in drm_client_rotation()
964 *rotation = (1 << sum_rot) | sum_rest; in drm_client_rotation()
968 * TODO: support 90 / 270 degree hardware rotation, in drm_client_rotation()
972 if (((*rotation & DRM_MODE_ROTATE_MASK) != DRM_MODE_ROTATE_0 && in drm_client_rotation()
973 (*rotation & DRM_MODE_ROTATE_MASK) != DRM_MODE_ROTATE_180) || in drm_client_rotation()
980 if (!(*rotation & valid_mask)) in drm_client_rotation()
1015 plane_state->rotation = DRM_MODE_ROTATE_0; in drm_client_modeset_commit_atomic()
1028 unsigned int rotation; in drm_client_modeset_commit_atomic() local
1030 if (drm_client_rotation(mode_set, &rotation)) { in drm_client_modeset_commit_atomic()
1035 plane_state->rotation = rotation; in drm_client_modeset_commit_atomic()