From: Benjamin Gaignard <benjamin.gaignard@collabora.com>
To: mchehab@kernel.org, hverkuil@xs4all.nl,
ezequiel@vanguardiasur.com.ar, p.zabel@pengutronix.de,
gregkh@linuxfoundation.org, mripard@kernel.org,
paul.kocialkowski@bootlin.com, wens@csie.org,
jernej.skrabec@gmail.com, samuel@sholland.org,
nicolas.dufresne@collabora.com, andrzej.p@collabora.com
Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-rockchip@lists.infradead.org,
linux-staging@lists.linux.dev,
linux-arm-kernel@lists.infradead.org,
linux-sunxi@lists.linux.dev, kernel@collabora.com,
Benjamin Gaignard <benjamin.gaignard@collabora.com>
Subject: [PATCH 4/7] media: hantro: postproc: Configure output regs to support 10bit
Date: Fri, 17 Jun 2022 13:57:59 +0200 [thread overview]
Message-ID: <20220617115802.396442-5-benjamin.gaignard@collabora.com> (raw)
In-Reply-To: <20220617115802.396442-1-benjamin.gaignard@collabora.com>
Move output format setting in postproc and make sure that
8/10bit configuration is correctly set.
Signed-off-by: Benjamin Gaignard <benjamin.gaignard@collabora.com>
---
drivers/staging/media/hantro/hantro_g2_hevc_dec.c | 2 --
drivers/staging/media/hantro/hantro_postproc.c | 7 ++++++-
2 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/drivers/staging/media/hantro/hantro_g2_hevc_dec.c b/drivers/staging/media/hantro/hantro_g2_hevc_dec.c
index 8407ad45b7b7..c929f2974a01 100644
--- a/drivers/staging/media/hantro/hantro_g2_hevc_dec.c
+++ b/drivers/staging/media/hantro/hantro_g2_hevc_dec.c
@@ -167,8 +167,6 @@ static void set_params(struct hantro_ctx *ctx)
hantro_reg_write(vpu, &g2_bit_depth_y_minus8, sps->bit_depth_luma_minus8);
hantro_reg_write(vpu, &g2_bit_depth_c_minus8, sps->bit_depth_chroma_minus8);
- hantro_reg_write(vpu, &g2_output_8_bits, 0);
-
hantro_reg_write(vpu, &g2_hdr_skip_length, compute_header_skip_lenght(ctx));
min_log2_cb_size = sps->log2_min_luma_coding_block_size_minus3 + 3;
diff --git a/drivers/staging/media/hantro/hantro_postproc.c b/drivers/staging/media/hantro/hantro_postproc.c
index a0928c508434..09d8cf942689 100644
--- a/drivers/staging/media/hantro/hantro_postproc.c
+++ b/drivers/staging/media/hantro/hantro_postproc.c
@@ -114,6 +114,7 @@ static void hantro_postproc_g2_enable(struct hantro_ctx *ctx)
struct hantro_dev *vpu = ctx->dev;
struct vb2_v4l2_buffer *dst_buf;
int down_scale = down_scale_factor(ctx);
+ int out_depth;
size_t chroma_offset;
dma_addr_t dst_dma;
@@ -132,8 +133,9 @@ static void hantro_postproc_g2_enable(struct hantro_ctx *ctx)
hantro_write_addr(vpu, G2_RS_OUT_LUMA_ADDR, dst_dma);
hantro_write_addr(vpu, G2_RS_OUT_CHROMA_ADDR, dst_dma + chroma_offset);
}
+
+ out_depth = hantro_get_format_depth(ctx->dst_fmt.pixelformat);
if (ctx->dev->variant->legacy_regs) {
- int out_depth = hantro_get_format_depth(ctx->dst_fmt.pixelformat);
u8 pp_shift = 0;
if (out_depth > 8)
@@ -141,6 +143,9 @@ static void hantro_postproc_g2_enable(struct hantro_ctx *ctx)
hantro_reg_write(ctx->dev, &g2_rs_out_bit_depth, out_depth);
hantro_reg_write(ctx->dev, &g2_pp_pix_shift, pp_shift);
+ } else {
+ hantro_reg_write(vpu, &g2_output_8_bits, out_depth > 8 ? 0 : 1);
+ hantro_reg_write(vpu, &g2_output_format, out_depth > 8 ? 1 : 0);
}
hantro_reg_write(vpu, &g2_out_rs_e, 1);
}
--
2.32.0
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2022-06-17 11:59 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-06-17 11:57 [PATCH 0/7] Enable 10bits bitstream for Hantro/G2 HEVC codec Benjamin Gaignard
2022-06-17 11:57 ` [PATCH 1/7] media: hantro: Store HEVC bit depth in context Benjamin Gaignard
2022-06-30 17:30 ` Ezequiel Garcia
2022-06-17 11:57 ` [PATCH 2/7] media: hantro: HEVC: Fix auxilary buffer size calculation Benjamin Gaignard
2022-06-30 17:33 ` Ezequiel Garcia
2022-06-17 11:57 ` [PATCH 3/7] media: hantro: HEVC: Fix chroma offset computation Benjamin Gaignard
2022-06-30 17:34 ` Ezequiel Garcia
2022-07-01 8:47 ` Paul Kocialkowski
2022-07-01 9:03 ` Benjamin Gaignard
2022-06-17 11:57 ` Benjamin Gaignard [this message]
2022-06-30 17:35 ` [PATCH 4/7] media: hantro: postproc: Configure output regs to support 10bit Ezequiel Garcia
2022-06-17 11:58 ` [PATCH 5/7] media: Hantro: HEVC: Allows 10-bit bitstream Benjamin Gaignard
2022-06-30 17:38 ` Ezequiel Garcia
2022-06-17 11:58 ` [PATCH 6/7] media: hantro: imx8m: Enable 10bit decoding Benjamin Gaignard
2022-06-30 17:40 ` Ezequiel Garcia
2022-07-01 7:01 ` Benjamin Gaignard
2022-07-04 15:43 ` Nicolas Dufresne
2022-06-17 11:58 ` [PATCH 7/7] media: hantro: Allows luma and chroma depth to be different Benjamin Gaignard
2022-06-30 17:40 ` Ezequiel Garcia
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220617115802.396442-5-benjamin.gaignard@collabora.com \
--to=benjamin.gaignard@collabora.com \
--cc=andrzej.p@collabora.com \
--cc=ezequiel@vanguardiasur.com.ar \
--cc=gregkh@linuxfoundation.org \
--cc=hverkuil@xs4all.nl \
--cc=jernej.skrabec@gmail.com \
--cc=kernel@collabora.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=linux-staging@lists.linux.dev \
--cc=linux-sunxi@lists.linux.dev \
--cc=mchehab@kernel.org \
--cc=mripard@kernel.org \
--cc=nicolas.dufresne@collabora.com \
--cc=p.zabel@pengutronix.de \
--cc=paul.kocialkowski@bootlin.com \
--cc=samuel@sholland.org \
--cc=wens@csie.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox