Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0+ */
0002 /*
0003  * R-Car Display Unit Writeback Support
0004  *
0005  * Copyright (C) 2019 Laurent Pinchart <laurent.pinchart@ideasonboard.com>
0006  */
0007 
0008 #ifndef __RCAR_DU_WRITEBACK_H__
0009 #define __RCAR_DU_WRITEBACK_H__
0010 
0011 #include <drm/drm_plane.h>
0012 
0013 struct rcar_du_crtc;
0014 struct rcar_du_device;
0015 struct vsp1_du_atomic_pipe_config;
0016 
0017 #ifdef CONFIG_DRM_RCAR_WRITEBACK
0018 int rcar_du_writeback_init(struct rcar_du_device *rcdu,
0019                struct rcar_du_crtc *rcrtc);
0020 void rcar_du_writeback_setup(struct rcar_du_crtc *rcrtc,
0021                  struct vsp1_du_writeback_config *cfg);
0022 void rcar_du_writeback_complete(struct rcar_du_crtc *rcrtc);
0023 #else
0024 static inline int rcar_du_writeback_init(struct rcar_du_device *rcdu,
0025                      struct rcar_du_crtc *rcrtc)
0026 {
0027     return -ENXIO;
0028 }
0029 static inline void
0030 rcar_du_writeback_setup(struct rcar_du_crtc *rcrtc,
0031             struct vsp1_du_writeback_config *cfg)
0032 {
0033 }
0034 static inline void rcar_du_writeback_complete(struct rcar_du_crtc *rcrtc)
0035 {
0036 }
0037 #endif
0038 
0039 #endif /* __RCAR_DU_WRITEBACK_H__ */