From 7c6de6df3eb06f496d5f9debd4c92f6470eac224 Mon Sep 17 00:00:00 2001 From: Carl Zhang Date: Thu, 14 May 2020 12:15:16 -0400 Subject: add attributes for context priority setting application could set priority for each VAContext then HW will check the priority for the tasks related with the VAContext Signed-off-by: Carl Zhang --- va/va.h | 16 ++++++++++++++++ va/va_str.c | 1 + 2 files changed, 17 insertions(+) diff --git a/va/va.h b/va/va.h index 4c67546..e610a07 100644 --- a/va/va.h +++ b/va/va.h @@ -783,6 +783,10 @@ typedef enum * implementation, multiple frames encode/decode can improve HW concurrency */ VAConfigAttribMultipleFrame = 40, + /** \brief priority setting for the context. Read-Write + * attribute value is \c VAConfigAttribValContextPriority + */ + VAConfigAttribContextPriority = 41, /**@}*/ VAConfigAttribTypeMax } VAConfigAttribType; @@ -1141,6 +1145,18 @@ typedef union _VAConfigAttribValMultipleFrame { uint32_t value; }VAConfigAttribValMultipleFrame; +/** brief Attribute value VAConfigAttribValContestPriority */ +typedef union _VAConfigAttribValContextPriority{ + struct{ + /** \brief the priority , for the Query operation (read) it represents highest priority + * for the set operation (write), value should be [0~highest priority] , 0 is lowest priority*/ + uint32_t priority :16; + /** \brief reserved bits for future, must be zero*/ + uint32_t reserved :16; + }bits; + uint32_t value; +}VAConfigAttribValContextPriority; + /** @name Attribute values for VAConfigAttribProcessingRate. */ /**@{*/ /** \brief Driver does not support processing rate report */ diff --git a/va/va_str.c b/va/va_str.c index 716e20d..4b631ca 100644 --- a/va/va_str.c +++ b/va/va_str.c @@ -129,6 +129,7 @@ const char *vaConfigAttribTypeStr(VAConfigAttribType configAttribType) TOSTR(VAConfigAttribMaxFrameSize); TOSTR(VAConfigAttribPredictionDirection); TOSTR(VAConfigAttribMultipleFrame); + TOSTR(VAConfigAttribContextPriority); case VAConfigAttribTypeMax: break; } return ""; -- cgit v1.2.1