xref: /openbmc/linux/drivers/gpu/drm/renesas/rcar-du/rcar_du_writeback.h (revision 9f771739a04919226081a107167596de75108fbb)
1*11696c5eSBiju Das /* SPDX-License-Identifier: GPL-2.0+ */
2*11696c5eSBiju Das /*
3*11696c5eSBiju Das  * R-Car Display Unit Writeback Support
4*11696c5eSBiju Das  *
5*11696c5eSBiju Das  * Copyright (C) 2019 Laurent Pinchart <laurent.pinchart@ideasonboard.com>
6*11696c5eSBiju Das  */
7*11696c5eSBiju Das 
8*11696c5eSBiju Das #ifndef __RCAR_DU_WRITEBACK_H__
9*11696c5eSBiju Das #define __RCAR_DU_WRITEBACK_H__
10*11696c5eSBiju Das 
11*11696c5eSBiju Das #include <drm/drm_plane.h>
12*11696c5eSBiju Das 
13*11696c5eSBiju Das struct rcar_du_crtc;
14*11696c5eSBiju Das struct rcar_du_device;
15*11696c5eSBiju Das struct vsp1_du_atomic_pipe_config;
16*11696c5eSBiju Das 
17*11696c5eSBiju Das #ifdef CONFIG_DRM_RCAR_WRITEBACK
18*11696c5eSBiju Das int rcar_du_writeback_init(struct rcar_du_device *rcdu,
19*11696c5eSBiju Das 			   struct rcar_du_crtc *rcrtc);
20*11696c5eSBiju Das void rcar_du_writeback_setup(struct rcar_du_crtc *rcrtc,
21*11696c5eSBiju Das 			     struct vsp1_du_writeback_config *cfg);
22*11696c5eSBiju Das void rcar_du_writeback_complete(struct rcar_du_crtc *rcrtc);
23*11696c5eSBiju Das #else
rcar_du_writeback_init(struct rcar_du_device * rcdu,struct rcar_du_crtc * rcrtc)24*11696c5eSBiju Das static inline int rcar_du_writeback_init(struct rcar_du_device *rcdu,
25*11696c5eSBiju Das 					 struct rcar_du_crtc *rcrtc)
26*11696c5eSBiju Das {
27*11696c5eSBiju Das 	return -ENXIO;
28*11696c5eSBiju Das }
29*11696c5eSBiju Das static inline void
rcar_du_writeback_setup(struct rcar_du_crtc * rcrtc,struct vsp1_du_writeback_config * cfg)30*11696c5eSBiju Das rcar_du_writeback_setup(struct rcar_du_crtc *rcrtc,
31*11696c5eSBiju Das 			struct vsp1_du_writeback_config *cfg)
32*11696c5eSBiju Das {
33*11696c5eSBiju Das }
rcar_du_writeback_complete(struct rcar_du_crtc * rcrtc)34*11696c5eSBiju Das static inline void rcar_du_writeback_complete(struct rcar_du_crtc *rcrtc)
35*11696c5eSBiju Das {
36*11696c5eSBiju Das }
37*11696c5eSBiju Das #endif
38*11696c5eSBiju Das 
39*11696c5eSBiju Das #endif /* __RCAR_DU_WRITEBACK_H__ */
40