ecore_drm2: Add API function to set display DPMS level
This commit is contained in:
parent
2ac01d0db7
commit
2b8b27ef5e
|
@ -66,6 +66,7 @@ EAPI unsigned int ecore_drm2_display_connector_type_get(Ecore_Drm2_Display *disp
|
|||
EAPI unsigned int ecore_drm2_display_subpixel_get(Ecore_Drm2_Display *disp);
|
||||
EAPI void ecore_drm2_display_physical_size_get(Ecore_Drm2_Display *disp, int *w, int *h);
|
||||
EAPI int ecore_drm2_display_dpms_get(Ecore_Drm2_Display *disp);
|
||||
EAPI void ecore_drm2_display_dpms_set(Ecore_Drm2_Display *disp, uint64_t level);
|
||||
EAPI Eina_Bool ecore_drm2_display_enabled_get(Ecore_Drm2_Display *disp);
|
||||
EAPI void ecore_drm2_display_enabled_set(Ecore_Drm2_Display *disp, Eina_Bool enabled);
|
||||
EAPI unsigned int ecore_drm2_display_crtc_get(Ecore_Drm2_Display *disp);
|
||||
|
|
|
@ -670,6 +670,22 @@ ecore_drm2_display_dpms_get(Ecore_Drm2_Display *disp)
|
|||
return disp->conn->state.current->dpms.value;
|
||||
}
|
||||
|
||||
EAPI void
|
||||
ecore_drm2_display_dpms_set(Ecore_Drm2_Display *disp, uint64_t level)
|
||||
{
|
||||
Ecore_Drm2_Connector_State *cstate, *pstate;
|
||||
|
||||
EINA_SAFETY_ON_NULL_RETURN(disp);
|
||||
EINA_SAFETY_ON_NULL_RETURN(disp->conn);
|
||||
|
||||
cstate = disp->conn->state.current;
|
||||
if (cstate->dpms.value == level) return;
|
||||
|
||||
pstate = disp->conn->state.pending;
|
||||
pstate->dpms.value = level;
|
||||
pstate->changes |= ECORE_DRM2_CONNECTOR_STATE_DPMS;
|
||||
}
|
||||
|
||||
EAPI Eina_Bool
|
||||
ecore_drm2_display_enabled_get(Ecore_Drm2_Display *disp)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue