[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <cc43d9b7-13ba-44ea-9b37-fc54c0d1f2e0@linaro.org>
Date: Mon, 26 May 2025 09:20:21 +0100
From: Bryan O'Donoghue <bryan.odonoghue@...aro.org>
To: vincent.knecht@...loo.org, Robert Foss <rfoss@...nel.org>,
Todor Tomov <todor.too@...il.com>, Mauro Carvalho Chehab
<mchehab@...nel.org>, Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>, Conor Dooley
<conor+dt@...nel.org>, Bjorn Andersson <andersson@...nel.org>,
Konrad Dybcio <konradybcio@...nel.org>
Cc: linux-kernel@...r.kernel.org, linux-media@...r.kernel.org,
linux-arm-msm@...r.kernel.org, devicetree@...r.kernel.org,
André Apitzsch <git@...tzsch.eu>,
phone-devel@...r.kernel.org, ~postmarketos/upstreaming@...ts.sr.ht
Subject: Re: [PATCH v2 2/4] media: qcom: camss: Add support for MSM8939
On 25/05/2025 20:25, Vincent Knecht via B4 Relay wrote:
> From: Vincent Knecht <vincent.knecht@...loo.org>
>
> The camera subsystem for the MSM8939 is the same as MSM8916 except with
> 3 CSID instead of 2, and some higher clock rates.
>
> As a quirk, this SoC needs writing values to 2 VFE VBIF registers
> (see downstream msm8939-camera.dtsi vbif-{regs,settings} properties).
> This fixes black stripes across sensor and garbage in CSID TPG outputs.
>
> Add support for the MSM8939 camera subsystem.
>
> Signed-off-by: Vincent Knecht <vincent.knecht@...loo.org>
> ---
> drivers/media/platform/qcom/camss/camss-csiphy.c | 1 +
> drivers/media/platform/qcom/camss/camss-ispif.c | 8 +-
> drivers/media/platform/qcom/camss/camss-vfe-vbif.c | 7 +
> drivers/media/platform/qcom/camss/camss-vfe.c | 1 +
> drivers/media/platform/qcom/camss/camss.c | 157 +++++++++++++++++++++
> drivers/media/platform/qcom/camss/camss.h | 1 +
> 6 files changed, 173 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/media/platform/qcom/camss/camss-csiphy.c b/drivers/media/platform/qcom/camss/camss-csiphy.c
> index c622efcc92ff3781d7fc3ace0253c2d64c91e847..6311fc2975aa1345e430a477c8a6476f1d7e5663 100644
> --- a/drivers/media/platform/qcom/camss/camss-csiphy.c
> +++ b/drivers/media/platform/qcom/camss/camss-csiphy.c
> @@ -605,6 +605,7 @@ int msm_csiphy_subdev_init(struct camss *camss,
> return PTR_ERR(csiphy->base);
>
> if (camss->res->version == CAMSS_8x16 ||
> + camss->res->version == CAMSS_8x39 ||
> camss->res->version == CAMSS_8x53 ||
> camss->res->version == CAMSS_8x96) {
> csiphy->base_clk_mux =
> diff --git a/drivers/media/platform/qcom/camss/camss-ispif.c b/drivers/media/platform/qcom/camss/camss-ispif.c
> index 2dc585c6123dd248a5bacd9c7a88cb5375644311..aaf3caa42d33dcb641651e7f5bc0c2a564d85bfa 100644
> --- a/drivers/media/platform/qcom/camss/camss-ispif.c
> +++ b/drivers/media/platform/qcom/camss/camss-ispif.c
> @@ -1112,6 +1112,8 @@ int msm_ispif_subdev_init(struct camss *camss,
> /* Number of ISPIF lines - same as number of CSID hardware modules */
> if (camss->res->version == CAMSS_8x16)
> ispif->line_num = 2;
> + else if (camss->res->version == CAMSS_8x39)
> + ispif->line_num = 3;
> + .interrupt = { "vfe0" },
> + .vfe = {
> + .line_num = 3,
Hmm should we really be setting line_num inline in the code ?
I don't believe we should.
These parameters should be passed from the resources structures.
---
bod
Powered by blists - more mailing lists