diff options
author | Carl Zhang <carl.zhang@intel.com> | 2019-12-10 10:50:25 -0500 |
---|---|---|
committer | XinfengZhang <carl.zhang@intel.com> | 2019-12-25 14:31:12 +0800 |
commit | b4d0af7f43f0ef2d51f070c75429c0d6acca663b (patch) | |
tree | 942712839785dc6a344521d9392187f72c08703d /va/wayland | |
parent | fbd16a1604b1a7a8e4d0ea20d500cfef43b63a3d (diff) | |
download | libva-b4d0af7f43f0ef2d51f070c75429c0d6acca663b.tar.gz |
enable driver candidate select fucntion for DRM
add multiple backend driver support part 3
enable vaGetDriverNameByIndex for DRM
add comments for the implementation
mv authenticate operation into vaGetNumCandidates function
from vaGetDriverName.
Signed-off-by: Carl Zhang <carl.zhang@intel.com>
Diffstat (limited to 'va/wayland')
-rw-r--r-- | va/wayland/va_wayland_drm.c | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/va/wayland/va_wayland_drm.c b/va/wayland/va_wayland_drm.c index 4cd3f6c..aebddcc 100644 --- a/va/wayland/va_wayland_drm.c +++ b/va/wayland/va_wayland_drm.c @@ -117,6 +117,29 @@ static const struct wl_drm_listener drm_listener = { }; static VAStatus +va_DisplayContextGetNumCandidates( + VADisplayContextP pDisplayContext, + int *candidate_index +) +{ + VADriverContextP const ctx = pDisplayContext->pDriverContext; + + return VA_DRM_GetNumCandidates(ctx, candidate_index); +} + +static VAStatus +va_DisplayContextGetDriverNameByIndex( + VADisplayContextP pDisplayContext, + char **driver_name_ptr, + int candidate_index +) +{ + VADriverContextP const ctx = pDisplayContext->pDriverContext; + + return VA_DRM_GetDriverName(ctx, driver_name_ptr, candidate_index); +} + +static VAStatus va_DisplayContextGetDriverName( VADisplayContextP pDisplayContext, char **driver_name_ptr @@ -124,7 +147,7 @@ va_DisplayContextGetDriverName( { VADriverContextP const ctx = pDisplayContext->pDriverContext; - return VA_DRM_GetDriverName(ctx, driver_name_ptr); + return VA_DRM_GetDriverName(ctx, driver_name_ptr, 0); } void @@ -237,6 +260,8 @@ va_wayland_drm_create(VADisplayContextP pDisplayContext) wl_drm_ctx->is_authenticated = 0; pDisplayContext->opaque = wl_drm_ctx; pDisplayContext->vaGetDriverName = va_DisplayContextGetDriverName; + pDisplayContext->vaGetNumCandidates = va_DisplayContextGetNumCandidates; + pDisplayContext->vaGetDriverNameByIndex = va_DisplayContextGetDriverNameByIndex; drm_state = calloc(1, sizeof(struct drm_state)); if (!drm_state) { |