xref: /openbsd/sys/dev/pci/drm/include/drm/drm_writeback.h (revision c349dbc7)
17f4dd379Sjsg /* Public domain. */
27f4dd379Sjsg 
3*c349dbc7Sjsg #ifndef _DRM_WRITEBACK_H
4*c349dbc7Sjsg #define _DRM_WRITEBACK_H
57f4dd379Sjsg 
67f4dd379Sjsg #include <drm/drm_connector.h>
77f4dd379Sjsg 
87f4dd379Sjsg struct drm_writeback_connector {
97f4dd379Sjsg 	struct drm_connector base;
107f4dd379Sjsg };
117f4dd379Sjsg 
127f4dd379Sjsg struct drm_writeback_job {
137f4dd379Sjsg 	struct dma_fence *out_fence;
147f4dd379Sjsg 	struct drm_framebuffer *fb;
157f4dd379Sjsg };
167f4dd379Sjsg 
177f4dd379Sjsg static inline struct drm_writeback_connector *
drm_connector_to_writeback(struct drm_connector * connector)187f4dd379Sjsg drm_connector_to_writeback(struct drm_connector *connector)
197f4dd379Sjsg {
207f4dd379Sjsg 	return container_of(connector, struct drm_writeback_connector, base);
217f4dd379Sjsg }
227f4dd379Sjsg 
237f4dd379Sjsg static inline struct dma_fence *
drm_writeback_get_out_fence(struct drm_writeback_connector * connector)247f4dd379Sjsg drm_writeback_get_out_fence(struct drm_writeback_connector *connector)
257f4dd379Sjsg {
267f4dd379Sjsg 	return NULL;
277f4dd379Sjsg }
287f4dd379Sjsg 
29*c349dbc7Sjsg static inline void
drm_writeback_cleanup_job(struct drm_writeback_job * j)30*c349dbc7Sjsg drm_writeback_cleanup_job(struct drm_writeback_job *j)
31*c349dbc7Sjsg {
32*c349dbc7Sjsg }
33*c349dbc7Sjsg 
34*c349dbc7Sjsg static inline int
drm_writeback_prepare_job(struct drm_writeback_job * j)35*c349dbc7Sjsg drm_writeback_prepare_job(struct drm_writeback_job *j)
36*c349dbc7Sjsg {
37*c349dbc7Sjsg 	return 0;
38*c349dbc7Sjsg }
39*c349dbc7Sjsg 
40*c349dbc7Sjsg static inline int
drm_writeback_set_fb(struct drm_connector_state * cs,struct drm_framebuffer * fb)41*c349dbc7Sjsg drm_writeback_set_fb(struct drm_connector_state *cs, struct drm_framebuffer *fb)
42*c349dbc7Sjsg {
43*c349dbc7Sjsg 	return 0;
44*c349dbc7Sjsg }
45*c349dbc7Sjsg 
467f4dd379Sjsg #endif
47