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

From: Luca Weiss
Date: Sun May 22 2022 - 12:29:35 EST


From: Matti Lehtimäki <matti.lehtimaki@xxxxxxxxx>

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 <matti.lehtimaki@xxxxxxxxx>
Signed-off-by: Luca Weiss <luca@xxxxxxxxx>
---
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