XenevaOS
Loading...
Searching...
No Matches
drm_writeback.h
Go to the documentation of this file.
1/* SPDX-License-Identifier: GPL-2.0 */
2/*
3 * (C) COPYRIGHT 2016 ARM Limited. All rights reserved.
4 * Author: Brian Starkey <brian.starkey@arm.com>
5 *
6 * This program is free software and is provided to you under the terms of the
7 * GNU General Public License version 2 as published by the Free Software
8 * Foundation, and any use by you of this program is subject to the terms
9 * of such GNU licence.
10 */
11
12#ifndef __DRM_WRITEBACK_H__
13#define __DRM_WRITEBACK_H__
14#include <drm/drm_connector.h>
15#include <drm/drm_encoder.h>
16#include <linux/workqueue.h>
17
88
144
145static inline struct drm_writeback_connector *
146drm_connector_to_writeback(struct drm_connector *connector)
147{
148 return container_of(connector, struct drm_writeback_connector, base);
149}
150
152 struct drm_writeback_connector *wb_connector,
153 const struct drm_connector_funcs *con_funcs,
154 const struct drm_encoder_helper_funcs *enc_helper_funcs,
155 const u32 *formats, int n_formats,
157
159 struct drm_writeback_connector *wb_connector,
160 struct drm_encoder *enc,
161 const struct drm_connector_funcs *con_funcs, const u32 *formats,
162 int n_formats);
163
165 struct drm_writeback_connector *wb_connector,
166 const struct drm_connector_funcs *con_funcs,
167 struct drm_encoder *enc,
168 const u32 *formats, int n_formats);
169
171 struct drm_framebuffer *fb);
172
174
176 struct drm_connector_state *conn_state);
177
179
180void
182 int status);
183
184struct dma_fence *
186#endif
#define container_of(ptr, type, member)
Definition container_of.h:19
struct drm_plane uint32_t possible_crtcs
Definition drm_plane.h:829
struct drm_plane uint32_t const struct drm_plane_funcs const uint32_t * formats
Definition drm_plane.h:831
const struct device * dev
Definition drm_print.h:519
void drm_writeback_cleanup_job(struct drm_writeback_job *job)
int drm_writeback_set_fb(struct drm_connector_state *conn_state, struct drm_framebuffer *fb)
void drm_writeback_signal_completion(struct drm_writeback_connector *wb_connector, int status)
int drm_writeback_connector_init_with_encoder(struct drm_device *dev, struct drm_writeback_connector *wb_connector, struct drm_encoder *enc, const struct drm_connector_funcs *con_funcs, const u32 *formats, int n_formats)
void drm_writeback_queue_job(struct drm_writeback_connector *wb_connector, struct drm_connector_state *conn_state)
int drm_writeback_connector_init(struct drm_device *dev, struct drm_writeback_connector *wb_connector, const struct drm_connector_funcs *con_funcs, const struct drm_encoder_helper_funcs *enc_helper_funcs, const u32 *formats, int n_formats, u32 possible_crtcs)
int drm_writeback_prepare_job(struct drm_writeback_job *job)
int drmm_writeback_connector_init(struct drm_device *dev, struct drm_writeback_connector *wb_connector, const struct drm_connector_funcs *con_funcs, struct drm_encoder *enc, const u32 *formats, int n_formats)
struct dma_fence * drm_writeback_get_out_fence(struct drm_writeback_connector *wb_connector)
struct i915_user_extension base
Definition i915_drm.h:0
int spinlock_t
Definition kernel.h:44
uint32_t u32
Definition kernel.h:16
Definition dma-fence.h:70
Definition drm_connector.h:1410
Definition drm_connector.h:1065
Definition drm_connector.h:1998
Definition drm_device.h:75
Definition drm_modeset_helper_vtables.h:501
Definition drm_encoder.h:106
Definition drm_framebuffer.h:120
Definition drm_property.h:216
Definition drm_writeback.h:21
struct list_head job_queue
Definition drm_writeback.h:60
unsigned long fence_seqno
Definition drm_writeback.h:80
unsigned int fence_context
Definition drm_writeback.h:67
spinlock_t fence_lock
Definition drm_writeback.h:73
struct drm_encoder encoder
Definition drm_writeback.h:36
struct drm_property_blob * pixel_formats_blob_ptr
Definition drm_writeback.h:45
struct drm_connector base
Definition drm_writeback.h:25
char timeline_name[32]
Definition drm_writeback.h:86
spinlock_t job_lock
Definition drm_writeback.h:48
Definition drm_writeback.h:92
struct drm_writeback_connector * connector
Definition drm_writeback.h:98
struct work_struct cleanup_work
Definition drm_writeback.h:113
struct dma_fence * out_fence
Definition drm_writeback.h:135
bool prepared
Definition drm_writeback.h:105
struct drm_framebuffer * fb
Definition drm_writeback.h:128
void * priv
Definition drm_writeback.h:142
Definition list.h:17
Definition list.h:11
Definition workqueue.h:44