diff options
Diffstat (limited to 'recipes-multimedia/onevpl/onevpl/0001-samples-Fixed-tile-modifier-issue-for-NV12-format.patch')
-rw-r--r-- | recipes-multimedia/onevpl/onevpl/0001-samples-Fixed-tile-modifier-issue-for-NV12-format.patch | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/recipes-multimedia/onevpl/onevpl/0001-samples-Fixed-tile-modifier-issue-for-NV12-format.patch b/recipes-multimedia/onevpl/onevpl/0001-samples-Fixed-tile-modifier-issue-for-NV12-format.patch new file mode 100644 index 00000000..c798e3f1 --- /dev/null +++ b/recipes-multimedia/onevpl/onevpl/0001-samples-Fixed-tile-modifier-issue-for-NV12-format.patch | |||
@@ -0,0 +1,51 @@ | |||
1 | From 15cc366b66b625b0b2613a4365e7777563325a94 Mon Sep 17 00:00:00 2001 | ||
2 | From: "Yew, Chang Ching" <chang.ching.yew@intel.com> | ||
3 | Date: Wed, 25 Aug 2021 11:20:30 +0000 | ||
4 | Subject: [PATCH 2/2] samples: Fixed tile modifier issue for NV12 format | ||
5 | |||
6 | If we are using I915_FORMAT_MOD_Y_TILED which is needed for | ||
7 | NV12 format then modifiers need to be enabled which can be passed | ||
8 | as flags argument to ioctl. | ||
9 | |||
10 | Upstream-Status: Submitted | ||
11 | innersource PR #221 | ||
12 | |||
13 | Signed-off-by: Sodhi, Vunny <vunny.sodhi@intel.com> | ||
14 | Signed-off-by: Yew, Chang Ching <chang.ching.yew@intel.com> | ||
15 | --- | ||
16 | tools/legacy/sample_common/src/vaapi_utils_drm.cpp | 5 +++-- | ||
17 | 1 file changed, 3 insertions(+), 2 deletions(-) | ||
18 | |||
19 | diff --git a/tools/legacy/sample_common/src/vaapi_utils_drm.cpp b/tools/legacy/sample_common/src/vaapi_utils_drm.cpp | ||
20 | index cf8d7ba7..3df3bb8a 100644 | ||
21 | --- a/tools/legacy/sample_common/src/vaapi_utils_drm.cpp | ||
22 | +++ b/tools/legacy/sample_common/src/vaapi_utils_drm.cpp | ||
23 | @@ -405,7 +405,7 @@ void* drmRenderer::acquire(mfxMemId mid) { | ||
24 | if (ret) | ||
25 | return NULL; | ||
26 | |||
27 | - uint32_t handles[4], pitches[4], offsets[4], pixel_format; | ||
28 | + uint32_t handles[4], pitches[4], offsets[4], pixel_format, flags = 0; | ||
29 | uint64_t modifiers[4]; | ||
30 | |||
31 | memset(&handles, 0, sizeof(handles)); | ||
32 | @@ -435,6 +435,7 @@ void* drmRenderer::acquire(mfxMemId mid) { | ||
33 | pitches[1] = vmid->m_image.pitches[1]; | ||
34 | offsets[1] = vmid->m_image.offsets[1]; | ||
35 | modifiers[0] = modifiers[1] = I915_FORMAT_MOD_Y_TILED; | ||
36 | + flags = 2; // DRM_MODE_FB_MODIFIERS (1<<1) /* enables ->modifer[] | ||
37 | } | ||
38 | else { | ||
39 | pixel_format = DRM_FORMAT_XRGB8888; | ||
40 | @@ -449,7 +450,7 @@ void* drmRenderer::acquire(mfxMemId mid) { | ||
41 | offsets, | ||
42 | modifiers, | ||
43 | &fbhandle, | ||
44 | - 0); | ||
45 | + flags); | ||
46 | |||
47 | if (ret) | ||
48 | return NULL; | ||
49 | -- | ||
50 | 2.31.1 | ||
51 | |||