diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c index af3f3dfdb49f2b0fe0811fa88d4f5daf6bf0d3d9..4c5c9c3899e04a4d9ea93cf9f4095a4760dc8aea 100644 --- a/drivers/gpu/drm/drm_atomic.c +++ b/drivers/gpu/drm/drm_atomic.c @@ -387,6 +387,8 @@ int drm_atomic_plane_set_property(struct drm_plane *plane, state->src_w = val; } else if (property == config->prop_src_h) { state->src_h = val; + } else if (property == config->rotation_property) { + state->rotation = val; } else if (plane->funcs->atomic_set_property) { return plane->funcs->atomic_set_property(plane, state, property, val); diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h index ac55ab0dc88b0eaba336072de0059d142f130272..0ebd9286b332aa8139bb2a96e91be9d0ebc3d4da 100644 --- a/include/drm/drm_crtc.h +++ b/include/drm/drm_crtc.h @@ -764,6 +764,9 @@ struct drm_plane_state { uint32_t src_x, src_y; uint32_t src_h, src_w; + /* Plane rotation */ + unsigned int rotation; + struct drm_atomic_state *state; };