From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wr2-f12.google.com (mail-wr2-f12.google.com [74.125.225.76]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0FCE14BE43B for ; Mon, 21 Sep 2026 15:31:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.225.76 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1790004699; cv=none; b=TX5HPMAuCW+QmSXqyCEQ3ZuYDVNBAueepAr+OLDwpKJmhEMiMg3YLz3OLg+BlW9PQwed7uKvRW9nl95L/xI76UW7ElZ8tfA0g4XbqcuP0xmwhcecX+E6o+fQ12ZS4BvnIQsQi9wF+BpDxwy9ruUFycZ3WCjesNuf2GjUm9yr8s0= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1790004699; c=relaxed/simple; bh=RarTNDU+cdrtiJCRKIjHK9/KtTW/V+grsr3mpwyd0ak=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ezOeaEBVuYXfd1jkIP6xKvozKl6tdw5p6i6aY9eKiz6rmiDPDq6aaOSIRGv1p1M97zHkWdL1KpNf0K47Mj9HhaLrrrg8yKoi+2cuByoAidklG3HMd6f5856I2drFjlPD5gc4CS0IOy+MM9QMlEruDfhEGk0Y5xj6Ol70yFsUZlk= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=F5bZe2+D; arc=none smtp.client-ip=74.125.225.76 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="F5bZe2+D" Received: by mail-wr2-f12.google.com with SMTP id ffacd0b85a97d-48439feca17so2407385f8f.1 for ; Mon, 21 Sep 2026 08:31:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1790004695; x=1790609495; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=/2HAjOtO4JT6djVdWHJMgChsjtAACcDgZqmOTkPDDE8=; b=F5bZe2+DGIsLh1lWMW+1JoFZoTnTAcAH27fSI1vf6mCua1Ic2x6LPioj8UN6pwF5HF zMD18kN6TUMwltjSHvJGfeyTTqIWaU0CPczTBHKjMsWFB6HtdKE4ISSxsgOp3/c5LGji K8qFvikXhSbpv0jEjILW6u3JT91y7k8JcHUt9UsEs4px+i32AIAVAS+2/7YyeIc1Ugkl IpSvWP9GoWAMoDqEWgWwd4UkIGDN49vId7gkuDl9PF3hvJR4T2LPqG3qN7Gw1DOe1Vnu Jp+gSw3b4ozZL8r80b4LHR1kD1bIbmzPA3fcfW5VJpkKm0CBsyYsTZQIcBhFYy1dYoF4 Uo5g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1790004695; x=1790609495; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=/2HAjOtO4JT6djVdWHJMgChsjtAACcDgZqmOTkPDDE8=; b=w4EMwC6wky/2KKmSPGFBqsSrwha5PRSG/dXjWTjsZVgKux0voeRPzK8/j0Ipe+LyC9 kbfAC3/xS6t7CCXXxz5m1ZItPOl0EH+AgY/zrm7rFRUkulbAl5nKzehK4IHcxK3hJtPe w9IZa7DDW5AQlbla6vnjyXRylS4ArnqYJR2w4MFA01aNBpFz+sEl1e4Suy0RWfCXZyfi DT0d/7euSP8dOEt0qssoXCDvrnhamCsRzeStpqYF0gHFFzlGPqCqkUiGAyefH62+7V71 taERpetQJ1csSFMl3KjaIWwUdXKPkQcmLHsw6h6nKPRQvbV1wW2QNooGi15P1pwDXn5c qGVA== X-Forwarded-Encrypted: i=1; AKwUvBylWL4vmhxXP+Xi0nRAMFv3V5JSzfDySWzgobRHLlRDh9Ogm/zCboKj0MS96jVG+fAhSGU/NtEJzdfX@vger.kernel.org X-Gm-Message-State: AFuF++ls5lyp4iTzLFSmss2gJMyV/AygT4kwOcMGzn+ATV5fvHS5bYtT CNmT/7MzNzOPjjZwrCxsF2TNBsCcpSp6Nqmuy9BHWp6HRHl4h2CaTS5F X-Gm-Gg: AYBFou17eTfrRfMcKnVp6JqHsrtxGN3GmGObPjbhxmwGHRh1s4n4ssDuRRTNrBYv41Y XekdtsjmDz+G/musP0LdhIw3TCLknYl0Ks4CAu7i71whrM2IX433HiOrSPo1N6tKr3NpK6M2BsO f+k5SmECyN1lNE8CFKOHSs+W6ARlUdX6FNj1BE79RhX4Jun4mVPKx24gnNcx6ovofV5HUMLVl6m q/rdz+DxRJuFidrMEyN3R+vAMj8bAOieD9GFYU7/pNmO4rbl6V2y0wEOk0cUhNw0hRWSmqdFuPc bDg+zDXI62L9te2XYPHYGEmPpSHS+FSUVIg0EVJUgifEODmuzkg6aZd+sF3ItoihvCvmN/c0oJv jVDSVMcWxvvQtjHerofXQq0rzRTVByZuIVE4fw+z4zfniJI1WPs13V2TRSUXMB1yKX5HniM5Rfm mm2LEip4MQhD26YQ1XAXjom+Kg9w1PC1NvelS/ZRYdfSy5sPFvbLLNOOxA2aW5AFPsLMdf/X9Ge W3ZpS1C8KQxS+D2MfPCRAVdVRex3evoLIdQPPgolNiLOLgTCUjnU9bhZw== X-Received: by 2002:a05:6000:260d:b0:488:5d3e:becb with SMTP id ffacd0b85a97d-4885d3ec377mr3423054f8f.39.1790004694794; Mon, 21 Sep 2026 08:31:34 -0700 (PDT) Received: from [127.0.1.1] (lmontsouris-656-1-83-121.w82-127.abo.wanadoo.fr. [82.127.110.121]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-48724562aebsm25313835f8f.14.2026.09.21.08.31.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 21 Sep 2026 08:31:34 -0700 (PDT) From: Amin Gattout Date: Mon, 21 Sep 2026 17:29:59 +0200 Subject: [PATCH v2 3/5] media: rockchip: rkcif: add a callback for the MIPI ID_CTRL1 register Precedence: bulk X-Mailing-List: devicetree@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20260921-vicap-rk3576-v2-3-0a4582e20c72@gmail.com> References: <20260921-vicap-rk3576-v2-0-0a4582e20c72@gmail.com> In-Reply-To: <20260921-vicap-rk3576-v2-0-0a4582e20c72@gmail.com> To: Mehdi Djait , Michael Riesch , Mauro Carvalho Chehab , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner Cc: linux-media@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, Amin Gattout X-Mailer: b4 0.16.0 X-Developer-Signature: v=1; a=ed25519-sha256; t=1790004687; l=2149; i=amin.gattout@gmail.com; s=20260818; h=from:subject:message-id; bh=RarTNDU+cdrtiJCRKIjHK9/KtTW/V+grsr3mpwyd0ak=; b=AfnwiBUYc0Iwvv07IbNj4GLcQp3c8H7KT2SE4wJXU/4N3vJJhNOprP36ijMkFaowrAHFyv3c6 vPvJjApEssmBBjgqwoobVr5BffVD1PUuu8Qebca+Cabc2NfcYXvyCnb X-Developer-Key: i=amin.gattout@gmail.com; a=ed25519; pk=MSIqDPkCOkwtyP8Fns1m+KFU9SgqoDl2mpLe18vL+hQ= The contents of the MIPI ID_CTRL1 register differ between variants. The RK3568 and RK3588 hold the capture size there, while the RK3576 uses it for the virtual channel and data type filter. Let each variant provide a callback that builds the register value, in preparation for the RK3576 support. Variants that do not provide one keep writing the capture size, so their behavior is unchanged. Signed-off-by: Amin Gattout --- drivers/media/platform/rockchip/rkcif/rkcif-capture-mipi.c | 5 ++++- drivers/media/platform/rockchip/rkcif/rkcif-common.h | 2 ++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/media/platform/rockchip/rkcif/rkcif-capture-mipi.c b/drivers/media/platform/rockchip/rkcif/rkcif-capture-mipi.c index e0acb9049ca1..432f47a1fc23 100644 --- a/drivers/media/platform/rockchip/rkcif/rkcif-capture-mipi.c +++ b/drivers/media/platform/rockchip/rkcif/rkcif-capture-mipi.c @@ -749,7 +749,10 @@ static int rkcif_mipi_start_streaming(struct rkcif_stream *stream) if (match_data->mipi_ctrl0) ctrl0 = match_data->mipi_ctrl0(stream, active_out_fmt); - ctrl1 = RKCIF_XY_COORD(width, height); + if (match_data->mipi_ctrl1) + ctrl1 = match_data->mipi_ctrl1(stream, active_out_fmt); + else + ctrl1 = RKCIF_XY_COORD(width, height); int_mask |= RKCIF_MIPI_INT_FRAME0_END(stream->id); int_mask |= RKCIF_MIPI_INT_FRAME1_END(stream->id); diff --git a/drivers/media/platform/rockchip/rkcif/rkcif-common.h b/drivers/media/platform/rockchip/rkcif/rkcif-common.h index 4d9211ba9bda..f83c8099b78e 100644 --- a/drivers/media/platform/rockchip/rkcif/rkcif-common.h +++ b/drivers/media/platform/rockchip/rkcif/rkcif-common.h @@ -207,6 +207,8 @@ struct rkcif_mipi_match_data { unsigned int regs_id[RKCIF_ID_MAX][RKCIF_MIPI_ID_REGISTER_MAX]; u32 (*mipi_ctrl0)(struct rkcif_stream *stream, const struct rkcif_output_fmt *active_out_fmt); + u32 (*mipi_ctrl1)(struct rkcif_stream *stream, + const struct rkcif_output_fmt *active_out_fmt); struct { unsigned int offset; } blocks[RKCIF_MIPI_MAX - RKCIF_MIPI_BASE]; -- 2.43.0