forked from Minki/linux
b883c9ba18
Instead of keying off vblank for psr, just flush every time we get an atomic update. This ensures that cursor updates will properly disable psr (without turning vblank on/off), and unifies the paths between fb_dirty and atomic psr enable/disable. Reviewed-by: Yakir Yang <ykk@rock-chips.com> Signed-off-by: Sean Paul <seanpaul@chromium.org>
29 lines
1.0 KiB
C
29 lines
1.0 KiB
C
/*
|
|
* Copyright (C) Fuzhou Rockchip Electronics Co.Ltd
|
|
* Author: Yakir Yang <ykk@rock-chips.com>
|
|
*
|
|
* This software is licensed under the terms of the GNU General Public
|
|
* License version 2, as published by the Free Software Foundation, and
|
|
* may be copied, distributed, and modified under those terms.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*/
|
|
|
|
#ifndef __ROCKCHIP_DRM_PSR___
|
|
#define __ROCKCHIP_DRM_PSR___
|
|
|
|
void rockchip_drm_psr_flush_all(struct drm_device *dev);
|
|
int rockchip_drm_psr_flush(struct drm_crtc *crtc);
|
|
|
|
int rockchip_drm_psr_activate(struct drm_crtc *crtc);
|
|
int rockchip_drm_psr_deactivate(struct drm_crtc *crtc);
|
|
|
|
int rockchip_drm_psr_register(struct drm_encoder *encoder,
|
|
void (*psr_set)(struct drm_encoder *, bool enable));
|
|
void rockchip_drm_psr_unregister(struct drm_encoder *encoder);
|
|
|
|
#endif /* __ROCKCHIP_DRM_PSR__ */
|