mirror of https://gitee.com/openkylin/linux.git
drm/core: Add drm_encoder_index.
This is useful for adding encoder_mask in crtc_state. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Link: http://patchwork.freedesktop.org/patch/msgid/1452160762-30487-2-git-send-email-maarten.lankhorst@linux.intel.com
This commit is contained in:
parent
2dbf0d9097
commit
47d7777f99
|
@ -1160,6 +1160,29 @@ int drm_encoder_init(struct drm_device *dev,
|
|||
}
|
||||
EXPORT_SYMBOL(drm_encoder_init);
|
||||
|
||||
/**
|
||||
* drm_encoder_index - find the index of a registered encoder
|
||||
* @encoder: encoder to find index for
|
||||
*
|
||||
* Given a registered encoder, return the index of that encoder within a DRM
|
||||
* device's list of encoders.
|
||||
*/
|
||||
unsigned int drm_encoder_index(struct drm_encoder *encoder)
|
||||
{
|
||||
unsigned int index = 0;
|
||||
struct drm_encoder *tmp;
|
||||
|
||||
drm_for_each_encoder(tmp, encoder->dev) {
|
||||
if (tmp == encoder)
|
||||
return index;
|
||||
|
||||
index++;
|
||||
}
|
||||
|
||||
BUG();
|
||||
}
|
||||
EXPORT_SYMBOL(drm_encoder_index);
|
||||
|
||||
/**
|
||||
* drm_encoder_cleanup - cleans up an initialised encoder
|
||||
* @encoder: encoder to cleanup
|
||||
|
|
|
@ -2225,6 +2225,7 @@ int drm_encoder_init(struct drm_device *dev,
|
|||
struct drm_encoder *encoder,
|
||||
const struct drm_encoder_funcs *funcs,
|
||||
int encoder_type, const char *name, ...);
|
||||
extern unsigned int drm_encoder_index(struct drm_encoder *encoder);
|
||||
|
||||
/**
|
||||
* drm_encoder_crtc_ok - can a given crtc drive a given encoder?
|
||||
|
|
Loading…
Reference in New Issue