linux-arm-msm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
To: Hans Verkuil <hverkuil-cisco@xs4all.nl>,
	rfoss@kernel.org, todor.too@gmail.com, agross@kernel.org,
	andersson@kernel.org, konrad.dybcio@linaro.org,
	mchehab@kernel.org, laurent.pinchart@ideasonboard.com,
	sakari.ailus@linux.intel.com, andrey.konovalov@linaro.org
Cc: linux-media@vger.kernel.org, linux-arm-msm@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v5 11/17] media: qcom: camss: Allow clocks vfeN vfe_liteN or vfe_lite
Date: Mon, 25 Sep 2023 12:46:47 +0100	[thread overview]
Message-ID: <22a7562e-53cb-40f9-a922-cf840c178506@linaro.org> (raw)
In-Reply-To: <936acf18-b961-40e3-b68b-f1c679961d67@xs4all.nl>

On 25/09/2023 08:10, Hans Verkuil wrote:
> On 11/09/2023 15:14, Bryan O'Donoghue wrote:
>> The number of Video Front End - VFE or Image Front End - IFE supported
>> with new SoCs can vary both for the full and lite cases.
>>
>> For example sdm845 has one vfe_lite and two vfe interfaces with the vfe
>> clock called simply "vfe_lite" with no integer postfix. sc8280xp has four
>> vfe and four vfe lite blocks.
>>
>> At the moment we declare vfe_lite0 and vfe_lite1 for sm8250 but never set
>> those clocks because we don't match the strings.
>>
>> We need to support the following clock name formats
>>
>> - vfeN
>> - vfe_liteN
>> - vfe_lite
>>
>> with N being any reasonably sized integer.
>>
>> There are two sites in this code which need to do the same thing,
>> constructing and matching strings with the pattern above, so encapsulate
>> the logic in one function.
>>
>> Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
>> ---
>>   drivers/media/platform/qcom/camss/camss-vfe.c | 22 ++++++++++++++-----
>>   1 file changed, 16 insertions(+), 6 deletions(-)
>>
>> diff --git a/drivers/media/platform/qcom/camss/camss-vfe.c b/drivers/media/platform/qcom/camss/camss-vfe.c
>> index db8f68819ded9..f3cf387e4907e 100644
>> --- a/drivers/media/platform/qcom/camss/camss-vfe.c
>> +++ b/drivers/media/platform/qcom/camss/camss-vfe.c
>> @@ -431,6 +431,20 @@ void vfe_isr_reset_ack(struct vfe_device *vfe)
>>   	complete(&vfe->reset_complete);
>>   }
>>   
>> +static int vfe_match_clock_names(struct vfe_device *vfe,
>> +				 struct camss_clock *clock)
>> +{
>> +	char vfe_name[6]; /* vfeXX\0 */
>> +	char vfe_lite_name[11]; /* vfe_liteXX\0 */
>> +
>> +	snprintf(vfe_name, sizeof(vfe_name), "vfe%d", vfe->id);
>> +	snprintf(vfe_lite_name, sizeof(vfe_lite_name), "vfe_lite%d", vfe->id);
>> +
>> +	return (!strcmp(clock->name, vfe_name) ||
>> +		!strcmp(clock->name, vfe_lite_name) ||
>> +		!strcmp(clock->name, "vfe_lite"));
>> +}
> 
> I'm getting this compiler warning:
> 
> drivers/media/platform/qcom/camss/camss-vfe.c: In function 'vfe_match_clock_names':
> drivers/media/platform/qcom/camss/camss-vfe.c:483:52: warning: 'snprintf' output may be truncated before the last format character [-Wformat-truncation=]
>    483 |         snprintf(vfe_name, sizeof(vfe_name), "vfe%d", vfe->id);
>        |                                                    ^
> 
> Since vfe->id is a u8 I would just increase both the vfe_name and vfe_lite_name
> sizes by 1.
> 
> Regards,
> 
> 	Hans
> 

Hmm. True.

Maximum value of VFE id is 255 @ u8

---
bod


  reply	other threads:[~2023-09-25 11:46 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-11 13:13 [PATCH v5 00/17] media: qcom: camss: Add parameter passing to remove several outstanding bugs Bryan O'Donoghue
2023-09-11 13:13 ` [PATCH v5 01/17] media: qcom: camss: Amalgamate struct resource with struct resource_ispif Bryan O'Donoghue
2023-09-11 13:13 ` [PATCH v5 02/17] media: qcom: camss: Rename camss struct resources to camss_subdev_resources Bryan O'Donoghue
2023-09-11 13:13 ` [PATCH v5 03/17] media: qcom: camss: Start to move to module compat matched resources Bryan O'Donoghue
2023-09-11 13:13 ` [PATCH v5 04/17] media: qcom: camss: Pass icc bandwidth table as a platform parameter Bryan O'Donoghue
2023-09-11 13:13 ` [PATCH v5 05/17] media: qcom: camss: Pass remainder of variables as resources Bryan O'Donoghue
2023-09-11 13:14 ` [PATCH v5 06/17] media: qcom: camss: Pass line_num from compat resources Bryan O'Donoghue
2023-09-11 13:14 ` [PATCH v5 07/17] media: qcom: camss: Pass CAMSS subdev callbacks via resource ops pointer Bryan O'Donoghue
2023-09-11 13:14 ` [PATCH v5 08/17] media: qcom: camss: Assign the correct number of RDIs per VFE Bryan O'Donoghue
2023-09-11 13:14 ` [PATCH v5 09/17] media: qcom: camss: Remove special case for VFE get/put Bryan O'Donoghue
2023-09-25  8:34   ` Laurent Pinchart
2023-09-11 13:14 ` [PATCH v5 10/17] media: qcom: camss: Untangle if/else spaghetti in camss Bryan O'Donoghue
2023-09-11 13:14 ` [PATCH v5 11/17] media: qcom: camss: Allow clocks vfeN vfe_liteN or vfe_lite Bryan O'Donoghue
2023-09-25  7:10   ` Hans Verkuil
2023-09-25 11:46     ` Bryan O'Donoghue [this message]
2023-09-11 13:14 ` [PATCH v5 12/17] media: qcom: camss: Functionally decompose CSIPHY clock lookups Bryan O'Donoghue
2023-09-11 13:14 ` [PATCH v5 13/17] media: qcom: camss: Fix support for setting CSIPHY clock name csiphyX Bryan O'Donoghue
2023-09-11 13:14 ` [PATCH v5 14/17] media: qcom: camss: Support RDI3 for VFE 17x Bryan O'Donoghue
2023-09-11 13:14 ` [PATCH v5 15/17] media: qcom: camss: Move vfe_disable into a common routine where applicable Bryan O'Donoghue
2023-09-11 13:14 ` [PATCH v5 16/17] media: qcom: camss: Propagate vfe_reset error up the callstack Bryan O'Donoghue
2023-09-11 13:14 ` [PATCH v5 17/17] media: qcom: camss: Comment CSID dt_id field Bryan O'Donoghue
2023-09-25  7:11   ` Hans Verkuil
2023-09-25  8:14     ` Laurent Pinchart
2023-09-25 14:01       ` 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=22a7562e-53cb-40f9-a922-cf840c178506@linaro.org \
    --to=bryan.odonoghue@linaro.org \
    --cc=agross@kernel.org \
    --cc=andersson@kernel.org \
    --cc=andrey.konovalov@linaro.org \
    --cc=hverkuil-cisco@xs4all.nl \
    --cc=konrad.dybcio@linaro.org \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=mchehab@kernel.org \
    --cc=rfoss@kernel.org \
    --cc=sakari.ailus@linux.intel.com \
    --cc=todor.too@gmail.com \
    /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;
as well as URLs for NNTP newsgroup(s).