Lines Matching full:rotation
895 * drm_client_rotation() - Check the initial rotation value
897 * @rotation: Returned rotation value
900 * to match the rotation needed on its connector.
905 * True if the plane can do the rotation, false otherwise.
907 bool drm_client_rotation(struct drm_mode_set *modeset, unsigned int *rotation) in drm_client_rotation() argument
920 *rotation = DRM_MODE_ROTATE_180; in drm_client_rotation()
923 *rotation = DRM_MODE_ROTATE_90; in drm_client_rotation()
926 *rotation = DRM_MODE_ROTATE_270; in drm_client_rotation()
929 *rotation = DRM_MODE_ROTATE_0; in drm_client_rotation()
933 * The panel already defined the default rotation in drm_client_rotation()
950 panel_rot = ilog2(*rotation & DRM_MODE_ROTATE_MASK); in drm_client_rotation()
954 panel_rest = *rotation & ~DRM_MODE_ROTATE_MASK; in drm_client_rotation()
958 *rotation = (1 << sum_rot) | sum_rest; in drm_client_rotation()
962 * TODO: support 90 / 270 degree hardware rotation, in drm_client_rotation()
966 if (((*rotation & DRM_MODE_ROTATE_MASK) != DRM_MODE_ROTATE_0 && in drm_client_rotation()
967 (*rotation & DRM_MODE_ROTATE_MASK) != DRM_MODE_ROTATE_180) || in drm_client_rotation()
974 if (!(*rotation & valid_mask)) in drm_client_rotation()
1009 plane_state->rotation = DRM_MODE_ROTATE_0; in drm_client_modeset_commit_atomic()
1022 unsigned int rotation; in drm_client_modeset_commit_atomic() local
1024 if (drm_client_rotation(mode_set, &rotation)) { in drm_client_modeset_commit_atomic()
1029 plane_state->rotation = rotation; in drm_client_modeset_commit_atomic()