[Mesa-dev] [PATCH] st/va: enable vbr rate control for vaapi encode

2016-09-06 Thread boyuan.zhang
From: Boyuan Zhang This patch enables variable bit-rate for vaapi encoding. According to va.h, target bit-rate equals to maximum bit-rate multiplies by target_percentage. Signed-off-by: Boyuan Zhang --- src/gallium/state_trackers/va/config.c | 2 +- src/gallium/state_trackers/va/picture.c | 2

[Mesa-dev] [PATCH] st/va: force to flush the last p frame in idr period

2016-10-17 Thread boyuan.zhang
From: Boyuan Zhang During dual instance encoding submission, if the second encode task and first encode task have no reference dependency, e.g. p following with idr-frame, there is a chance the second task will use for its reconstructed picture buffer the same buffer used by first task for its re

[Mesa-dev] [PATCH] st/va: disable cabac for h264 baseline profile

2016-10-17 Thread boyuan.zhang
From: Boyuan Zhang cabac is only supported in the h264 main and higher profiles Signed-off-by: Boyuan Zhang --- src/gallium/state_trackers/va/picture.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/gallium/state_trackers/va/picture.c b/src/gallium/state_trackers/va/picture.c index ea

[Mesa-dev] [PATCH 2/2] st/va: fix gop size for rate control

2016-11-10 Thread boyuan.zhang
From: Boyuan Zhang The gop_size in rate control is the budget window for internal rate control calculation, and shouldn't always equal to idr period. Define a coefficient to let budget window contains a number of idr period for proper rate control calculation. Adjust the number of i/p frame rema

[Mesa-dev] [PATCH 1/2] st/va: force to submit two consecutive single jobs

2016-11-10 Thread boyuan.zhang
From: Boyuan Zhang When using dual instance and rate control, driver needs to submit jobs either in dual submissions or 2 consecutive single submissions to keep the pattern constant for rate control Signed-off-by: Boyuan Zhang --- src/gallium/state_trackers/va/picture.c| 16 +++

[Mesa-dev] [PATCH 1/2] st/va: force to submit two consecutive single jobs

2016-11-11 Thread boyuan.zhang
From: Boyuan Zhang When using dual instance and rate control, driver needs to submit jobs either in dual submissions or 2 consecutive single submissions to keep the pattern constant for rate control Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=98005 Signed-off-by: Boyuan Zhang --- src/

[Mesa-dev] [PATCH 2/2] st/va: fix gop size for rate control

2016-11-11 Thread boyuan.zhang
From: Boyuan Zhang The gop_size in rate control is the budget window for internal rate control calculation, and shouldn't always equal to idr period. Define a coefficient to let budget window contains a number of idr period for proper rate control calculation. Adjust the number of i/p frame rema

[Mesa-dev] [PATCH 2/2] st/va: fix gop size for rate control

2016-11-18 Thread boyuan.zhang
From: Boyuan Zhang The gop_size in rate control is the budget window for internal rate control calculation, and shouldn't always equal to idr period. Define a coefficient to let budget window contains a number of idr period for proper rate control calculation. Adjust the number of i/p frame rema

[Mesa-dev] [PATCH 1/2] st/va: force to submit two consecutive single jobs

2016-11-18 Thread boyuan.zhang
From: Boyuan Zhang When using dual instance and rate control, driver needs to submit jobs either in dual submissions or 2 consecutive single submissions to keep the pattern constant for rate control Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=98005 Signed-off-by: Boyuan Zhang --- src/

[Mesa-dev] [PATCH 1/2] st/va: force to submit two consecutive single jobs

2016-11-21 Thread boyuan.zhang
From: Boyuan Zhang The gop_size in rate control is the budget window for internal rate control calculation, and shouldn't always equal to idr period. Define a coefficient to let budget window contains a number of idr period for proper rate control calculation. Adjust the number of i/p frame remai

[Mesa-dev] [PATCH 2/2] st/va: fix gop size for rate control

2016-11-21 Thread boyuan.zhang
From: Boyuan Zhang The gop_size in rate control is the budget window for internal rate control calculation, and shouldn't always equal to idr period. Define a coefficient to let budget window contains a number of idr period for proper rate control calculation. Adjust the number of i/p frame remai

[Mesa-dev] [PATCH 2/2] st/va: fix gop size for rate control

2016-11-24 Thread boyuan.zhang
From: Boyuan Zhang The gop_size in rate control is the budget window for internal rate control calculation, and shouldn't always equal to idr period. Define a coefficient to let budget window contains a number of idr period for proper rate control calculation. Adjust the number of i/p frame remai

[Mesa-dev] [PATCH 1/2] st/va: force to submit two consecutive single jobs

2016-11-24 Thread boyuan.zhang
From: Boyuan Zhang The gop_size in rate control is the budget window for internal rate control calculation, and shouldn't always equal to idr period. Define a coefficient to let budget window contains a number of idr period for proper rate control calculation. Adjust the number of i/p frame remai

[Mesa-dev] [PATCH 2/2] st/va: fix gop size for rate control

2016-11-29 Thread boyuan.zhang
From: Boyuan Zhang The gop_size in rate control is the budget window for internal rate control calculation, and shouldn't always equal to idr period. Define a coefficient to let budget window contains a number of idr period for proper rate control calculation. Adjust the number of i/p frame remai

[Mesa-dev] [PATCH 1/2] st/va: force to submit two consecutive single jobs

2016-11-29 Thread boyuan.zhang
From: Boyuan Zhang The gop_size in rate control is the budget window for internal rate control calculation, and shouldn't always equal to idr period. Define a coefficient to let budget window contains a number of idr period for proper rate control calculation. Adjust the number of i/p frame remai

[Mesa-dev] [PATCH 4/4] st/va: add h264 constrained baseline profile

2016-12-20 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/state_trackers/va/va_private.h | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gallium/state_trackers/va/va_private.h b/src/gallium/state_trackers/va/va_private.h index e9ccdbf..08e52fd 100644 --- a/src/gallium/state_tracke

[Mesa-dev] [PATCH 2/4] radeon/uvd: add h264 constrained baseline support

2016-12-20 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_uvd.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gallium/drivers/radeon/radeon_uvd.c b/src/gallium/drivers/radeon/radeon_uvd.c index d5d654a..228c20d 100644 --- a/src/gallium/drivers/radeon/radeon

[Mesa-dev] [PATCH 1/4] vl: add h264 constrained baseline profile

2016-12-20 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/auxiliary/util/u_video.h | 1 + src/gallium/include/pipe/p_video_enums.h | 1 + 2 files changed, 2 insertions(+) diff --git a/src/gallium/auxiliary/util/u_video.h b/src/gallium/auxiliary/util/u_video.h index 7e743de..88af8f6 1

[Mesa-dev] [PATCH 3/4] st/vdpau: add h264 constrained baseline profile

2016-12-20 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/state_trackers/vdpau/vdpau_private.h | 4 1 file changed, 4 insertions(+) diff --git a/src/gallium/state_trackers/vdpau/vdpau_private.h b/src/gallium/state_trackers/vdpau/vdpau_private.h index bcd4bb1..2780265 100644 --- a/sr

[Mesa-dev] [PATCH 15/18] radeon/vcn: add encode get feedback

2017-11-07 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_enc.c | 15 ++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeon/radeon_vcn_enc.c b/src/gallium/drivers/radeon/radeon_vcn_enc.c index 0cb8e87..ab68039 10

[Mesa-dev] [PATCH 04/18] winsys/amdgpu: add vcn enc cs support

2017-11-07 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/winsys/amdgpu/drm/amdgpu_cs.c | 11 ++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/gallium/winsys/amdgpu/drm/amdgpu_cs.c b/src/gallium/winsys/amdgpu/drm/amdgpu_cs.c index 0b47af9..75e1891 100644 --- a

[Mesa-dev] [PATCH 12/18] radeon/vcn: add encode bitstream

2017-11-07 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_enc.c | 14 +- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeon/radeon_vcn_enc.c b/src/gallium/drivers/radeon/radeon_vcn_enc.c index 51cef7f..053cf0e 100

[Mesa-dev] [PATCH 18/18] radeon/video: enable encode support for raven

2017-11-07 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_video.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeon/radeon_video.c b/src/gallium/drivers/radeon/radeon_video.c index ea76ca1..4edd0a4 100644 --- a/src/galli

[Mesa-dev] [PATCH 13/18] radeon/vcn: add encode end frame

2017-11-07 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_enc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeon/radeon_vcn_enc.c b/src/gallium/drivers/radeon/radeon_vcn_enc.c index 053cf0e..a21deb1 100644 --- a/src

[Mesa-dev] [PATCH 11/18] radeon/vcn: add encode begin frame

2017-11-07 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_enc.c | 23 ++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeon/radeon_vcn_enc.c b/src/gallium/drivers/radeon/radeon_vcn_enc.c index 437c2fc..51

[Mesa-dev] [PATCH 08/18] radeon/vcn: add ib implementations

2017-11-07 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_enc_1_2.c | 292 ++-- 1 file changed, 268 insertions(+), 24 deletions(-) diff --git a/src/gallium/drivers/radeon/radeon_vcn_enc_1_2.c b/src/gallium/drivers/radeon/radeon_vcn_enc_1_2.c

[Mesa-dev] [PATCH 05/18] vl: add poc type

2017-11-07 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/include/pipe/p_video_state.h | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gallium/include/pipe/p_video_state.h b/src/gallium/include/pipe/p_video_state.h index abd5d36..1d57165 100644 --- a/src/gallium/include/pipe/p_vid

[Mesa-dev] [PATCH 06/18] st/va: implement poc type

2017-11-07 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/state_trackers/va/picture.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gallium/state_trackers/va/picture.c b/src/gallium/state_trackers/va/picture.c index 7427b98..55ca16e 100644 --- a/src/gallium/state_trackers/va/pic

[Mesa-dev] [PATCH 17/18] radeonsi: enable vcn encode

2017-11-07 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeonsi/si_uvd.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeonsi/si_uvd.c b/src/gallium/drivers/radeonsi/si_uvd.c index 2fc5e30..09fdb23 100644 --- a/src/gallium/drivers/

[Mesa-dev] [PATCH 16/18] radeon/vcn: add create encoder

2017-11-07 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_enc.c | 82 - 1 file changed, 81 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeon/radeon_vcn_enc.c b/src/gallium/drivers/radeon/radeon_vcn_enc.c index ab680

[Mesa-dev] [PATCH 09/18] radeon/vcn: add encode header algorithms

2017-11-07 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_enc.h | 6 ++ src/gallium/drivers/radeon/radeon_vcn_enc_1_2.c | 121 2 files changed, 127 insertions(+) diff --git a/src/gallium/drivers/radeon/radeon_vcn_enc.h b/src/galliu

[Mesa-dev] [PATCH 01/18] radeon/vcn: add vcn encode interface

2017-11-07 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_enc.h | 325 1 file changed, 325 insertions(+) create mode 100644 src/gallium/drivers/radeon/radeon_vcn_enc.h diff --git a/src/gallium/drivers/radeon/radeon_vcn_enc.h b/src/g

[Mesa-dev] [PATCH 03/18] radeon/common: add vcn enc ip info query

2017-11-07 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/amd/common/ac_gpu_info.c | 10 +- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/amd/common/ac_gpu_info.c b/src/amd/common/ac_gpu_info.c index 2e56012..b0c0a08 100644 --- a/src/amd/common/ac_gpu_info.c +++ b/src/am

[Mesa-dev] [PATCH 02/18] radeon/winsys: add vcn enc ring type

2017-11-07 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_winsys.h | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gallium/drivers/radeon/radeon_winsys.h b/src/gallium/drivers/radeon/radeon_winsys.h index 2d3f646..a14e6e3 100644 --- a/src/gallium/drivers/rade

[Mesa-dev] [PATCH 07/18] radeon/vcn: add common encode part

2017-11-07 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/Makefile.sources | 3 + src/gallium/drivers/radeon/radeon_vcn_enc.c | 166 + src/gallium/drivers/radeon/radeon_vcn_enc.h | 82 src/gallium/drivers/radeon/radeon_vcn_enc_1_2.c |

[Mesa-dev] [PATCH 14/18] radeon/vcn: add encode destroy

2017-11-07 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_enc.c | 16 +++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeon/radeon_vcn_enc.c b/src/gallium/drivers/radeon/radeon_vcn_enc.c index a21deb1..0cb8e87 1

[Mesa-dev] [PATCH 10/18] radeon/vcn: add encode header implementations

2017-11-07 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_enc_1_2.c | 234 1 file changed, 234 insertions(+) diff --git a/src/gallium/drivers/radeon/radeon_vcn_enc_1_2.c b/src/gallium/drivers/radeon/radeon_vcn_enc_1_2.c index 5170c67..c6

[Mesa-dev] [PATCH 03/18] radeon/common: add vcn enc ip info query

2017-11-08 Thread boyuan.zhang
From: Boyuan Zhang New ip info query is needed for vcn encode Signed-off-by: Boyuan Zhang --- src/amd/common/ac_gpu_info.c | 10 +- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/amd/common/ac_gpu_info.c b/src/amd/common/ac_gpu_info.c index 2e56012..1962c96 100644 ---

[Mesa-dev] [PATCH 02/18] radeon/winsys: add vcn enc ring type

2017-11-08 Thread boyuan.zhang
From: Boyuan Zhang New ring type is needed for vcn encode Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_winsys.h | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gallium/drivers/radeon/radeon_winsys.h b/src/gallium/drivers/radeon/radeon_winsys.h index 2d3f646..a14e6

[Mesa-dev] [PATCH 05/18] vl: add poc type

2017-11-08 Thread boyuan.zhang
From: Boyuan Zhang Different from vce encoding, vcn encoding requires driver side to encode bitstream header, such as pps, sps and slice header. pic_order_cnt_type is a required variable when encoding both sps and slice header, therefore we need to add this new variable here, and hold the value p

[Mesa-dev] [PATCH 06/18] st/va: implement poc type

2017-11-08 Thread boyuan.zhang
From: Boyuan Zhang pic_order_cnt_type is a required variable when encoding both sps and slice header, therefore we need to get this value from st, e.g. vaapi interface, and then pass it to radeon driver for encoding headers. Signed-off-by: Boyuan Zhang --- src/gallium/state_trackers/va/picture

[Mesa-dev] [PATCH 04/18] winsys/amdgpu: add vcn enc cs support

2017-11-08 Thread boyuan.zhang
From: Boyuan Zhang New cs support is needed for vcn encode Signed-off-by: Boyuan Zhang --- src/gallium/winsys/amdgpu/drm/amdgpu_cs.c | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/gallium/winsys/amdgpu/drm/amdgpu_cs.c b/src/gallium/winsys/amdgpu/drm/amdgpu_cs.c

[Mesa-dev] [PATCH 01/18] radeon/vcn: add vcn encode interface

2017-11-08 Thread boyuan.zhang
From: Boyuan Zhang Add a new header file for vcn encode interface Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_enc.h | 325 1 file changed, 325 insertions(+) create mode 100644 src/gallium/drivers/radeon/radeon_vcn_enc.h diff --git a/src/

[Mesa-dev] [PATCH 07/18] radeon/vcn: add common encode part

2017-11-08 Thread boyuan.zhang
From: Boyuan Zhang Add a skeleton pipe video interface and encode ib interface for video encode on vcn hardware. Add function defines and structures for vcn encode. Update Makefile.sources and meson.build with newly added files. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/Makefi

[Mesa-dev] [PATCH 09/18] radeon/vcn: add encode header algorithms

2017-11-08 Thread boyuan.zhang
From: Boyuan Zhang Since bitstream headers, e.g. sps, pps, slice, are encoded in driver side, we need to add corresponding algorithms that required to generate those headers. According to h.264 specs, signed/unsigned interger Exp-Golomb-coded syntax element with left bit first (code_se and code_u

[Mesa-dev] [PATCH 13/18] radeon/vcn: add encode end frame

2017-11-08 Thread boyuan.zhang
From: Boyuan Zhang Add implementation for end_frame interface for vcn encode. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_enc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeon/radeon_vcn_enc.c b/src/gallium/drivers/rad

[Mesa-dev] [PATCH 10/18] radeon/vcn: add encode header implementations

2017-11-08 Thread boyuan.zhang
From: Boyuan Zhang Implement encoding of sps, pps, and silce headers using the newly added h.264 header coding descriptors functions based on h.264 specs. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_enc_1_2.c | 234 1 file changed, 234 inserti

[Mesa-dev] [PATCH 14/18] radeon/vcn: add encode destroy

2017-11-08 Thread boyuan.zhang
From: Boyuan Zhang Add implementation for destroy interface for vcn encode. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_enc.c | 16 +++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeon/radeon_vcn_enc.c b/src/galliu

[Mesa-dev] [PATCH 12/18] radeon/vcn: add encode bitstream

2017-11-08 Thread boyuan.zhang
From: Boyuan Zhang Add implementation for encode_bitstream interface for vcn encode. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_enc.c | 14 +- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeon/radeon_vcn_enc.c b/src

[Mesa-dev] [PATCH 16/18] radeon/vcn: add create encoder

2017-11-08 Thread boyuan.zhang
From: Boyuan Zhang Add implementation for create_encoder interface for vcn encode. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_enc.c | 82 - 1 file changed, 81 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeon/radeon_vcn

[Mesa-dev] [PATCH 17/18] radeonsi: enable vcn encode

2017-11-08 Thread boyuan.zhang
From: Boyuan Zhang Enable vcn encode by creating radeon_encoder for vcn. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeonsi/si_uvd.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeonsi/si_uvd.c b/src/gallium/drivers/radeonsi/si_uvd.c i

[Mesa-dev] [PATCH 15/18] radeon/vcn: add encode get feedback

2017-11-08 Thread boyuan.zhang
From: Boyuan Zhang Add implementation for get_feedback interface for vcn encode. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_enc.c | 15 ++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeon/radeon_vcn_enc.c b/src/ga

[Mesa-dev] [PATCH 11/18] radeon/vcn: add encode begin frame

2017-11-08 Thread boyuan.zhang
From: Boyuan Zhang Add implementation for begin_frame interface for vcn encode. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_enc.c | 23 ++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeon/radeon_vcn_enc.c b

[Mesa-dev] [PATCH 18/18] radeon/video: enable encode support for raven

2017-11-08 Thread boyuan.zhang
From: Boyuan Zhang Enable h.264 encode for vcn hardware (raven) Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_video.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeon/radeon_video.c b/src/gallium/drivers/radeon/radeon_video.c

[Mesa-dev] [PATCH 08/18] radeon/vcn: add ib implementations

2017-11-08 Thread boyuan.zhang
From: Boyuan Zhang Implement required ibs and command buffer submission interfaces for vcn encode Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_enc_1_2.c | 292 ++-- 1 file changed, 268 insertions(+), 24 deletions(-) diff --git a/src/gallium/drivers

[Mesa-dev] [PATCH] radeon/vce: support all firmwares with major ver 53

2017-07-21 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vce.c | 25 + 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/src/gallium/drivers/radeon/radeon_vce.c b/src/gallium/drivers/radeon/radeon_vce.c index 70c1e60..b97909f 100

[Mesa-dev] [PATCH libdrm] tests/amdgpu: add uvd encode unit tests

2017-08-10 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- tests/amdgpu/Makefile.am | 1 + tests/amdgpu/amdgpu_test.c | 6 + tests/amdgpu/amdgpu_test.h | 15 ++ tests/amdgpu/frame.h | 2 +- tests/amdgpu/uvd_enc_tests.c | 500 tests/amdgpu/

[Mesa-dev] [PATCH] radeon/vcn: determine idr by pic type

2017-11-30 Thread boyuan.zhang
From: Boyuan Zhang Vaapi encode interface provides idr frame flags, where omx interface doesn't. Therefore, change to use picture type to determine idr frame, which will work for both interfaces. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_enc.c | 2 +- 1 file changed

[Mesa-dev] [PATCH] radeon/vcn: determine idr by pic type

2017-12-08 Thread boyuan.zhang
From: Boyuan Zhang Vaapi encode interface provides idr frame flags, where omx interface doesn't. Therefore, change to use picture type to determine idr frame, which will work for both interfaces. Signed-off-by: Boyuan Zhang Reviewed-by: Leo Liu Reviewed-by: Christian König --- src/gallium/dr

[Mesa-dev] [PATCH 2/3] st/va: directly use idr pic flag

2017-12-08 Thread boyuan.zhang
From: Boyuan Zhang Remove is_idr flag, and use idr_pic_flag provided by vaapi directly Signed-off-by: Boyuan Zhang --- src/gallium/state_trackers/va/picture.c | 8 +++- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/gallium/state_trackers/va/picture.c b/src/gallium/stat

[Mesa-dev] [PATCH 3/3] vl: remove is idr flag

2017-12-08 Thread boyuan.zhang
From: Boyuan Zhang Remove is_idr flag since not being used anymore. Signed-off-by: Boyuan Zhang --- src/gallium/include/pipe/p_video_state.h | 1 - 1 file changed, 1 deletion(-) diff --git a/src/gallium/include/pipe/p_video_state.h b/src/gallium/include/pipe/p_video_state.h index 1d57165..5a

[Mesa-dev] [PATCH 2/2] radeon/uvd: add and manage render picture list

2017-12-11 Thread boyuan.zhang
From: Boyuan Zhang Create a list in decoder to store all render picture buffer pointers that currently being used in reference picture lists. During get message buffer call, check each pointer in render_pic_list[] within given pic->ref[] list, remove pointer that no longer being used by pic->ref

[Mesa-dev] [PATCH 1/2] radeon/vcn: add and manage render picture list

2017-12-11 Thread boyuan.zhang
From: Boyuan Zhang Create a list in decoder to store all render picture buffer pointers that currently being used in reference picture lists. During get message buffer call, check each pointer in render_pic_list[] within given pic->ref[] list, remove pointer that no longer being used by pic->ref

[Mesa-dev] [PATCH 1/4] radeon/vcn: determine idr by pic type

2017-12-13 Thread boyuan.zhang
From: Boyuan Zhang Vaapi encode interface provides idr frame flags, where omx interface doesn't. Therefore, change to use picture type to determine idr frame, which will work for both interfaces. Signed-off-by: Boyuan Zhang Reviewed-by: Leo Liu Reviewed-by: Christian König --- src/gallium/dr

[Mesa-dev] [PATCH 2/4] radeon/vce: determine idr by pic type

2017-12-13 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vce_52.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeon/radeon_vce_52.c b/src/gallium/drivers/radeon/radeon_vce_52.c index 10bf718..a941c47 100644 --- a/src/gall

[Mesa-dev] [PATCH 4/4] vl: remove is idr flag

2017-12-13 Thread boyuan.zhang
From: Boyuan Zhang Remove is_idr flag since not being used anymore. Signed-off-by: Boyuan Zhang Reviewed-by: Christian König --- src/gallium/include/pipe/p_video_state.h | 1 - 1 file changed, 1 deletion(-) diff --git a/src/gallium/include/pipe/p_video_state.h b/src/gallium/include/pipe/p_v

[Mesa-dev] [PATCH 3/4] st/va: directly use idr pic flag

2017-12-13 Thread boyuan.zhang
From: Boyuan Zhang Remove is_idr flag, and use idr_pic_flag provided by vaapi directly Signed-off-by: Boyuan Zhang Reviewed-by: Christian König --- src/gallium/state_trackers/va/picture.c | 8 +++- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/gallium/state_trackers/va

[Mesa-dev] [PATCH] radeon/vce: add firmware support for version 53.14.3

2017-03-23 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vce.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/gallium/drivers/radeon/radeon_vce.c b/src/gallium/drivers/radeon/radeon_vce.c index dcd56ea..b7b309c 100644 --- a/src/gallium/drivers/radeon/rad

[Mesa-dev] [PATCH] radeon/video: only support h264 baseline encode

2017-04-04 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_video.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeon/radeon_video.c b/src/gallium/drivers/radeon/radeon_video.c index 605a2c7..02e8dcf 100644 --- a/src/gallium

[Mesa-dev] [PATCH] radeon/vcn: fix mpeg4 msg buffer settings

2018-04-24 Thread boyuan.zhang
From: Boyuan Zhang Previous bit-fields assignments are incorrect and will result certain mpeg4 decode failed due to wrong flag values. This patch fixes these assignments. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_dec.c | 18 +- 1 file changed, 9 inse

[Mesa-dev] [PATCH] radeon/vcn: fix mpeg4 msg buffer settings

2018-04-25 Thread boyuan.zhang
From: Boyuan Zhang Previous bit-fields assignments are incorrect and will result certain mpeg4 decode failed due to wrong flag values. This patch fixes these assignments. Signed-off-by: Boyuan Zhang Reviewed-by: Leo Liu --- src/gallium/drivers/radeon/radeon_vcn_dec.c | 18 +-

[Mesa-dev] [PATCH] radeon/vcn: fix mpeg4 msg buffer settings

2018-05-03 Thread boyuan.zhang
From: Boyuan Zhang Previous bit-fields assignments are incorrect and will result certain mpeg4 decode failed due to wrong flag values. This patch fixes these assignments. Cc: 18.0 18.1 Signed-off-by: Boyuan Zhang Reviewed-by: Leo Liu --- src/gallium/drivers/radeon/radeon_vcn_dec.c | 18

[Mesa-dev] [PATCH] radeon/vce: add firmware support for ver 53 and up

2018-05-08 Thread boyuan.zhang
From: Boyuan Zhang All vce firmwares with major version greater than or equal to 53 are supported Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vce.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/radeon/radeon_vce.c b/src/galli

[Mesa-dev] [PATCH 03/13] radeon/winsys: add vcn jpeg ring type

2018-08-16 Thread boyuan.zhang
From: Boyuan Zhang Add a new ring type for vcn jpeg. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_winsys.h | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gallium/drivers/radeon/radeon_winsys.h b/src/gallium/drivers/radeon/radeon_winsys.h index 0a56539..6290eef 10

[Mesa-dev] [PATCH 01/13] radeon/vcn: move radeon decoder define to header file

2018-08-16 Thread boyuan.zhang
From: Boyuan Zhang Move radeon_decoder definition from "radeon_vcn_dec.c" to "radeon_vcn_dec.h", so that it can be included by other files later. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_dec.c | 28 src/gallium/drivers/radeon/radeon_vcn

[Mesa-dev] [PATCH 02/13] radeon/vcn: add vcn jpeg decode interface

2018-08-16 Thread boyuan.zhang
From: Boyuan Zhang Add VCN Jpeg decode interfaces and register defines. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_dec.h | 91 + 1 file changed, 91 insertions(+) diff --git a/src/gallium/drivers/radeon/radeon_vcn_dec.h b/src/gallium/driv

[Mesa-dev] [PATCH 04/13] radeon/vcn: create cs based on ring type

2018-08-16 Thread boyuan.zhang
From: Boyuan Zhang Add RING_VCN_JPEG for VCN Jpeg decode, and keep RING_VCN_DEC for other codecs. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_dec.c | 8 ++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/radeon/radeon_vcn_dec.c

[Mesa-dev] [PATCH 05/13] radeon/vcn: separate send cmd call from end frame

2018-08-16 Thread boyuan.zhang
From: Boyuan Zhang Use function pointer for sending cmd in end_frame call. By doing this, we can assign different cmd sending logics for Jpeg decode later. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_dec.c | 30 - src/gallium/drivers/radeon

[Mesa-dev] [PATCH 11/13] amd/common: add vcn jpeg ip info query

2018-08-16 Thread boyuan.zhang
From: Boyuan Zhang Signed-off-by: Boyuan Zhang --- src/amd/common/ac_gpu_info.c | 14 -- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/amd/common/ac_gpu_info.c b/src/amd/common/ac_gpu_info.c index 73fc362..a1db3b9 100644 --- a/src/amd/common/ac_gpu_info.c +++ b/

[Mesa-dev] [PATCH 07/13] st/va: get mjpeg slice header

2018-08-16 Thread boyuan.zhang
From: Boyuan Zhang Move the previous get_mjpeg_slice_header function from radeon/vcn to st/va. Signed-off-by: Boyuan Zhang --- src/gallium/state_trackers/va/picture.c | 3 + src/gallium/state_trackers/va/picture_mjpeg.c | 132 ++ src/gallium/state_trackers/va/va

[Mesa-dev] [PATCH 12/13] winsys/amdgpu: add vcn jpeg cs support

2018-08-16 Thread boyuan.zhang
From: Boyuan Zhang Add vcn jpeg cs support, align cs by no-op. Signed-off-by: Boyuan Zhang --- src/gallium/winsys/amdgpu/drm/amdgpu_cs.c | 12 1 file changed, 12 insertions(+) diff --git a/src/gallium/winsys/amdgpu/drm/amdgpu_cs.c b/src/gallium/winsys/amdgpu/drm/amdgpu_cs.c inde

[Mesa-dev] [PATCH 13/13] radeonsi: enable vcn jpeg decode for raven

2018-08-16 Thread boyuan.zhang
From: Boyuan Zhang Enable vcn jpeg decode for raven. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeonsi/si_get.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gallium/drivers/radeonsi/si_get.c b/src/gallium/drivers/radeonsi/si_get.c index fc2be33..de587bb 100644 --- a/sr

[Mesa-dev] [PATCH 10/13] radeon/vcn: implement jpeg target buffer cmd

2018-08-16 Thread boyuan.zhang
From: Boyuan Zhang Implement jpeg target buffer cmd by programming registers directly, since there is no firmware for VCN Jpeg decode. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_dec_jpeg.c | 73 +++- 1 file changed, 72 insertions(+), 1 deletion(-)

[Mesa-dev] [PATCH 09/13] radeon/vcn: implement jpeg bitstream buffer cmd

2018-08-16 Thread boyuan.zhang
From: Boyuan Zhang Implement jpeg bitstream buffer cmd by programming registers directly, since there is no firmware for VCN Jpeg decode. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_dec_jpeg.c | 46 +++- 1 file changed, 45 insertions(+), 1 deletion

[Mesa-dev] [PATCH 08/13] radeon/uvd: remove get mjpeg slice header

2018-08-16 Thread boyuan.zhang
From: Boyuan Zhang Move the previous get_mjpeg_slice_header function from radeon/vcn to st/va. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_uvd.c | 136 1 file changed, 136 deletions(-) diff --git a/src/gallium/drivers/radeon/radeon_uvd.c

[Mesa-dev] [PATCH 06/13] radeon/vcn: add jpeg decode implementation

2018-08-16 Thread boyuan.zhang
From: Boyuan Zhang Add a new file to handle VCN Jpeg decode specific functions. Use Jpeg specific cmd sending function in end_frame call. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/Makefile.sources | 1 + src/gallium/drivers/radeon/meson.build | 1 + src/galliu

[Mesa-dev] [PATCH 07/13] st/va: get mjpeg slice header

2018-08-16 Thread boyuan.zhang
From: Boyuan Zhang Move the previous get_mjpeg_slice_heaeder function and eoi from "radeon/vcn" to "st/va". Signed-off-by: Boyuan Zhang --- src/gallium/state_trackers/va/picture.c | 13 ++- src/gallium/state_trackers/va/picture_mjpeg.c | 132 ++ src/gallium/state

[Mesa-dev] [PATCH 06/13] radeon/vcn: add jpeg decode implementation

2018-08-16 Thread boyuan.zhang
From: Boyuan Zhang Add a new file to handle VCN Jpeg decode specific functions. Use Jpeg specific cmd sending function in end_frame call. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/Makefile.sources | 1 + src/gallium/drivers/radeon/meson.build | 1 + src/galliu

[Mesa-dev] [PATCH 08/13] radeon/uvd: remove get mjpeg slice header

2018-08-16 Thread boyuan.zhang
From: Boyuan Zhang Move the previous get_mjpeg_slice_heaeder function and eoi from "radeon/vcn" to "st/va". Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_uvd.c | 147 1 file changed, 147 deletions(-) diff --git a/src/gallium/drivers/radeon/

[Mesa-dev] [PATCH] vl: reorder H264 profiles

2018-09-25 Thread boyuan.zhang
From: Boyuan Zhang Fix the wrong h264 profiles order. Previously, the constrained baseline was added in between baseline and main profiles, which breaked the logic in radeon/vce when converting from pipe_video_profile to profile_idc Signed-off-by: Boyuan Zhang --- src/gallium/include/pipe/p_vi

[Mesa-dev] [PATCH] radeon/vce: use switch to convert profile idc

2018-09-26 Thread boyuan.zhang
From: Boyuan Zhang The previous array logic for converting pipe video profile to profile idc relies on the order of pipe_video_profile enum defines. Adding new profile to enum defines may break the logic. Therefore, it's better to use switch helper function to acheive the same goal. Signed-off-b

[Mesa-dev] [PATCH] radeonsi: fix radeon create encoder return

2018-02-27 Thread boyuan.zhang
From: Boyuan Zhang Previous patch missed a "return" when trying to modify the create encoder function, which made the whole logic fail. Therefore, add the return back. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeonsi/si_uvd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) d

[Mesa-dev] [PATCH] radeon/vcn: use enc profile instead of pic profile

2018-02-27 Thread boyuan.zhang
From: Boyuan Zhang Picture profile might not be set in some cases. Therefore, better to use the profile stored in encoder base. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_enc.c | 4 ++-- src/gallium/drivers/radeon/radeon_vcn_enc_1_2.c | 16 2 fi

[Mesa-dev] [PATCH] st/omx_bellagio: add picture profile and entry point

2018-03-02 Thread boyuan.zhang
From: Boyuan Zhang Profile and entry point were missing in the picture structure. Therefore, add them back. Signed-off-by: Boyuan Zhang Reviewed-by: Leo Liu --- src/gallium/state_trackers/omx_bellagio/vid_enc.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gallium/state_trackers/o

[Mesa-dev] [PATCH] radeonsi: fix radeon create encoder return

2018-03-02 Thread boyuan.zhang
From: Boyuan Zhang Previous patch missed a "return" when trying to modify the create encoder function, which made the whole logic fail. Therefore, add the return back. Fixes: b38b208ff8886e799d6a2 "radeonsi:create uvd hevc enc entry" Signed-off-by: Boyuan Zhang Reviewed-by: Alex Deucher Revie

[Mesa-dev] [PATCH 08/12] st/va: add entrypoint check for HEVC

2018-01-25 Thread boyuan.zhang
From: Boyuan Zhang Add entrypoint check for HEVC to differentiate decode and encode jobs. Signed-off-by: Boyuan Zhang --- src/gallium/state_trackers/va/context.c | 22 -- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/src/gallium/state_trackers/va/context.c

[Mesa-dev] [PATCH 04/12] radeon/vcn: add ib implementations for HEVC

2018-01-25 Thread boyuan.zhang
From: Boyuan Zhang Implement required ibs for vcn HEVC encode. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_enc_1_2.c | 267 1 file changed, 222 insertions(+), 45 deletions(-) diff --git a/src/gallium/drivers/radeon/radeon_vcn_enc_1_2.c b/src

[Mesa-dev] [PATCH 01/12] vl: add parameters for HEVC encode

2018-01-25 Thread boyuan.zhang
From: Boyuan Zhang Add HEVC encode interface Signed-off-by: Boyuan Zhang --- src/gallium/include/pipe/p_video_state.h | 100 +++ 1 file changed, 100 insertions(+) diff --git a/src/gallium/include/pipe/p_video_state.h b/src/gallium/include/pipe/p_video_state.h inde

[Mesa-dev] [PATCH 07/12] st/va: add HEVC picture desc

2018-01-25 Thread boyuan.zhang
From: Boyuan Zhang Add HEVC picture desc, and add codec check when creating and destroying context. Signed-off-by: Boyuan Zhang --- src/gallium/state_trackers/va/context.c| 26 ++ src/gallium/state_trackers/va/va_private.h | 1 + 2 files changed, 23 insertions(+),

[Mesa-dev] [PATCH 05/12] radeon/vcn: add header implementations for HEVC

2018-01-25 Thread boyuan.zhang
From: Boyuan Zhang Implement encoding of sps, pps, vps, aud, and slice headers for HEVC based on HEVC specs. Signed-off-by: Boyuan Zhang --- src/gallium/drivers/radeon/radeon_vcn_enc_1_2.c | 348 +++- 1 file changed, 347 insertions(+), 1 deletion(-) diff --git a/src/galliu

  1   2   >