diff options
author | Rob Clark <rob@ti.com> | 2012-05-17 04:23:27 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2012-05-22 05:54:30 -0400 |
commit | 4d93914ae3db4a897ead4b1e33eca7cdfff4c6f7 (patch) | |
tree | 8e7c7b6ce6012f717e0c32929f5d632c930be745 /include/drm/drm_crtc.h | |
parent | 49e2754578b9f99bde18ad318d888a462d271479 (diff) |
drm: add plane properties
The omapdrm driver uses this for setting per-overlay rotation. It
is likely also useful for setting YUV->RGB colorspace conversion
matrix, etc.
Signed-off-by: Rob Clark <rob@ti.com>
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'include/drm/drm_crtc.h')
-rw-r--r-- | include/drm/drm_crtc.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h index 9b33629e654c..73e45600f95d 100644 --- a/include/drm/drm_crtc.h +++ b/include/drm/drm_crtc.h | |||
@@ -601,6 +601,7 @@ struct drm_connector { | |||
601 | * @update_plane: update the plane configuration | 601 | * @update_plane: update the plane configuration |
602 | * @disable_plane: shut down the plane | 602 | * @disable_plane: shut down the plane |
603 | * @destroy: clean up plane resources | 603 | * @destroy: clean up plane resources |
604 | * @set_property: called when a property is changed | ||
604 | */ | 605 | */ |
605 | struct drm_plane_funcs { | 606 | struct drm_plane_funcs { |
606 | int (*update_plane)(struct drm_plane *plane, | 607 | int (*update_plane)(struct drm_plane *plane, |
@@ -611,6 +612,9 @@ struct drm_plane_funcs { | |||
611 | uint32_t src_w, uint32_t src_h); | 612 | uint32_t src_w, uint32_t src_h); |
612 | int (*disable_plane)(struct drm_plane *plane); | 613 | int (*disable_plane)(struct drm_plane *plane); |
613 | void (*destroy)(struct drm_plane *plane); | 614 | void (*destroy)(struct drm_plane *plane); |
615 | |||
616 | int (*set_property)(struct drm_plane *plane, | ||
617 | struct drm_property *property, uint64_t val); | ||
614 | }; | 618 | }; |
615 | 619 | ||
616 | /** | 620 | /** |
@@ -628,6 +632,7 @@ struct drm_plane_funcs { | |||
628 | * @enabled: enabled flag | 632 | * @enabled: enabled flag |
629 | * @funcs: helper functions | 633 | * @funcs: helper functions |
630 | * @helper_private: storage for drver layer | 634 | * @helper_private: storage for drver layer |
635 | * @properties: property tracking for this plane | ||
631 | */ | 636 | */ |
632 | struct drm_plane { | 637 | struct drm_plane { |
633 | struct drm_device *dev; | 638 | struct drm_device *dev; |
@@ -650,6 +655,8 @@ struct drm_plane { | |||
650 | 655 | ||
651 | const struct drm_plane_funcs *funcs; | 656 | const struct drm_plane_funcs *funcs; |
652 | void *helper_private; | 657 | void *helper_private; |
658 | |||
659 | struct drm_object_properties properties; | ||
653 | }; | 660 | }; |
654 | 661 | ||
655 | /** | 662 | /** |