Linux ARM-MSM sub-architecture
 help / color / mirror / Atom feed
From: dikshita@codeaurora.org
To: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Cc: stanimir.varbanov@linaro.org, agross@kernel.org,
	bjorn.andersson@linaro.org, mchehab@kernel.org,
	linux-media@vger.kernel.org, linux-arm-msm@vger.kernel.org,
	jonathan@marek.ca, vgarodia@codeaurora.org
Subject: Re: [PATCH v2 21/25] media: venus: helpers: Add internal buffer list for v6
Date: Wed, 17 Mar 2021 15:29:47 +0530	[thread overview]
Message-ID: <e0fac30ba39f35abff9262fa9538f790@codeaurora.org> (raw)
In-Reply-To: <20210312173039.1387617-22-bryan.odonoghue@linaro.org>

On 2021-03-12 23:00, Bryan O'Donoghue wrote:
> From: Dikshita Agarwal <dikshita@codeaurora.org>
> 
> - Internal buffers required by v6 are different than v4,
>   add new list of internal buffers for v6.
> - Differentiate encoder/decoder buffers for 6xx
> 
> Signed-off-by: Dikshita Agarwal <dikshita@codeaurora.org>
> Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
> ---
>  drivers/media/platform/qcom/venus/helpers.c    | 13 ++++++++++++-
>  drivers/media/platform/qcom/venus/hfi_helper.h |  9 ++++++---
>  2 files changed, 18 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/media/platform/qcom/venus/helpers.c
> b/drivers/media/platform/qcom/venus/helpers.c
> index 2515a2225614..8b08632b0296 100644
> --- a/drivers/media/platform/qcom/venus/helpers.c
> +++ b/drivers/media/platform/qcom/venus/helpers.c
> @@ -279,13 +279,24 @@ static const unsigned int intbuf_types_4xx[] = {
>  	HFI_BUFFER_INTERNAL_PERSIST_1,
>  };
> 
> +static const unsigned int intbuf_types_6xx[] = {
> +	HFI_BUFFER_INTERNAL_SCRATCH(HFI_VERSION_6XX),
> +	HFI_BUFFER_INTERNAL_SCRATCH_1(HFI_VERSION_6XX),
> +	HFI_BUFFER_INTERNAL_SCRATCH_2(HFI_VERSION_6XX),
> +	HFI_BUFFER_INTERNAL_PERSIST,
> +	HFI_BUFFER_INTERNAL_PERSIST_1,
> +};
> +

Hi Bryan,

this change will require additional handling in hfi_plat_buf_v6.c to
return buffer_size as 0 for internal buffer type which is not applicable 
for
encoder or decoder, currently we return -EINVAL for the same.

Thanks,
Dikshita

>  int venus_helper_intbufs_alloc(struct venus_inst *inst)
>  {
>  	const unsigned int *intbuf;
>  	size_t arr_sz, i;
>  	int ret;
> 
> -	if (IS_V4(inst->core)) {
> +	if (IS_V6(inst->core)) {
> +		arr_sz = ARRAY_SIZE(intbuf_types_6xx);
> +		intbuf = intbuf_types_6xx;
> +	} else if (IS_V4(inst->core)) {
>  		arr_sz = ARRAY_SIZE(intbuf_types_4xx);
>  		intbuf = intbuf_types_4xx;
>  	} else {
> diff --git a/drivers/media/platform/qcom/venus/hfi_helper.h
> b/drivers/media/platform/qcom/venus/hfi_helper.h
> index 6b524c7cde5f..f367f43c9fb7 100644
> --- a/drivers/media/platform/qcom/venus/hfi_helper.h
> +++ b/drivers/media/platform/qcom/venus/hfi_helper.h
> @@ -395,11 +395,14 @@
>  #define HFI_BUFFER_INTERNAL_PERSIST		0x4
>  #define HFI_BUFFER_INTERNAL_PERSIST_1		0x5
>  #define HFI_BUFFER_INTERNAL_SCRATCH(ver)	\
> -	(((ver) == HFI_VERSION_4XX) ? 0x6 : 0x1000001)
> +	(((ver) == HFI_VERSION_4XX ||		\
> +	(ver) == HFI_VERSION_6XX) ? 0x6 : 0x1000001)
>  #define HFI_BUFFER_INTERNAL_SCRATCH_1(ver)	\
> -	(((ver) == HFI_VERSION_4XX) ? 0x7 : 0x1000005)
> +	(((ver) == HFI_VERSION_4XX ||		\
> +	(ver) == HFI_VERSION_6XX) ? 0x7 : 0x1000005)
>  #define HFI_BUFFER_INTERNAL_SCRATCH_2(ver)	\
> -	(((ver) == HFI_VERSION_4XX) ? 0x8 : 0x1000006)
> +	(((ver) == HFI_VERSION_4XX ||		\
> +	(ver) == HFI_VERSION_6XX) ? 0x8 : 0x1000006)
>  #define HFI_BUFFER_EXTRADATA_INPUT(ver)		\
>  	(((ver) == HFI_VERSION_4XX) ? 0xc : 0x1000002)
>  #define HFI_BUFFER_EXTRADATA_OUTPUT(ver)	\

  reply	other threads:[~2021-03-17 10:00 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-12 17:30 [PATCH v2 00/25] media: venus: Enable 6xx support Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 01/25] media: venus: Update v6 buffer descriptors Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 02/25] media: venus: core,pm: Add handling for resets Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 03/25] media: venus: core: add sm8250 DT compatible and resource data Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 04/25] media: venus: core: Add io base variables for each block Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 05/25] media: venus: hfi,pm,firmware: Convert to block relative addressing Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 06/25] media: venus: hfi: Define block offsets for V6 hardware Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 07/25] media: venus: hfi: Define additional 6xx registers Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 08/25] media: venus: core: Add differentiator IS_V6(core) Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 09/25] media: venus: core: Add an io base for TZ wrapper regs Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 10/25] media: venus: core: Add an io base for AON regs Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 11/25] media: venus: core: Hook to V6 base registers when appropriate Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 12/25] media: venus: hfi: Add a 6xx boot logic Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 13/25] media: venus: hfi: Add 6xx interrupt support Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 14/25] media: venus: hfi: Read WRAPPER_TZ_CPU_STATUS_V6 on 6xx Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 15/25] media: venus: hfi, vdec: v6 Add IS_V6() to existing IS_V4() if locations Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 16/25] media: venus: pm: Hook 6xx pm ops into 4xx pm ops Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 17/25] media: venus: core,pm: Vote for min clk freq during venus boot Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 18/25] media: venus: hfi: Add 6xx AXI halt logic Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 19/25] media: venus: pm: Toggle 6xx wrapper power in vcodec_control Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 20/25] media: venus: firmware: Do not toggle WRAPPER_A9SS_SW_RESET on 6xx Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 21/25] media: venus: helpers: Add internal buffer list for v6 Bryan O'Donoghue
2021-03-17  9:59   ` dikshita [this message]
2021-03-12 17:30 ` [PATCH v2 22/25] media: venus: helpers, hfi, vdec: Set actual plane constraints to FW Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 23/25] media: venus: hfi: Increase plat_buf_v6 o/p buffer count Bryan O'Donoghue
2021-03-12 17:30 ` [PATCH v2 24/25] media: venus: helper: Decide work mode Bryan O'Donoghue
2021-03-22 13:12   ` Stanimir Varbanov
2021-03-12 17:30 ` [PATCH v2 25/25] media: venus: vdec: Fix decoder cmd STOP issue Bryan O'Donoghue
2021-03-23 12:20 ` [PATCH v2 00/25] media: venus: Enable 6xx support Stanimir Varbanov
2021-03-23 14:07   ` Bryan O'Donoghue

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=e0fac30ba39f35abff9262fa9538f790@codeaurora.org \
    --to=dikshita@codeaurora.org \
    --cc=agross@kernel.org \
    --cc=bjorn.andersson@linaro.org \
    --cc=bryan.odonoghue@linaro.org \
    --cc=jonathan@marek.ca \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=mchehab@kernel.org \
    --cc=stanimir.varbanov@linaro.org \
    --cc=vgarodia@codeaurora.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