diff options
author | Russell King <rmk@armlinux.org.uk> | 2017-02-24 23:50:06 +0000 |
---|---|---|
committer | Russell King <rmk@armlinux.org.uk> | 2017-02-25 17:16:13 +0000 |
commit | c9038ea414b01c4e426599029701526793fd2fe3 (patch) | |
tree | 13e6aaa2bbc7fd8b9c00137f1d5f4cb99b51f29f /src | |
parent | 3414df521507838645d720e6fb67036381ae5aae (diff) |
src: Xv: pull out property initialisation
Pull out the property initialisation code from armada_drm_XvInit() to
reduce indentation.
Signed-off-by: Russell King <rmk@armlinux.org.uk>
Diffstat (limited to 'src')
-rw-r--r-- | src/armada_drm_xv.c | 32 |
1 files changed, 19 insertions, 13 deletions
diff --git a/src/armada_drm_xv.c b/src/armada_drm_xv.c index 6a51e74..2ae231f 100644 --- a/src/armada_drm_xv.c +++ b/src/armada_drm_xv.c @@ -1080,6 +1080,23 @@ static struct drm_armada_bo *armada_drm_import_accel_name(ScrnInfoPtr pScrn, return bo; } +static void armada_drm_property_setup(struct drm_xv *drmxv, + drmModePropertyPtr prop, uint64_t value) +{ + unsigned int i; + + for (i = 0; i < NR_DRM_PROPS; i++) { + if (drmxv->props[i].prop_id) + continue; + + if (strcmp(prop->name, armada_drm_property_names[i]) == 0) { + drmxv->props[i].prop_id = prop->prop_id; + drmxv->props[i].value = value; + break; + } + } +} + Bool armada_drm_XvInit(ScrnInfoPtr pScrn) { ScreenPtr scrn = screenInfo.screens[pScrn->scrnIndex]; @@ -1139,24 +1156,13 @@ Bool armada_drm_XvInit(ScrnInfoPtr pScrn) for (j = 0; j < props->count_props; j++) { drmModePropertyPtr prop; - unsigned k; prop = drmModeGetProperty(drmxv->fd, props->props[j]); if (!prop) continue; - for (k = 0; k < NR_DRM_PROPS; k++) { - const char *name = armada_drm_property_names[k]; - if (drmxv->props[k].prop_id) - continue; - - if (strcmp(prop->name, name) == 0) { - drmxv->props[k].prop_id = prop->prop_id; - drmxv->props[k].value = props->prop_values[j]; - break; - } - } - + armada_drm_property_setup(drmxv, prop, + props->prop_values[j]); drmModeFreeProperty(prop); } drmModeFreeObjectProperties(props); |