Subversion Repositories Kolibri OS

Rev

Rev 5270 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 5270 Rev 6082
Line 33... Line 33...
33
struct drm_atomic_state * __must_check
33
struct drm_atomic_state * __must_check
34
drm_atomic_state_alloc(struct drm_device *dev);
34
drm_atomic_state_alloc(struct drm_device *dev);
35
void drm_atomic_state_clear(struct drm_atomic_state *state);
35
void drm_atomic_state_clear(struct drm_atomic_state *state);
36
void drm_atomic_state_free(struct drm_atomic_state *state);
36
void drm_atomic_state_free(struct drm_atomic_state *state);
Line -... Line 37...
-
 
37
 
-
 
38
int  __must_check
-
 
39
drm_atomic_state_init(struct drm_device *dev, struct drm_atomic_state *state);
-
 
40
void drm_atomic_state_default_clear(struct drm_atomic_state *state);
-
 
41
void drm_atomic_state_default_release(struct drm_atomic_state *state);
37
 
42
 
38
struct drm_crtc_state * __must_check
43
struct drm_crtc_state * __must_check
39
drm_atomic_get_crtc_state(struct drm_atomic_state *state,
44
drm_atomic_get_crtc_state(struct drm_atomic_state *state,
-
 
45
			  struct drm_crtc *crtc);
-
 
46
int drm_atomic_crtc_set_property(struct drm_crtc *crtc,
-
 
47
		struct drm_crtc_state *state, struct drm_property *property,
40
			  struct drm_crtc *crtc);
48
		uint64_t val);
41
struct drm_plane_state * __must_check
49
struct drm_plane_state * __must_check
42
drm_atomic_get_plane_state(struct drm_atomic_state *state,
50
drm_atomic_get_plane_state(struct drm_atomic_state *state,
-
 
51
			   struct drm_plane *plane);
-
 
52
int drm_atomic_plane_set_property(struct drm_plane *plane,
-
 
53
		struct drm_plane_state *state, struct drm_property *property,
43
			   struct drm_plane *plane);
54
		uint64_t val);
44
struct drm_connector_state * __must_check
55
struct drm_connector_state * __must_check
45
drm_atomic_get_connector_state(struct drm_atomic_state *state,
56
drm_atomic_get_connector_state(struct drm_atomic_state *state,
-
 
57
			       struct drm_connector *connector);
-
 
58
int drm_atomic_connector_set_property(struct drm_connector *connector,
-
 
59
		struct drm_connector_state *state, struct drm_property *property,
-
 
60
		uint64_t val);
-
 
61
 
-
 
62
/**
-
 
63
 * drm_atomic_get_existing_crtc_state - get crtc state, if it exists
-
 
64
 * @state: global atomic state object
-
 
65
 * @crtc: crtc to grab
-
 
66
 *
-
 
67
 * This function returns the crtc state for the given crtc, or NULL
-
 
68
 * if the crtc is not part of the global atomic state.
-
 
69
 */
-
 
70
static inline struct drm_crtc_state *
-
 
71
drm_atomic_get_existing_crtc_state(struct drm_atomic_state *state,
-
 
72
				   struct drm_crtc *crtc)
-
 
73
{
-
 
74
	return state->crtc_states[drm_crtc_index(crtc)];
-
 
75
}
-
 
76
 
-
 
77
/**
-
 
78
 * drm_atomic_get_existing_plane_state - get plane state, if it exists
-
 
79
 * @state: global atomic state object
-
 
80
 * @plane: plane to grab
-
 
81
 *
-
 
82
 * This function returns the plane state for the given plane, or NULL
-
 
83
 * if the plane is not part of the global atomic state.
-
 
84
 */
-
 
85
static inline struct drm_plane_state *
-
 
86
drm_atomic_get_existing_plane_state(struct drm_atomic_state *state,
-
 
87
				    struct drm_plane *plane)
-
 
88
{
-
 
89
	return state->plane_states[drm_plane_index(plane)];
-
 
90
}
-
 
91
 
-
 
92
/**
-
 
93
 * drm_atomic_get_existing_connector_state - get connector state, if it exists
-
 
94
 * @state: global atomic state object
-
 
95
 * @connector: connector to grab
-
 
96
 *
-
 
97
 * This function returns the connector state for the given connector,
-
 
98
 * or NULL if the connector is not part of the global atomic state.
-
 
99
 */
-
 
100
static inline struct drm_connector_state *
-
 
101
drm_atomic_get_existing_connector_state(struct drm_atomic_state *state,
-
 
102
					struct drm_connector *connector)
-
 
103
{
Line -... Line 104...
-
 
104
	int index = drm_connector_index(connector);
-
 
105
 
-
 
106
	if (index >= state->num_connector)
-
 
107
		return NULL;
-
 
108
 
-
 
109
	return state->connector_states[index];
-
 
110
}
-
 
111
 
-
 
112
int __must_check
-
 
113
drm_atomic_set_mode_for_crtc(struct drm_crtc_state *state,
-
 
114
			     struct drm_display_mode *mode);
-
 
115
int __must_check
46
			       struct drm_connector *connector);
116
drm_atomic_set_mode_prop_for_crtc(struct drm_crtc_state *state,
47
 
117
				  struct drm_property_blob *blob);
48
int __must_check
118
int __must_check
49
drm_atomic_set_crtc_for_plane(struct drm_atomic_state *state,
119
drm_atomic_set_crtc_for_plane(struct drm_plane_state *plane_state,
50
			      struct drm_plane *plane, struct drm_crtc *crtc);
120
			      struct drm_crtc *crtc);
51
void drm_atomic_set_fb_for_plane(struct drm_plane_state *plane_state,
121
void drm_atomic_set_fb_for_plane(struct drm_plane_state *plane_state,
52
				 struct drm_framebuffer *fb);
122
				 struct drm_framebuffer *fb);
53
int __must_check
123
int __must_check
54
drm_atomic_set_crtc_for_connector(struct drm_connector_state *conn_state,
124
drm_atomic_set_crtc_for_connector(struct drm_connector_state *conn_state,
55
				  struct drm_crtc *crtc);
125
				  struct drm_crtc *crtc);
56
int __must_check
126
int __must_check
-
 
127
drm_atomic_add_affected_connectors(struct drm_atomic_state *state,
-
 
128
				   struct drm_crtc *crtc);
-
 
129
int __must_check
-
 
130
drm_atomic_add_affected_planes(struct drm_atomic_state *state,
57
drm_atomic_add_affected_connectors(struct drm_atomic_state *state,
131
			       struct drm_crtc *crtc);
58
				   struct drm_crtc *crtc);
132
 
59
int
133
int
Line 60... Line 134...
60
drm_atomic_connectors_for_crtc(struct drm_atomic_state *state,
134
drm_atomic_connectors_for_crtc(struct drm_atomic_state *state,
Line -... Line 135...
-
 
135
			       struct drm_crtc *crtc);
-
 
136
 
-
 
137
void drm_atomic_legacy_backoff(struct drm_atomic_state *state);
61
			       struct drm_crtc *crtc);
138
 
62
 
139
void
63
void drm_atomic_legacy_backoff(struct drm_atomic_state *state);
140
drm_atomic_clean_old_fb(struct drm_device *dev, unsigned plane_mask, int ret);
Line -... Line 141...
-
 
141
 
-
 
142
int __must_check drm_atomic_check_only(struct drm_atomic_state *state);
-
 
143
int __must_check drm_atomic_commit(struct drm_atomic_state *state);
-
 
144
int __must_check drm_atomic_async_commit(struct drm_atomic_state *state);
-
 
145
 
-
 
146
#define for_each_connector_in_state(state, connector, connector_state, __i) \
-
 
147
	for ((__i) = 0;							\
-
 
148
	     (__i) < (state)->num_connector &&				\
-
 
149
	     ((connector) = (state)->connectors[__i],			\
-
 
150
	     (connector_state) = (state)->connector_states[__i], 1); 	\
-
 
151
	     (__i)++)							\
-
 
152
		if (connector)
-
 
153
 
-
 
154
#define for_each_crtc_in_state(state, crtc, crtc_state, __i)	\
-
 
155
	for ((__i) = 0;						\
-
 
156
	     (__i) < (state)->dev->mode_config.num_crtc &&	\
-
 
157
	     ((crtc) = (state)->crtcs[__i],			\
-
 
158
	     (crtc_state) = (state)->crtc_states[__i], 1);	\
-
 
159
	     (__i)++)						\
-
 
160
		if (crtc_state)
-
 
161
 
-
 
162
#define for_each_plane_in_state(state, plane, plane_state, __i)		\
-
 
163
	for ((__i) = 0;							\
-
 
164
	     (__i) < (state)->dev->mode_config.num_total_plane &&	\
-
 
165
	     ((plane) = (state)->planes[__i],				\
-
 
166
	     (plane_state) = (state)->plane_states[__i], 1);		\
-
 
167
	     (__i)++)							\
-
 
168
		if (plane_state)
-
 
169
static inline bool
-
 
170
drm_atomic_crtc_needs_modeset(struct drm_crtc_state *state)
-
 
171
{
64
 
172
	return state->mode_changed || state->active_changed ||