drm/atomic: Add for_each_{connector,crtc,plane}_in_state helper macros
This saves some typing whenever a iteration over all the connector, crtc or plane states in the atomic state is written, which happens quite often. Cc: dri-devel@lists.freedesktop.org Signed-off-by: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:

committed by
Daniel Vetter

parent
0578be680c
commit
df63b9994e
@@ -75,4 +75,28 @@ int __must_check drm_atomic_check_only(struct drm_atomic_state *state);
|
||||
int __must_check drm_atomic_commit(struct drm_atomic_state *state);
|
||||
int __must_check drm_atomic_async_commit(struct drm_atomic_state *state);
|
||||
|
||||
#define for_each_connector_in_state(state, connector, connector_state, __i) \
|
||||
for ((__i) = 0; \
|
||||
(connector) = (state)->connectors[__i], \
|
||||
(connector_state) = (state)->connector_states[__i], \
|
||||
(__i) < (state)->num_connector; \
|
||||
(__i)++) \
|
||||
if (connector)
|
||||
|
||||
#define for_each_crtc_in_state(state, crtc, crtc_state, __i) \
|
||||
for ((__i) = 0; \
|
||||
(crtc) = (state)->crtcs[__i], \
|
||||
(crtc_state) = (state)->crtc_states[__i], \
|
||||
(__i) < (state)->dev->mode_config.num_crtc; \
|
||||
(__i)++) \
|
||||
if (crtc_state)
|
||||
|
||||
#define for_each_plane_in_state(state, plane, plane_state, __i) \
|
||||
for ((__i) = 0; \
|
||||
(plane) = (state)->planes[__i], \
|
||||
(plane_state) = (state)->plane_states[__i], \
|
||||
(__i) < (state)->dev->mode_config.num_total_plane; \
|
||||
(__i)++) \
|
||||
if (plane_state)
|
||||
|
||||
#endif /* DRM_ATOMIC_H_ */
|
||||
|
Reference in New Issue
Block a user