2022-05-23 07:18:06

by Luca Weiss

[permalink] [raw]
Subject: [RFC PATCH 06/14] media: camss: ispif: Add support for 8x74

From: Matti Lehtimäki <[email protected]>

ISPIF hardware modules on 8x74, 8x16 and 8x96 are similar. However on
8x74 the ISPIF routes data to two VFE hardware modules like 8x96 but
formats are similar to 8x16.

Signed-off-by: Matti Lehtimäki <[email protected]>
Signed-off-by: Luca Weiss <[email protected]>
---
drivers/media/platform/qcom/camss/camss-ispif.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/media/platform/qcom/camss/camss-ispif.c b/drivers/media/platform/qcom/camss/camss-ispif.c
index 4ee11bb979cd..693807bf3c6b 100644
--- a/drivers/media/platform/qcom/camss/camss-ispif.c
+++ b/drivers/media/platform/qcom/camss/camss-ispif.c
@@ -1112,6 +1112,7 @@ int msm_ispif_subdev_init(struct camss *camss,
if (camss->version == CAMSS_8x16)
ispif->line_num = 2;
else if (camss->version == CAMSS_8x96 ||
+ camss->version == CAMSS_8x74 ||
camss->version == CAMSS_660)
ispif->line_num = 4;
else
@@ -1126,7 +1127,8 @@ int msm_ispif_subdev_init(struct camss *camss,
ispif->line[i].ispif = ispif;
ispif->line[i].id = i;

- if (camss->version == CAMSS_8x16) {
+ if (camss->version == CAMSS_8x16 ||
+ camss->version == CAMSS_8x74) {
ispif->line[i].formats = ispif_formats_8x16;
ispif->line[i].nformats =
ARRAY_SIZE(ispif_formats_8x16);
@@ -1163,6 +1165,7 @@ int msm_ispif_subdev_init(struct camss *camss,
ret = devm_request_irq(dev, ispif->irq, ispif_isr_8x16,
IRQF_TRIGGER_RISING, ispif->irq_name, ispif);
else if (camss->version == CAMSS_8x96 ||
+ camss->version == CAMSS_8x74 ||
camss->version == CAMSS_660)
ret = devm_request_irq(dev, ispif->irq, ispif_isr_8x96,
IRQF_TRIGGER_RISING, ispif->irq_name, ispif);
--
2.36.0



2022-05-26 20:31:44

by Robert Foss

[permalink] [raw]
Subject: Re: [RFC PATCH 06/14] media: camss: ispif: Add support for 8x74

On Sun, 22 May 2022 at 18:28, Luca Weiss <[email protected]> wrote:
>
> From: Matti Lehtimäki <[email protected]>
>
> ISPIF hardware modules on 8x74, 8x16 and 8x96 are similar. However on
> 8x74 the ISPIF routes data to two VFE hardware modules like 8x96 but
> formats are similar to 8x16.
>
> Signed-off-by: Matti Lehtimäki <[email protected]>
> Signed-off-by: Luca Weiss <[email protected]>
> ---
> drivers/media/platform/qcom/camss/camss-ispif.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/media/platform/qcom/camss/camss-ispif.c b/drivers/media/platform/qcom/camss/camss-ispif.c
> index 4ee11bb979cd..693807bf3c6b 100644
> --- a/drivers/media/platform/qcom/camss/camss-ispif.c
> +++ b/drivers/media/platform/qcom/camss/camss-ispif.c
> @@ -1112,6 +1112,7 @@ int msm_ispif_subdev_init(struct camss *camss,
> if (camss->version == CAMSS_8x16)
> ispif->line_num = 2;
> else if (camss->version == CAMSS_8x96 ||
> + camss->version == CAMSS_8x74 ||
> camss->version == CAMSS_660)
> ispif->line_num = 4;
> else
> @@ -1126,7 +1127,8 @@ int msm_ispif_subdev_init(struct camss *camss,
> ispif->line[i].ispif = ispif;
> ispif->line[i].id = i;
>
> - if (camss->version == CAMSS_8x16) {
> + if (camss->version == CAMSS_8x16 ||
> + camss->version == CAMSS_8x74) {

CHECK: Alignment should match open parenthesis
#37: FILE: drivers/media/platform/qcom/camss/camss-ispif.c:1131:
+ if (camss->version == CAMSS_8x16 ||
+ camss->version == CAMSS_8x74) {


> ispif->line[i].formats = ispif_formats_8x16;
> ispif->line[i].nformats =
> ARRAY_SIZE(ispif_formats_8x16);
> @@ -1163,6 +1165,7 @@ int msm_ispif_subdev_init(struct camss *camss,
> ret = devm_request_irq(dev, ispif->irq, ispif_isr_8x16,
> IRQF_TRIGGER_RISING, ispif->irq_name, ispif);
> else if (camss->version == CAMSS_8x96 ||
> + camss->version == CAMSS_8x74 ||
> camss->version == CAMSS_660)
> ret = devm_request_irq(dev, ispif->irq, ispif_isr_8x96,
> IRQF_TRIGGER_RISING, ispif->irq_name, ispif);
> --
> 2.36.0
>

With that fixed:
Reviewed-by: Robert Foss <[email protected]>