Reland "vp8 encoder: Workaround to force performance mode  encode"

This reverts commit 6163118d54d98c0a63302986a00ab48da51765e0.

Reason for revert: b/141147405#comment50, VP8 performance regressed.

Original change's description:
> Revert "vp8 encoder: Workaround to force performance mode  encode"
>
> This reverts commit 7e30d9073fa965d2e4b441e8365817d2ca7ccfb6.
>
> The original commit 7e30d was a driver level hack to trade-off between
> the quality and performance to save power.
> Now we have legit ways to handle the quality-speed/power tradeoff
> from the upper layer using the CL:
> https://chromium-review.googlesource.com/c/chromium/src/+/2544368
>
> BUG=b:141147405
> TEST=Encode a video sample with appr.tc and ensure there is no power
> consumption peek with or with out this patch.
>
> Change-Id: I4eb74435c05db56b91db89fdba89cb1901f0e368
> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/overlays/chromiumos-overlay/+/2577806
> Reviewed-by: Miguel Casas <mcasas@chromium.org>
> Reviewed-by: Hirokazu Honda <hiroh@chromium.org>
> Commit-Queue: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
> Tested-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>

Bug: b:141147405
Change-Id: Ic2adf60690f23519ea9997f62441eedd25dcaa9c
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/overlays/chromiumos-overlay/+/2596787
Reviewed-by: Miguel Casas <mcasas@chromium.org>
Commit-Queue: Miguel Casas <mcasas@chromium.org>
Tested-by: Miguel Casas <mcasas@chromium.org>
diff --git a/x11-libs/libva-intel-driver/files/vp8-encoder-Workaround-to-force-perforamce-mode-enco.patch b/x11-libs/libva-intel-driver/files/vp8-encoder-Workaround-to-force-perforamce-mode-enco.patch
new file mode 100644
index 0000000..8837d45
--- /dev/null
+++ b/x11-libs/libva-intel-driver/files/vp8-encoder-Workaround-to-force-perforamce-mode-enco.patch
@@ -0,0 +1,52 @@
+From bd4264f2c9e14869011495202894449cbf9da6cc Mon Sep 17 00:00:00 2001
+From: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+Date: Fri, 13 Sep 2019 10:27:10 -0800
+Subject: [PATCH] vp8 encoder: Workaround to force perforamce mode encode
+
+This is a tradeoff between quality and performance to
+save power. Use quality-level two as the default
+which will disable a couple of high intensity operations.
+For eg: There won't be 16xMe layer in the hierarhical motion
+estimations which should save significant number of cycles.
+Also number of pak passes are now limited to 1.
+---
+ src/i965_encoder.c | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/src/i965_encoder.c b/src/i965_encoder.c
+index 7bf20ea..127b74b 100644
+--- a/src/i965_encoder.c
++++ b/src/i965_encoder.c
+@@ -841,6 +841,10 @@ intel_encoder_check_misc_parameter(VADriverContextP ctx,
+         VAEncMiscParameterBufferQualityLevel* param_quality_level = (VAEncMiscParameterBufferQualityLevel*)pMiscParam->data;
+         encoder_context->quality_level = param_quality_level->quality_level;
+ 
++        //workaround: Force performace mode encode for vp8
++        if (profile == VAProfileVP8Version0_3)
++            encoder_context->quality_level = ENCODER_LOW_QUALITY;
++
+         if (encoder_context->quality_level == 0) {
+             switch (profile) {
+             case VAProfileH264ConstrainedBaseline:
+@@ -858,6 +862,10 @@ intel_encoder_check_misc_parameter(VADriverContextP ctx,
+                 encoder_context->quality_level = ENCODER_DEFAULT_QUALITY_HEVC;
+                 break;
+ 
++            case VAProfileVP8Version0_3:
++                encoder_context->quality_level = ENCODER_LOW_QUALITY;
++                break;
++
+             default:
+                 encoder_context->quality_level = ENCODER_DEFAULT_QUALITY;
+                 break;
+@@ -1632,6 +1640,7 @@ intel_enc_hw_context_init(VADriverContextP ctx,
+     case VAProfileVP8Version0_3:
+         encoder_context->codec = CODEC_VP8;
+         encoder_context->quality_range = ENCODER_QUALITY_RANGE;
++        encoder_context->quality_level = ENCODER_LOW_QUALITY;
+ 
+         break;
+ 
+-- 
+2.20.1
+
diff --git a/x11-libs/libva-intel-driver/libva-intel-driver-2.3.0-r10.ebuild b/x11-libs/libva-intel-driver/libva-intel-driver-2.3.0-r9.ebuild
similarity index 100%
rename from x11-libs/libva-intel-driver/libva-intel-driver-2.3.0-r10.ebuild
rename to x11-libs/libva-intel-driver/libva-intel-driver-2.3.0-r9.ebuild
diff --git a/x11-libs/libva-intel-driver/libva-intel-driver-2.3.0.ebuild b/x11-libs/libva-intel-driver/libva-intel-driver-2.3.0.ebuild
index e14bd1a..e798ae3 100644
--- a/x11-libs/libva-intel-driver/libva-intel-driver-2.3.0.ebuild
+++ b/x11-libs/libva-intel-driver/libva-intel-driver-2.3.0.ebuild
@@ -53,6 +53,7 @@
 	epatch "${FILESDIR}"/UPSTREAM-update-avc-media-kernel-for-bdw-bsw.patch
 	epatch "${FILESDIR}"/UPSTREAM-Make-vaExportSurfaceHandle-work-for-IMC3.patch
 	epatch "${FILESDIR}"/encoder-vp8-Ensure-forced_lf_adjustment-update-in-me.patch
+	epatch "${FILESDIR}"/vp8-encoder-Workaround-to-force-perforamce-mode-enco.patch
 	epatch "${FILESDIR}"/gen9_vp9_encoder-Ensure-brc-reset-irrespective-of-th.patch
 	epatch "${FILESDIR}"/0001-Remove-blitter-usage-from-driver.patch
 	epatch "${FILESDIR}"/gen9_vp9_encoder-Relax-the-compressed-frames-minimum.patch