summaryrefslogtreecommitdiff
path: root/src/lib/ecore_drm2/ecore_drm2_private.h
diff options
context:
space:
mode:
authorChris Michael <cp.michael@samsung.com>2017-04-25 10:09:48 -0400
committerDerek Foreman <derekf@osg.samsung.com>2017-05-05 12:53:20 -0500
commite1b26f6320b07cd810a2a56ae388890d4c29d838 (patch)
tree581fe33bee1814d760bb2dfb8f09ca23f3b66752 /src/lib/ecore_drm2/ecore_drm2_private.h
parenteb1ed0fc0a757f71800d8a91ae387985464c0b11 (diff)
ecore-drm2: Enable reuse of existing state structures for non-atomic
As there is nothing 'atomic' specific in these structures, we can move them outside the atomic ifdef and make use of them for handling pageflip for both atomic and non-atomic use cases. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
Diffstat (limited to 'src/lib/ecore_drm2/ecore_drm2_private.h')
-rw-r--r--src/lib/ecore_drm2/ecore_drm2_private.h9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/lib/ecore_drm2/ecore_drm2_private.h b/src/lib/ecore_drm2/ecore_drm2_private.h
index 73e61f2431..ca92f3cec0 100644
--- a/src/lib/ecore_drm2/ecore_drm2_private.h
+++ b/src/lib/ecore_drm2/ecore_drm2_private.h
@@ -601,6 +601,7 @@ typedef struct _drmModeAtomicReq
601} drmModeAtomicReq, *drmModeAtomicReqPtr; 601} drmModeAtomicReq, *drmModeAtomicReqPtr;
602 602
603/* end xf86drmMode.h */ 603/* end xf86drmMode.h */
604#endif
604 605
605typedef struct _Ecore_Drm2_Atomic_State Ecore_Drm2_Atomic_State; 606typedef struct _Ecore_Drm2_Atomic_State Ecore_Drm2_Atomic_State;
606 607
@@ -659,7 +660,6 @@ struct _Ecore_Drm2_Atomic_State
659 Ecore_Drm2_Connector_State *conn_states; 660 Ecore_Drm2_Connector_State *conn_states;
660 Ecore_Drm2_Plane_State *plane_states; 661 Ecore_Drm2_Plane_State *plane_states;
661}; 662};
662# endif
663 663
664# ifndef DRM_CAP_CURSOR_WIDTH 664# ifndef DRM_CAP_CURSOR_WIDTH
665# define DRM_CAP_CURSOR_WIDTH 0x8 665# define DRM_CAP_CURSOR_WIDTH 0x8
@@ -709,9 +709,7 @@ struct _Ecore_Drm2_Plane
709{ 709{
710 int type; 710 int type;
711 Ecore_Drm2_Fb *current, *next, *pending; 711 Ecore_Drm2_Fb *current, *next, *pending;
712# ifdef HAVE_ATOMIC_DRM
713 Ecore_Drm2_Plane_State *state; 712 Ecore_Drm2_Plane_State *state;
714# endif
715}; 713};
716 714
717struct _Ecore_Drm2_Output_Mode 715struct _Ecore_Drm2_Output_Mode
@@ -770,12 +768,11 @@ struct _Ecore_Drm2_Output
770 Ecore_Drm2_Release_Handler release_cb; 768 Ecore_Drm2_Release_Handler release_cb;
771 void *release_data; 769 void *release_data;
772 770
773# ifdef HAVE_ATOMIC_DRM
774 Ecore_Drm2_Crtc_State *crtc_state; 771 Ecore_Drm2_Crtc_State *crtc_state;
775 Ecore_Drm2_Connector_State *conn_state; 772 Ecore_Drm2_Connector_State *conn_state;
773
776 Eina_List *plane_states; 774 Eina_List *plane_states;
777 Eina_List *planes; 775 Eina_List *planes;
778# endif
779 776
780 Eina_Bool connected : 1; 777 Eina_Bool connected : 1;
781 Eina_Bool primary : 1; 778 Eina_Bool primary : 1;
@@ -812,8 +809,8 @@ struct _Ecore_Drm2_Device
812 Ecore_Event_Handler *active_hdlr; 809 Ecore_Event_Handler *active_hdlr;
813 Ecore_Event_Handler *device_change_hdlr; 810 Ecore_Event_Handler *device_change_hdlr;
814 811
815# ifdef HAVE_ATOMIC_DRM
816 Ecore_Drm2_Atomic_State *state; 812 Ecore_Drm2_Atomic_State *state;
813# ifdef HAVE_ATOMIC_DRM
817 drmModeAtomicReq *atomic_req; 814 drmModeAtomicReq *atomic_req;
818# endif 815# endif
819 816