Accepting request 1235158 from X11:XOrg

- fixed source URL in specfile 

- fixed driver for current libva by switchting to gentoo patches
  (boo#1234858)
  * intel-hybrid-codec-driver-2.0.0-gcc10-fix.patch
  * intel-hybrid-codec-driver-2.0.0-invalid-read-fix.patch
  * intel-hybrid-codec-driver-2.0.0-nullptr-fix.patch
  * intel-hybrid-codec-driver-2.0.0-vadriverinit-fix.patch
  * intel-hybrid-codec-driver-2.0.0-x11-fix.patch
- supersedes the following patches
  * U_Update-the-dependency-to-libva-2.0.patch
  * n_libva-2.0-ABI-header-fix.patch
  * u_gcc10.patch
- raised driver version number to 2.0.0

OBS-URL: https://build.opensuse.org/request/show/1235158
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/intel-hybrid-driver?expand=0&rev=6
This commit is contained in:
Ana Guerrero 2025-01-07 19:51:57 +00:00 committed by Git OBS Bridge
commit 77224a3988
8 changed files with 107 additions and 67 deletions

View File

@ -1,55 +0,0 @@
From dfa9c8eba29573e24f73b1890f8a67f0e46e3d7b Mon Sep 17 00:00:00 2001
From: "Xiang, Haihao" <haihao.xiang@intel.com>
Date: Sat, 14 Oct 2017 07:45:07 +0800
Subject: [PATCH] Update the dependency to libva 2.0
In addition, This fixes deprecated warning caused by libva 2.0
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
---
configure.ac | 6 +-----
src/va_backend_compat.h | 8 ++++++++
2 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/configure.ac b/configure.ac
index 192c0db..6cf1431 100644
--- a/configure.ac
+++ b/configure.ac
@@ -10,8 +10,7 @@ m4_append([intel_driver_version], intel_driver_pre_version, [.pre])
])
# libva minimum version requirement
-m4_define([va_api_version], [0.38])
-m4_define([libva_package_version], [1.6.0])
+m4_define([va_api_version], [1.0.0])
# libdrm minimum version requirement
m4_define([libdrm_version], [2.4.45])
@@ -71,9 +70,6 @@ AC_SYS_LARGEFILE
AC_CHECK_LIB([m], [sin])
AC_CHECK_FUNCS([log2f])
-LIBVA_PACKAGE_VERSION=libva_package_version
-AC_SUBST(LIBVA_PACKAGE_VERSION)
-
dnl Check for recent enough DRM
LIBDRM_VERSION=libdrm_version
PKG_CHECK_MODULES([DRM], [libdrm >= $LIBDRM_VERSION])
diff --git a/src/va_backend_compat.h b/src/va_backend_compat.h
index f5c9f75..2894c90 100644
--- a/src/va_backend_compat.h
+++ b/src/va_backend_compat.h
@@ -45,4 +45,12 @@
# define VA_DRM_AUTH_CUSTOM VA_DUMMY
#endif
+#if VA_CHECK_VERSION(1,0,0)
+
+# define VAEncPackedHeaderMiscMask 0x80000000
+# define VAEncPackedHeaderH264_SEI (VAEncPackedHeaderMiscMask | 1)
+# define VAEncPackedHeaderHEVC_SEI (VAEncPackedHeaderMiscMask | 1)
+
+#endif
+
#endif /* VA_BACKEND_COMPAT_H */

View File

@ -1,5 +1,5 @@
--- intel-hybrid-driver-1.0.2.orig/src/media_drv_common.h 2020-06-09 10:21:13.982454569 +0000 --- intel-hybrid-driver/src/media_drv_common.h 2020-05-26 23:18:02.279795861 +0100
+++ intel-hybrid-driver-1.0.2/src/media_drv_common.h 2020-06-09 10:22:27.751970861 +0000 +++ intel-hybrid-driver-new/src/media_drv_common.h 2020-05-26 23:19:11.316101524 +0100
@@ -39,6 +39,6 @@ @@ -39,6 +39,6 @@
#define BRC_INIT_IGNORE_PICTURE_HEADER_SIZE 0x2000 #define BRC_INIT_IGNORE_PICTURE_HEADER_SIZE 0x2000
#define BRC_INIT_DISABLE_MBBRC 0x8000 #define BRC_INIT_DISABLE_MBBRC 0x8000

View File

@ -0,0 +1,39 @@
diff --git a/src/media_drv_gen75_render.c b/src/media_drv_gen75_render.c
index a3d60ff..51b1442 100644
--- a/src/media_drv_gen75_render.c
+++ b/src/media_drv_gen75_render.c
@@ -1453,7 +1453,7 @@ media_drv_gen75_render_init(VADriverContextP ctx)
if (IS_HASWELL (drv_ctx->drv_data.device_id)) {
memcpy(render_state->render_kernels, render_kernels_gen7_haswell,
- sizeof(render_state->render_kernels));
+ sizeof(render_kernels_gen7_haswell));
render_state->render_put_surface = gen7_render_put_surface;
render_state->render_put_subpicture = gen7_render_put_subpicture;
} else {
diff --git a/src/media_drv_gen8_render.c b/src/media_drv_gen8_render.c
index 42005ea..da349cc 100644
--- a/src/media_drv_gen8_render.c
+++ b/src/media_drv_gen8_render.c
@@ -1741,7 +1741,7 @@ media_drv_gen8_render_init(VADriverContextP ctx)
render_state->max_wm_threads = 64;
memcpy(render_state->render_kernels, render_kernels_gen8,
- sizeof(render_state->render_kernels));
+ sizeof(render_kernels_gen8));
kernel_size = 4096;
diff --git a/src/media_drv_hw_g75.c b/src/media_drv_hw_g75.c
index 57eddbd..080cd86 100644
--- a/src/media_drv_hw_g75.c
+++ b/src/media_drv_hw_g75.c
@@ -3325,7 +3325,7 @@ media_set_curbe_vp8_me (VP8_ME_CURBE_PARAMS * params)
MEDIA_CURBE_DATA_ME *cmd = (MEDIA_CURBE_DATA_ME *) params->curbe_cmd_buff;
media_drv_memcpy (cmd, sizeof (MEDIA_CURBE_DATA_ME), ME_CURBE_INIT_DATA,
- sizeof (MEDIA_CURBE_DATA_ME));
+ sizeof (ME_CURBE_INIT_DATA));
me_mode =
params->
me_16x_enabled ? (params->me_16x ? ME16x_BEFORE_ME4x : ME4x_AFTER_ME16x) :

View File

@ -0,0 +1,21 @@
diff --git a/src/vp9hdec/decode_hybrid_vp9.cpp b/src/vp9hdec/decode_hybrid_vp9.cpp
index 1baf339..7a086e2 100644
--- a/src/vp9hdec/decode_hybrid_vp9.cpp
+++ b/src/vp9hdec/decode_hybrid_vp9.cpp
@@ -3289,9 +3289,16 @@ VAStatus Intel_HybridVp9Decode_HostVldRenderCb (
// Reset padding flag of current frame and update surface dimension
surface = SURFACE(pMdfDecodeFrame->ucCurrIndex);
+ if ((surface == NULL) || (surface->private_data == NULL))
+ return VA_STATUS_ERROR_INVALID_PARAMETER;
+
pFrameSource = (INTEL_DECODE_HYBRID_VP9_MDF_FRAME_SOURCE *)(surface->private_data);
pCurrFrame = &(pFrameSource->Frame);
pFrameSource->bHasPadding = false;
+
+ if (pCurrFrame->pMdfSurface == NULL)
+ return VA_STATUS_ERROR_INVALID_PARAMETER;
+
pCurrFrame->pMdfSurface->SetSurfaceStateDimensions(
pMdfDecodeFrame->dwWidth,
pMdfDecodeFrame->dwHeight);

View File

@ -0,0 +1,13 @@
--- intel-hybrid-driver/src/media_drv_init.c
+++ intel-hybrid-driver-new/src/media_drv_init.c
@@ -2764,9 +2764,9 @@ va_driver_init (VADriverContextP ctx)
return ret;
}
-VAStatus DLL_EXPORT __vaDriverInit_0_34 (VADriverContextP ctx);
+VAStatus DLL_EXPORT VA_DRIVER_INIT_FUNC (VADriverContextP ctx);
VAStatus
-__vaDriverInit_0_34 (VADriverContextP ctx)
+VA_DRIVER_INIT_FUNC (VADriverContextP ctx)
{
VAStatus ret = VA_STATUS_ERROR_UNKNOWN;

View File

@ -18,7 +18,7 @@ index 42299b8..bbd9713 100644
+++ b/src/media_drv_output_dri.c +++ b/src/media_drv_output_dri.c
@@ -105,6 +105,15 @@ media_output_dri_init (VADriverContextP ctx) @@ -105,6 +105,15 @@ media_output_dri_init (VADriverContextP ctx)
struct dri_vtable *dri_vtable; struct dri_vtable *dri_vtable;
static const struct dso_symbol symbols[] = { static const struct dso_symbol symbols[] = {
+#if VA_CHECK_VERSION(1,0,0) +#if VA_CHECK_VERSION(1,0,0)
+ {"va_dri_get_drawable", + {"va_dri_get_drawable",
@ -38,7 +38,7 @@ index 42299b8..bbd9713 100644
{NULL,} {NULL,}
+#endif +#endif
}; };
drv_ctx->dri_output = drv_ctx->dri_output =
diff --git a/src/media_drv_output_dri.h b/src/media_drv_output_dri.h diff --git a/src/media_drv_output_dri.h b/src/media_drv_output_dri.h
index 0d6ccf0..889861c 100644 index 0d6ccf0..889861c 100644
@ -52,4 +52,3 @@ index 0d6ccf0..889861c 100644
+#define LIBVA_X11_NAME "libva-x11.so.2" +#define LIBVA_X11_NAME "libva-x11.so.2"
VOID media_output_dri_terminate (VADriverContextP ctx); VOID media_output_dri_terminate (VADriverContextP ctx);
BOOL media_output_dri_init (VADriverContextP ctx); BOOL media_output_dri_init (VADriverContextP ctx);

View File

@ -1,3 +1,24 @@
-------------------------------------------------------------------
Mon Jan 6 11:19:06 UTC 2025 - Stefan Dirsch <sndirsch@suse.com>
- fixed source URL in specfile
-------------------------------------------------------------------
Fri Jan 3 22:36:02 UTC 2025 - Stefan Dirsch <sndirsch@suse.com>
- fixed driver for current libva by switchting to gentoo patches
(boo#1234858)
* intel-hybrid-codec-driver-2.0.0-gcc10-fix.patch
* intel-hybrid-codec-driver-2.0.0-invalid-read-fix.patch
* intel-hybrid-codec-driver-2.0.0-nullptr-fix.patch
* intel-hybrid-codec-driver-2.0.0-vadriverinit-fix.patch
* intel-hybrid-codec-driver-2.0.0-x11-fix.patch
- supersedes the following patches
* U_Update-the-dependency-to-libva-2.0.patch
* n_libva-2.0-ABI-header-fix.patch
* u_gcc10.patch
- raised driver version number to 2.0.0
------------------------------------------------------------------- -------------------------------------------------------------------
Tue Jun 9 10:25:59 UTC 2020 - Stefan Dirsch <sndirsch@suse.com> Tue Jun 9 10:25:59 UTC 2020 - Stefan Dirsch <sndirsch@suse.com>

View File

@ -1,7 +1,7 @@
# #
# spec file for package intel-hybrid-driver # spec file for package intel-hybrid-driver
# #
# Copyright (c) 2020 SUSE LLC # Copyright (c) 2025 SUSE LLC
# Copyright (c) 2017 Bjørn Lie, Bryne, Norway. # Copyright (c) 2017 Bjørn Lie, Bryne, Norway.
# #
# All modifications and additions to the file contributed by third parties # All modifications and additions to the file contributed by third parties
@ -18,15 +18,17 @@
Name: intel-hybrid-driver Name: intel-hybrid-driver
Version: 1.0.2 Version: 2.0.0
Release: 0 Release: 0
Summary: VA driver for Intel G45 & HD Graphics family Summary: VA driver for Intel G45 & HD Graphics family
License: MIT License: MIT
URL: https://github.com/intel/intel-hybrid-driver URL: https://github.com/intel/intel-hybrid-driver
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz Source0: %{url}/archive/1.0.2/%{name}-1.0.2.tar.gz
Patch0: U_Update-the-dependency-to-libva-2.0.patch Patch1: intel-hybrid-codec-driver-2.0.0-gcc10-fix.patch
Patch1: n_libva-2.0-ABI-header-fix.patch Patch2: intel-hybrid-codec-driver-2.0.0-invalid-read-fix.patch
Patch2: u_gcc10.patch Patch3: intel-hybrid-codec-driver-2.0.0-nullptr-fix.patch
Patch4: intel-hybrid-codec-driver-2.0.0-vadriverinit-fix.patch
Patch5: intel-hybrid-codec-driver-2.0.0-x11-fix.patch
BuildRequires: c++_compiler BuildRequires: c++_compiler
BuildRequires: libtool BuildRequires: libtool
@ -46,7 +48,7 @@ This is the VA-API implementation for Intel G45 chipsets
and Intel HD Graphics for Intel Core processor family. and Intel HD Graphics for Intel Core processor family.
%prep %prep
%autosetup -p1 %autosetup -p1 -n %{name}-1.0.2
%build %build
NOCONFIGURE=1 ./autogen.sh NOCONFIGURE=1 ./autogen.sh