From nobody Mon May 25 07:55:34 2026 Received: from DB3PR0202CU003.outbound.protection.outlook.com (mail-northeuropeazon11010066.outbound.protection.outlook.com [52.101.84.66]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BC0292D3A6A; Tue, 19 May 2026 02:05:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.84.66 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779156317; cv=fail; b=sziUYNiEhhIcjDh3Gu/j1txnogZrlZPU1w0ZJiJc5+MBaywNPI+BnlNbJc8W1jwahjhn+UOmdKT/yg9MUtwUmq47wpzsPCUhhWRp9ZdZeHlISMWVYqB+hcgFcdrbllA1HX3k502su3IXF9QVbdzIjuLqNiPvfMCJ+BCEcrx+ne0= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779156317; c=relaxed/simple; bh=KHgnzlejLTaZb6vU8ge+OOIIkFkxNcDnJUheiNAMoXk=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=oSpqXVxN1zUIUek3xFMJSe9Te9MNmbzR1ZdfjnTO9BifWFaBdbeUHsjwBB/0gBLt5AafyVylvOVxaO/wyZtEEukmKRsnLrX2qM6pJcVj8g1ZKxrsAL0JvtQuFNAPMga9WQrRazIVDj6+Oepj8YdxjbsNYTjkQXVKZOs716oEsSo= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com; spf=pass smtp.mailfrom=oss.nxp.com; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b=S7TC43bO; arc=fail smtp.client-ip=52.101.84.66 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b="S7TC43bO" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=P3Cv7vzcACBmDUKaQPN8xQbU/+1NXHK36ubxLKDE6WqR/Rqli97R98TA22v0Np7uD/0W4ekT5eUPFmye828/e/pYbXPkzm1gHyJyfaCRlc37QxUkO8hC55TujYNnynEkLTfDikxR0P5RFyC6FfcCkx9J5HRU5kv7Fs7OjumKHPff5LGpFyCsyY7UnCaAAxtFVSvw1Zm03PYV0eueIB+E6KnKeuzyqd6G9KKdQ2TdgJ8lJCGIXQNj/tWVRg2DLNmKZrG/Soy8JIZ+i7euNbn54EMzkCK51l+U05RRnM3tDB0crceSlcCjHMiSeaTjoWEORrmvTwBQAL0OuEMhDyhv7w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=WjHSpIMLghsWXLV6B6NMdfazwYqqDWRTqKPxpGHOYGY=; b=gA3Xi4b3TopHm1Q7hpNT3JtTx7c93DoZNsSfderGGhnLPQ8ELiD1hxuEEJmED6R82vlKWPcKxvhRU1eN5fiHGvMpHM7zc1Zqlt9aqJSpxdJKMdJI1AzPoBsozIpoTbhX3HgXWK1QcsIH+gRr3mWaL3mBd2e3HIaTgsYmIzXibVCH/5NCnR1ZtAMciWcr+B2kznH6lYtsCVNDBaylGSfprrpyVh0C0XMCIVFnTII725k5ANlmXBbhxKbph4AWOwKQt8V+9MGUYeAA/bk3p5CimhjaGIbb6DeHGEXxmxoet+Y5Gq0tIGH+7qCTE5xzu3uQcWIcO1qVhUYif7BO5OR+Fg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oss.nxp.com; dmarc=pass action=none header.from=oss.nxp.com; dkim=pass header.d=oss.nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=NXP1.onmicrosoft.com; s=selector1-NXP1-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=WjHSpIMLghsWXLV6B6NMdfazwYqqDWRTqKPxpGHOYGY=; b=S7TC43bOer7bkO1m+/Il3EZqVncyIlpv82AAxk0k1XjhqadLqQg52qv/l1qap+u28yBsbbEvWu+UP88lsGgJd5n8cekIOtTbUl/ANeUYxiOK4XkylVspCH7soxHr55FsZE+BXG4PMfLiDo4BT7aut+4TKzwJNzWbFwlhOz/UhW8rrnWbSfoDpiorTWxTA18SLTQvg6k9/74Olycod3c48FpfL/U7nOJpZJW9Slp9GqtAZyANmcD4ml8v92qBhOGnCf2+x8dr5uwMZwdmL03NdcjLoTIjRtPoAA7C/soR6Qy73YuSJ76F+5DDcXFIAFZ6avKp2VJKLZ5pNX/CqhUnng== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from AS8PR04MB9080.eurprd04.prod.outlook.com (2603:10a6:20b:447::16) by DU7PR04MB11139.eurprd04.prod.outlook.com (2603:10a6:10:5b1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.25.23; Tue, 19 May 2026 02:05:11 +0000 Received: from AS8PR04MB9080.eurprd04.prod.outlook.com ([fe80::92c2:2e03:bf99:68eb]) by AS8PR04MB9080.eurprd04.prod.outlook.com ([fe80::92c2:2e03:bf99:68eb%6]) with mapi id 15.21.0025.023; Tue, 19 May 2026 02:05:11 +0000 From: Guoniu Zhou Date: Tue, 19 May 2026 10:07:38 +0800 Subject: [PATCH v4 1/6] media: synopsys: Fix IPI using hardcoded datatype Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260519-csi2_imx95-v4-1-84ea4bb78a88@oss.nxp.com> References: <20260519-csi2_imx95-v4-0-84ea4bb78a88@oss.nxp.com> In-Reply-To: <20260519-csi2_imx95-v4-0-84ea4bb78a88@oss.nxp.com> To: Michael Riesch , Mauro Carvalho Chehab , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner , Laurent Pinchart , Frank Li , Sakari Ailus , Bryan O'Donoghue , Mehdi Djait , Hans Verkuil Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, Guoniu Zhou X-Mailer: b4 0.14.0 X-Developer-Signature: v=1; a=ed25519-sha256; t=1779156481; l=2490; i=guoniu.zhou@oss.nxp.com; s=20250815; h=from:subject:message-id; bh=KHgnzlejLTaZb6vU8ge+OOIIkFkxNcDnJUheiNAMoXk=; b=/Gcvhx5HfwTBlm5tdf4lLNEzas7rH5F4L1ePUMsuonZgnjDEsh2awKQqUgKXkNZ6/sYaRc4im DBDvO5WfeN+D9wgTEU2FdsZ4tMJmJOzWpGgpAsA7veM/cxDOpFJbyvL X-Developer-Key: i=guoniu.zhou@oss.nxp.com; a=ed25519; pk=MM+/XICg5S78/gs+f9wtGP6yIvkyjTdZwfaxXeu5rlo= X-ClientProxiedBy: SI2PR01CA0011.apcprd01.prod.exchangelabs.com (2603:1096:4:191::6) To AS8PR04MB9080.eurprd04.prod.outlook.com (2603:10a6:20b:447::16) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8PR04MB9080:EE_|DU7PR04MB11139:EE_ X-MS-Office365-Filtering-Correlation-Id: 84398eb4-b790-4f48-4e9f-08deb54b0f2b X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-LD-Processed: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|52116014|7416014|376014|1800799024|366016|19092799006|3023799003|11063799003|38350700014|56012099003|22082099003|18002099003|921020; X-Microsoft-Antispam-Message-Info: KSYZI80eiSzbTZ4dVxZUmhIUYeiicku409j/IIpYDNFYTQyqkHpHUC/ltD79cf6rt8gfXs/YLSqYM1k/MM1rl0enhe1RPNyy8y+QZQT6gFfSDRmLU9wPCu9Srb7nLMsuahWEa18BWGFH9oUQwVIt1FfrOguLEQPN/NgsYZkZngdfh8mOv+5gM4bnCA4b0Jn5WGai3344xoPUbZGM82R0/jtD/NcHeWsWGoRNybu9eeTvqB7wrek3fw/lSUhtDYgsFwsYmCm06+brOPrjOFXjXrMeX+22Xuz6eW5Ce4UI4NeivYiSnPOo9JMTJ5IHv4B1rgMtHZJhbtdTH4m4S8mVkSGzir3/FZeSH8tW0DzN0JU/ZcXUo1cejgezzcabjeAwXyAHdCPKLWtQ4Nxi7rOLKO3GDrYkeoeDZR3SQjrago39wFxKsoMpGFJbiYit4Xs/QwWNwh4e8D1cMqYarFd6r4StrkjR1GhO4yDgyAutxfRIg5jzbLCr3WhMwty5RurgKe/emNpANupc383dLUwkX23hp5dsd5bpcXn4RLsKadXY6jqgx9N80xlTFdXq4wuK68K616gN8ph42ZDxaXGAkuL4UMZfP3rmR/dCWVP6r91qvKj0dnLo9DUfkq3B3V1Wsnt9O1nrdKEEwWBift7rHacWSXB83a4sZ6MH5g/mxL3lTzIcDq7clsoaH9d1FQ5pLSdNoGiH7lLoi8SLvz40fwb5q+T6l9kT0wzk5uYW/X+auPEj2EkkzjW/7O0eOXbbS6EmbcvASrG01IOPdOkkKA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB9080.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(52116014)(7416014)(376014)(1800799024)(366016)(19092799006)(3023799003)(11063799003)(38350700014)(56012099003)(22082099003)(18002099003)(921020);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VjRnbUFKRVVKRGlyU2ozeUdPL2RCdmRkNHNKYnNoMVFUSzE3cTZSTmI5OGRv?= =?utf-8?B?VURSdUwyUTdyRGtaMHlWdElXWXNoMFA4KzlJRHRLdWZzdnpsTFRzNVdoNVR3?= =?utf-8?B?TDdkazE5VjJaZklhWHFXY2FIdzV1WkVxNXFIOEVKdjlNVnFKVmhTbk0zQmRP?= =?utf-8?B?R1NVUU1tNkVRTVBHODlpWGdCTnFjSjZyeUM4U1k5UnQrcGNENUdmSjVZS2Rz?= =?utf-8?B?OC9nZ3VZdEtpTEdORzUyVmQzMUduZVZ0SG96c0YvNTRSN0RrdUZFUUZlODQy?= =?utf-8?B?aEdabVY0OFhVRHkrSjh4TUtRQVZ1alFOblVuSEdIVnduc3VLY2NyRjkrUlFS?= =?utf-8?B?Q0lRYlZmSzF3SDY0R0VaUE1Yb0oyN3Nkb3hSU1RUUzJhSG9RYUNRM1J0bkQx?= =?utf-8?B?UEJ3bC9YZWxicThCN3YvODMwdjVCTXdCUXkzblFKU0I0WjVqVVplc3MzcFdF?= =?utf-8?B?SEtpbERzSE9aOUlBdUE1aS8ySjNlM2lMTWVsdUxZL3RvWGxrbTZ0QjVIbjJK?= =?utf-8?B?YUQ0dEd0MUc3eHc1UjhkRGZOM0JmU1pDcW1lWmZaZG9GbWhTY2xLeFNia24y?= =?utf-8?B?b2RRc2hvZ2xqZ1YxZWUzRk9Jd2hwc3lyK1hpV3F0NGlXZCt1RmQwK2hWOUM1?= =?utf-8?B?bFIxMWVOaUcrZ2c0Z0VHb0hhdW00VVRZanVEMklEdVZMMHc1QytxbDA2NjMz?= =?utf-8?B?RFRyWGJsMG1BZlVKUHpPMGlXcWMrU200c0JUV0JvUDJNOG9BSG1mbUxVdWpo?= =?utf-8?B?anp4UWVidlRIVUs0ZXpKVVBkaVFNYnVTNDlyNkZHdzJqMGhMeWM5eDBiUDB5?= =?utf-8?B?N0Nzazkwa1dDSG1vaHFDSENwZEVPckV1VXZQRzhKeHFnMHNraXljYWtIYm96?= =?utf-8?B?Q25IQ1FOOXBpRGlrWFdSaW5pNTd6ckVLYnpZTkdoMHhlTlNTdDJiWnFBR1BW?= =?utf-8?B?TmE0bDAzS01tOUEzMUlMZ3dvK3hrVWwvTmhYZDJUTCtHc29wYVdPYlMrOWwx?= =?utf-8?B?UzNtYWRMRndPRm0vKzl2amhuK2oyNWtmbUJLOG8wamE2R1hzQ2tZQ3ppK05G?= =?utf-8?B?alR2UjdlViswSzZnYU5QdlR3R05acTFyc3ZPTkc2ZU02UmVYRmJiSzZuUk5p?= =?utf-8?B?TCt3Y0lpU2JHbGNKUU1DTDZCclBHanRIdDd3aUdTOVVDbkEvbWZlS1pZRW9T?= =?utf-8?B?SUd2aVFFYTlzdkNMWVJkeDZJRlRMZ1RhcUdBbCs2bFRtZWZEUWczcHU1Q1BF?= =?utf-8?B?ckJSTC9RYzFWd0JpNEtVRytvV1MwU0pXSUZkZGZEMGY4OC9KZ3ZLZTFuczg3?= =?utf-8?B?TU5ubmVZeVZVWG13dWlVbjVGQmFtVXk1cDczZGIwRE8xU0QvRXpHRGUzdVEr?= =?utf-8?B?dXNJS3grMVBFYXFXcFJaRmdkcHdxYk0ya1RXQ2hJV1hzNjZ1bllXWWxxdFU1?= =?utf-8?B?eGFtK1pOb2hRVUI4VUNWd2JXbmNoOWtmQ09oVGJUNDhBQkM1eGRJZFFiQ09O?= =?utf-8?B?SENxVkR2MHZGRDUwYktvNE0wRmhyeGFpWkJyVitSeDROYndXSHdjdUE4M0Jm?= =?utf-8?B?bStOOUI1UmkzeUJtN1ozc2hDSEUwTytUSWt1ZkJMOHRlYmoyVlRBbnVodEgv?= =?utf-8?B?Sk9yTXZLaitEbjdWTjh2Q213MHUzWDMxU2N0Y1F1QWN1bTZpd3p1K2lMdE5h?= =?utf-8?B?OU9TSitGZ0xNOVduK1dQaFVyQlFaRjhUNm9KTjRpdXBCWjkvZWJaZ2ZTaW9a?= =?utf-8?B?S2I0REdpbkpPQ2MzOEtnOURlcHU4SWI0ak81L3Zqd1Q3MFgzQlE5aWszczBJ?= =?utf-8?B?R0lneWJqMmZXZ1psc2lhZzNha3Y3ZXhRNFdxSDlnMUVTblBDeE5Ddldva0dz?= =?utf-8?B?V25TYk5IWDF0SUtIZWJvTytnSGRYYmZ5ZUs5SHRpN1I0TFZuRTBKT1lvTFo0?= =?utf-8?B?SFlaWFJoYlQ4b2tnZTF4em1hQmJBczAvUVh1QXIzNi91MmtLR2dZTTNrR0xX?= =?utf-8?B?QnhkSWVGb0E4UFFEdk1IQ1FzNFVqZ291akkyUDJZeFhwVER4UDFJc2dMRlF2?= =?utf-8?B?RTB2M25kTlQ0YUExOTRsMW5uNmpCdng0RVBZSTcyaGorSzBOUm5aZzhyK21U?= =?utf-8?B?cnVnRUg3Vm0yMVhsZE5DZitCV1ZYbjJyUW85cmQyWFoxY1o4THZ6b1pYRVZO?= =?utf-8?B?WnVoZTlLNlpHT1Nld1pnczJnVmxiTkE5Z2E3UVlLQ2liTmRTanhGdFZrbjdn?= =?utf-8?B?UWtSaXZSYU5yWHJId2pndE1QYngzaHZrNU95ZWpWQUZZam44ZjRsMkc4R25Z?= =?utf-8?B?Rlh0ME8vR0RYeFJ6d3cwcFdkZjVHaDhsUDMzbXBnWnQ0emIvREVidz09?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 84398eb4-b790-4f48-4e9f-08deb54b0f2b X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB9080.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 May 2026 02:05:11.6280 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: OuI0tPTNfDBJ9mpJrQj/NfFsCGCzpJhbLeA3hqWbouOwVlAvE++447tCa9bDX6C09PzOGbW5bd9/9OEkKxpv7g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU7PR04MB11139 The imx93_csi2rx_dphy_ipi_enable() function configures the IPI datatype using csi2->formats->csi_dt, which is initialized during probe but never updated in set_fmt(). This causes the IPI to always use the probe-time default datatype, ignoring the actual media bus format negotiated at runtime. When userspace requests a different format, the IPI hardware is configured with the wrong datatype, resulting in incorrect image output. Fix by updating csi2->formats in the set_fmt callback to reflect the currently negotiated format, ensuring the IPI configuration matches the runtime datatype. Fixes: ec40b431f0ab ("media: synopsys: csi2rx: add i.MX93 support") Reviewed-by: Frank Li Signed-off-by: Guoniu Zhou --- Changes in v3: - Fix formats array out-of-bounds read during enumeration - Add NULL check for csi2->formats to handle unexpected format lookup failu= res Changes in v2: - New added in v2 --- drivers/media/platform/synopsys/dw-mipi-csi2rx.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/drivers/media/platform/synopsys/dw-mipi-csi2rx.c b/drivers/med= ia/platform/synopsys/dw-mipi-csi2rx.c index 02eb4a6cafad..0b80e84983f9 100644 --- a/drivers/media/platform/synopsys/dw-mipi-csi2rx.c +++ b/drivers/media/platform/synopsys/dw-mipi-csi2rx.c @@ -311,7 +311,7 @@ dw_mipi_csi2rx_find_format(struct dw_mipi_csi2rx_device= *csi2, u32 mbus_code) WARN_ON(csi2->formats_num =3D=3D 0); =20 for (unsigned int i =3D 0; i < csi2->formats_num; i++) { - const struct dw_mipi_csi2rx_format *format =3D &csi2->formats[i]; + const struct dw_mipi_csi2rx_format *format =3D &formats[i]; =20 if (format->code =3D=3D mbus_code) return format; @@ -433,7 +433,7 @@ dw_mipi_csi2rx_enum_mbus_code(struct v4l2_subdev *sd, if (code->index >=3D csi2->formats_num) return -EINVAL; =20 - code->code =3D csi2->formats[code->index].code; + code->code =3D formats[code->index].code; return 0; default: return -EINVAL; @@ -470,6 +470,17 @@ static int dw_mipi_csi2rx_set_fmt(struct v4l2_subdev *= sd, =20 *src =3D *sink; =20 + /* Store the CSIS format descriptor for active formats. */ + if (format->which =3D=3D V4L2_SUBDEV_FORMAT_ACTIVE) { + csi2->formats =3D fmt ? : + dw_mipi_csi2rx_find_format(csi2, default_format.code); + + if (!csi2->formats) { + dev_err(csi2->dev, "Failed to find valid format\n"); + return -EINVAL; + } + } + return 0; } =20 --=20 2.34.1 From nobody Mon May 25 07:55:34 2026 Received: from PA4PR04CU001.outbound.protection.outlook.com (mail-francecentralazon11013006.outbound.protection.outlook.com [40.107.162.6]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CA75827A133; Tue, 19 May 2026 02:05:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.162.6 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779156322; cv=fail; b=brkzOh6HHOW1uRDy4jIhm2DdGngM7ddZ2uVoPHKtanqKmkS44kW/etNIvyVR+iMyY5OyfDvMLoLdvqD4SjHy1OBwpIl3QK0xmQ6sJgliKP/9QucmBqTNc4Mryg6eSq3uxzAwhGiWIkHL+7Xvnrm5zgvjdd6skFid1Ya1U2sogdM= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779156322; c=relaxed/simple; bh=gTGgNuPQLiZHsNbt1aIGfhNfVgG9RhDn2rIQ3XGEZMg=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=uOs8u2REhV58yaRxoi6DHgSdfiF+wzWXWM568mTB8bL5HZ0CCuylruVSUNZASqW30SCm8W3qxbgbylS0URSPCgDqb19uMgORfHFYNFjHychJK7kaAy3BzEksoX17wdlGI0K0rb40F5njt9kmqj3I8wj3u9tNYG8IOPNb0jvx8XE= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com; spf=pass smtp.mailfrom=oss.nxp.com; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b=pkh38ein; arc=fail smtp.client-ip=40.107.162.6 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b="pkh38ein" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=at3w7+E/6/amHiXiXetB/ZpBQT8Q9G8aBGbz5CQ6suwgk3PVZMyRFmYmgVwiLOZ6tfl48H/qHaujMMjl4vF3ZnZMXkVGCpdz8Woaih6PTRERBUAPorBVXuTyrtt45iCdgoMhvB/4J1I10bteKISYT8GlA1FMSO2LqcTq6ziFCFofVnCpz/iLst8c0pFqmr3M4L4JAxZj/IXUvSq96FCZaRAuymqJyUpzBOtpvL4k09uS8F46B8aeyxTzDdDrrtBkVMOedvmdkSYV+u7x05wgRem8QQyG2XMS5oIUCL8Tv8M3KZ/7DlvvzWuZuvnVHVsZCqzETdqSKnbzHWadX809EQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=LAX47NA+H+Kr9loh4CJH6zyL2Ytbc582ZlKTBywjDVM=; b=LYCO8H8W3iXw/rRU7bp0sQgqesIswLRGShn7IdwkQ5d0EjuzG0xeKVQ7db7fEPBUnH/a+JMuC94lBrekJcovgdp7YHUGjdzsOjL9hriCRERgv4pne0rerNt0qMqegVd2/45HpzJS/6GcOlsAnZIhqzpOKACmQJekL3iV4Csb19tTcgKwhDf3LHxXniYpUR0zO7z8NQnauvYKpJAbe/xtAI+tlmSvd26ETYOdXFp988m+cKGJlZesLibMRA6ZnH8sqnbgAfGYfDD7YsWuRb2tZra2aRaWLGh/zvzgQWX1VFlY5ykzmUAR+5d2YME8AZVmgiVV5n3eGQbnycuJxORcGA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oss.nxp.com; dmarc=pass action=none header.from=oss.nxp.com; dkim=pass header.d=oss.nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=NXP1.onmicrosoft.com; s=selector1-NXP1-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=LAX47NA+H+Kr9loh4CJH6zyL2Ytbc582ZlKTBywjDVM=; b=pkh38einxOTTkHKL7/bbhnqIvgQ+kyTgiPsqHoE2dmEGX2O2iE9dT7qUbUNwgIECP2o46DD5ZTqlCmqZcs1NU59gvsvUSbdq+XzqvT3lB1PsAIgMApR7q3bHo/iOm1Izkejj14MkFJnWpkVNAjtM9J2QU7f3Xa2n/TXFFO5aFYbHm+dJ9aHRad2YQ1ZFmy4kuOhDS2k0w4sd2VXC9koxtD3cBoYFg0Aelykk0xEmaS+8tjhXxfxtvdxNKLrISLHdM3rqqBKjBqBjSRdel/8rB8TOKnOvFVqAxVPA8Cir73v9Y/uWahDe8/9uldAmo5Wzg+hgKpjcaDhKdAGsGvxwBA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from AS8PR04MB9080.eurprd04.prod.outlook.com (2603:10a6:20b:447::16) by DU7PR04MB11139.eurprd04.prod.outlook.com (2603:10a6:10:5b1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.25.23; Tue, 19 May 2026 02:05:17 +0000 Received: from AS8PR04MB9080.eurprd04.prod.outlook.com ([fe80::92c2:2e03:bf99:68eb]) by AS8PR04MB9080.eurprd04.prod.outlook.com ([fe80::92c2:2e03:bf99:68eb%6]) with mapi id 15.21.0025.023; Tue, 19 May 2026 02:05:17 +0000 From: Guoniu Zhou Date: Tue, 19 May 2026 10:07:39 +0800 Subject: [PATCH v4 2/6] media: synopsys: Add support for RAW16 Bayer formats Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260519-csi2_imx95-v4-2-84ea4bb78a88@oss.nxp.com> References: <20260519-csi2_imx95-v4-0-84ea4bb78a88@oss.nxp.com> In-Reply-To: <20260519-csi2_imx95-v4-0-84ea4bb78a88@oss.nxp.com> To: Michael Riesch , Mauro Carvalho Chehab , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner , Laurent Pinchart , Frank Li , Sakari Ailus , Bryan O'Donoghue , Mehdi Djait , Hans Verkuil Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, Guoniu Zhou X-Mailer: b4 0.14.0 X-Developer-Signature: v=1; a=ed25519-sha256; t=1779156481; l=1267; i=guoniu.zhou@oss.nxp.com; s=20250815; h=from:subject:message-id; bh=gTGgNuPQLiZHsNbt1aIGfhNfVgG9RhDn2rIQ3XGEZMg=; b=8QCAmpKYfiOJRVDkr5kWlSHm39k0aEoXMzXtNdYMeiVabcgQ5lafCNK/hNxLo9T6JVFZa+Kqf DYWnCo/bpdgAeZYG9RtDjbaNYGN2ebZrZcIQKWv5+5coHlRuezpNUWJ X-Developer-Key: i=guoniu.zhou@oss.nxp.com; a=ed25519; pk=MM+/XICg5S78/gs+f9wtGP6yIvkyjTdZwfaxXeu5rlo= X-ClientProxiedBy: SI2PR01CA0011.apcprd01.prod.exchangelabs.com (2603:1096:4:191::6) To AS8PR04MB9080.eurprd04.prod.outlook.com (2603:10a6:20b:447::16) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8PR04MB9080:EE_|DU7PR04MB11139:EE_ X-MS-Office365-Filtering-Correlation-Id: 65b2fa02-2e68-4fe1-b896-08deb54b1287 X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-LD-Processed: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|52116014|7416014|376014|1800799024|366016|19092799006|3023799003|11063799003|38350700014|56012099003|22082099003|18002099003|921020; X-Microsoft-Antispam-Message-Info: 84Q2eE0ih9v/0kGrpVezJ+ZRFhpZ3kUpLP+WP2AoVule6CCtGNi4NpqT5Y4w7wGuPRbg8gswkqjKUQnMlZzccf9nObZVCVJ//4zqFXXtMBDjFaQVMg+62EUIb4RHpcNDBGW8kOO56FZK8rRxs3qbfG6DHBFAuX+DrFeWCNKIiM8+Eo7W6RUopn0W5lNbBc54ydFb5rb8EXBk0EAPXNW4OZqn9wQkeiHGxn4iwiFnV0QkFaJe9ouxryE9iPODAeWS4OFuu/XfHKNyfajgWgDCxjSzN9ToDCNRtcm+Yp2mpiYRLz38bGI6+FOwOqGNWc8fbuLmiwsGoqzbqJCWIwUvpWylJbq0QbOwEJfhUxiRgJutnPuv0QhqifpTl3cXPG1m8vJibOqGMg6NConC0pHld/1P3IERk8nxhl/OOY2iI+F9QoZLtPFxlJcZtEqs1uGcDjhVnd2xAEhiTq0MwtW5yVEXXjD3ksx5tkHC1+rPTsTGLx8HyKeFhHYD/f7lesb4mmzBIpR8/e8UpViJzitl64lh5AOY8HWHihctMtdvdUPUnXPGxG/5+MloKY1WeA1bNrNU4Qpy1hwDy18PgdIDQmIcLhD3HVB+jcQKmfw/SINBwnlmdHpKrPhCCSZ7Gbz57fb3zUR2lFoDCxPfb/mIVgE6gaPX4U90QFhBqvJxBvYzEGh8ICGHOajmXtPyJJgfzzsKoOhLVbhfD8SnBhHL7mgS1CM4kNvacH75eEH9srD2gk1ZqUefvC49ji3BnNYQYcB6KkXD1O9no3UyiJ1Q7g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB9080.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(52116014)(7416014)(376014)(1800799024)(366016)(19092799006)(3023799003)(11063799003)(38350700014)(56012099003)(22082099003)(18002099003)(921020);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?YjdmaWNRYWkrVGtSU1RORGM1VWlQSHZUKzR5T05xcEg3K28rclNodFc1RVFI?= =?utf-8?B?blhLSmdjUGgxdVBnR1VVYXZLMld6a1hOeGozWDVETzZLbWdMb3g0a0IxRkd2?= =?utf-8?B?TGI3TCtsTFphb1ZtV2x1SGJzUXdOWnpOOTJNciswcXhLLzJ0QjB0ZUZrejBH?= =?utf-8?B?anFqVGpnMEJFL3REQ2lOM3NEN2t4TnltYy9kZTNibndOR2RLOWlFNGpjRlZu?= =?utf-8?B?WnJJZ1VNenVETEhKaHZGVzZBZWJOL1lrUnhzajlFcEtPd0x0MDVwbExCUVM4?= =?utf-8?B?bjl1am9TM2x1dnhJUFpST1RvYzMrV0Z4Zk5UL2NMakZHOVFKcXNCVWZtLzJS?= =?utf-8?B?c2NzR2JBcWxQWG9ZSG0zZjFkTG80Ukt5cUhOWnczdWdrYmpJaWhLcW14Qk1H?= =?utf-8?B?R1JFbU4xQnU2Y2duRndpUFM5N1lEdmdqa05MNldSWHpmTG1rRWc1Q1dVZWxH?= =?utf-8?B?dVg0SlBtRlhBYXZKT2gxQU9wWXo3NFRHRlF5bXQ5cTN1NDd3SHlCcEtiMGty?= =?utf-8?B?akMxUjl1d3FXbDJzQ0lqNTMweUdkZGtmUm5wNjRHTUF5OUpERWZBODVVQTk1?= =?utf-8?B?Y29yUzRLa1JOalloaFdZSDlTdkFwMmZKUVMycUNCdUU3MEhkRWtsMU9xMTlJ?= =?utf-8?B?azRTV2NUcXY5REV4RkFRbld4dDNtQ2lVd29BbWloK1k0Z2ZpcGRtMEpVbXRU?= =?utf-8?B?dzVnRXdXcDlCbERkWmVVMUwvZWlvbzUxVWpLcXluZXdjcjltR01xUmhicWsw?= =?utf-8?B?Q1lTd1BGaUFCZ0NXYlBGRTBrUWlqL0JycnkyNkY2VU5uNk5hMGtTRUdVbXB4?= =?utf-8?B?Qys2U2hzNXRvejVkR1hpN0JrOWhyY0JIOEkrK1JGN0dMeUl2ZmE1T0lJNFNo?= =?utf-8?B?RENJVHVXSkxFTXFsc1NmalQrWElWVWFNdE8weUV3TXBwa016QjJBY3VHTzJv?= =?utf-8?B?Wk0wV0ZmcFBPTmxlUGhTSHBRRDJ0VTdzdy96QlZCSFlLZkY2NXBJRnlyWWlE?= =?utf-8?B?a245R1pUSUdESjJESmZ6bjlvcGd6dk1aOUVRQld0akRTK2VaRjA3bENWTlNG?= =?utf-8?B?WlZSOWx6eGxDT2JSZmx5ek1zbG83SUFveVluQ09FZndvM0Q3Uks1NjliRnhO?= =?utf-8?B?NUNoSEdNZzFBZmtTZG4zL01nNHBYM2x1OVF0UkliVVQ3QkN3NXJxZkl5Zkly?= =?utf-8?B?VkFQelNIVjV4NHVNMWU5ZnpNUXFZKzN6V3dqWTczWE1UNFBWZGQvanVFL3Fs?= =?utf-8?B?Ti93OE9yZE14MlJIa0QwaWNVbk8vN0VQUlI2dU1CbkZpM0E2enFqbjJPZngv?= =?utf-8?B?eDFiS01ZNHZxS2ZWalRwVjFBWTZGaE1WQXU0cmphc05KV01Ia0FSY1pxZ0lo?= =?utf-8?B?SmZLRTBnT09DTm9OSGJibFUyV3RTM0VBOTBHcUViK3JaTTNOWnU0cjZ1Mmw4?= =?utf-8?B?M0hSRWoyUVZXRzhoRU1qQjVkd2VYOUNldXAyblZRY0poOXNIc2xzU1NGWU1v?= =?utf-8?B?NWRtbDMrVVZVMS91ekRLSlBxK3JESGhiSXhHOXh1M2x6dXh5TzVSZVJYbUcx?= =?utf-8?B?N0ExamtWN00xMVR3Yk1NeUpuYzM5UW9KMGpCdTByZkxGUCtzckNtRytCZlNW?= =?utf-8?B?eXNTVUNlWGlmaFRKZmZHRUgvc2RJQTBnWWZLNzBtNFpsQ0Z0OTA3RTdxZFc1?= =?utf-8?B?OWkzNW1reTZ2by8ybGRVakVxMkZUUW9OVUZScFlTQnlRUnBLSUZkemZqb2lK?= =?utf-8?B?MXdaNW1YMTFnbFpac3BkSEwvZ1JiYVFuajk0RzFtcGo2Q1ZmcHJhU0pJNCtI?= =?utf-8?B?d1o3a1BmY0dzck9IZ3FQS1lwTk5RQVNUOUJ5a1hZSng0US94UjlEWnhGdDRR?= =?utf-8?B?VDQ2ZGV4bExObGtQZm5rNUdiYUl3bWswaytLcEZpeE1PZDF2YkFFcEFyTE0v?= =?utf-8?B?NHVmK0lETW4xSEFzNWlaa0k2Q1RVUGZRM1FRbDBrVVpTbC82MzJJZ1NZMHlY?= =?utf-8?B?TnViYnF0clJ5bTdHWUJmaFdGZWVJaXJCaWpycWdtUTIydWcwa2k4R0Z3L05r?= =?utf-8?B?Zkh0bk9UaDdVVVM1V05wNGJDajZ3Z1UzZVNaalRzN1JZZWhGTmhKbVErTisy?= =?utf-8?B?bzdzREw5TTJoVkU5ZnkyZTN1SnJlMERMOG5kb0hXRFdOSzY1My9oSjR3ajZ4?= =?utf-8?B?SzBXLytwa3NJeXJpbm9waGN2b0hlbldabFpkSFVtMEVBZ2pDbHllUlBEdHdJ?= =?utf-8?B?Smx4M3ZzbjZrcGV2SjdqaUJRRG9TV0w4ZnFkajJ1R1JQaytMbzhERWw3d2My?= =?utf-8?B?OUI0RHo1QXVUV3VOem9lOURNVUxBdmhmZHRBcHVtZ05BejA3Tm1LZz09?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 65b2fa02-2e68-4fe1-b896-08deb54b1287 X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB9080.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 May 2026 02:05:17.2321 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 0bZQGQI0vodxa5KaSHtn0XiUQeZA+ia44TumwWPPx8My7pj/8aAuNnKCtalpzn2ts+rJokryRviq9oRzD9CMkg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU7PR04MB11139 Add higher bit-depth raw image data support for the sensors, which supports 16-bit output. Reviewed-by: Frank Li Signed-off-by: Guoniu Zhou --- Changes in v2: - Update commit message --- drivers/media/platform/synopsys/dw-mipi-csi2rx.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/drivers/media/platform/synopsys/dw-mipi-csi2rx.c b/drivers/med= ia/platform/synopsys/dw-mipi-csi2rx.c index 0b80e84983f9..f45466ede2bb 100644 --- a/drivers/media/platform/synopsys/dw-mipi-csi2rx.c +++ b/drivers/media/platform/synopsys/dw-mipi-csi2rx.c @@ -252,6 +252,26 @@ static const struct dw_mipi_csi2rx_format formats[] = =3D { .depth =3D 12, .csi_dt =3D MIPI_CSI2_DT_RAW12, }, + { + .code =3D MEDIA_BUS_FMT_SBGGR16_1X16, + .depth =3D 16, + .csi_dt =3D MIPI_CSI2_DT_RAW16, + }, + { + .code =3D MEDIA_BUS_FMT_SGBRG16_1X16, + .depth =3D 16, + .csi_dt =3D MIPI_CSI2_DT_RAW16, + }, + { + .code =3D MEDIA_BUS_FMT_SGRBG16_1X16, + .depth =3D 16, + .csi_dt =3D MIPI_CSI2_DT_RAW16, + }, + { + .code =3D MEDIA_BUS_FMT_SRGGB16_1X16, + .depth =3D 16, + .csi_dt =3D MIPI_CSI2_DT_RAW16, + }, }; =20 static inline struct dw_mipi_csi2rx_device *to_csi2(struct v4l2_subdev *sd) --=20 2.34.1 From nobody Mon May 25 07:55:34 2026 Received: from AS8PR04CU009.outbound.protection.outlook.com (mail-westeuropeazon11011020.outbound.protection.outlook.com [52.101.70.20]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 504DE2DF68; Tue, 19 May 2026 02:05:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.70.20 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779156327; cv=fail; b=T/CZ/+1MgwBW+PuRgTU/MAKErFoZ1pmT/ZHhKmhKUlYxLC5XXSA0pFcFzR6N0dZA3UenVNaQtxI23147Eyae/127otWnURtt8r/FzG711MWq6Egcv/oA3KlpE0bMte6Wv8WIRt+hfJM0kZtD5Pik+LOtfcqTNx7kgx5VOCAVrLU= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779156327; c=relaxed/simple; bh=Ac4dI1IhT+SkNe1AR3Dtik0ILr4E1k6RHymUVMlr5FM=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=Sbz7gK0hxUDOrAb5qEbM8OTQUzous8FCUFzs02xUOiWak6zd1CkmZY/UGb6G0BCVR7du58J6bOrCHCDzyJaRCN3PzKDrTu4+TJqorbsOo0YF4yZTepB/0GCotQ7xIZyLEQ4sqD7f35rEedIMTKF7Ls/rr3KG6WMoYiyusOcVzcI= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com; spf=pass smtp.mailfrom=oss.nxp.com; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b=qAltAGaX; arc=fail smtp.client-ip=52.101.70.20 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b="qAltAGaX" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=qfCiePrBoih6YQHDrOQJRtKMOCSuu6OkSkkJ7w+Ox3QxpWFjqNwFzDcRITh1/7XP9j0nkAvmlRab3kL1yIN0cJKl9rBh4Yg65hPGeVmpvs189myS6gmjZXDuAbdKGh053fqZR7SVkONFiObtLtL4zvgsxma1SjADb4cDRtWkuBUfiAeEJvjCFTRMQ9jgj/F+2Qs9MqoaIAuYfRS2scQUbc2J4kOZQ6Vy0KOsmoBgFf/ByJ6I+yMTWPkt1oaUnRCAZwJtnH3ErwgyeggmjVuJMVLujW9BOC28TuH57eRt0E0aoPJQt66KHUzLHK76cWsDmkioUt9HA5CTGs2pfOo38g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=7TeNWq3Z+t+OhqRO+5qtu9+iGutiISTPerWZzvjOdF8=; b=t8OtbXIROaycmq1aJKwJE7Wx8XAgduUe0+YsudEk/nuR0AMq1vAmTfNjpy3Nvn8D6YAw8/WqwaIIKYwHAfQCPOv1sDkatjlVpMyOhixk+1id8QtcgSMV2uV8SyN804Q/xf5MThPPWhMjXtue92czCtsb67XO4psn2ptmr7OBokhlY29M94NLUOjHZGIKNaACDang8D7CCk/gGpLI1WHnqb/+w9jvhWewwRjHqYNZRIvyins1dmSNOcLr0xBRuPZylgknvwQKWHF3HXFL/58a+HKv+rgmiIipAKR4kVOFjX6Q+5IPat0iTs17OL507ypMWUEwbW1eflZ7CjaEd9+E8A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oss.nxp.com; dmarc=pass action=none header.from=oss.nxp.com; dkim=pass header.d=oss.nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=NXP1.onmicrosoft.com; s=selector1-NXP1-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=7TeNWq3Z+t+OhqRO+5qtu9+iGutiISTPerWZzvjOdF8=; b=qAltAGaXVM2gQYq/KjmvST3yfNzGeRTgi0X7ELDJuMYgT8/92UZ7l0jJo4CK8YFlkhXNz7tYzh1/2dzGD5rM7XEUqmU7CwfmzyiDBvaoy1jgnZ41sJE2mFGJkKmZsfZseG5s86EtyDsKW81ZmHTyKD89pZax4ImrfWKaoT45bjBHjIM7y2Vclh5nnLn0JR/bagPWADTs8SfsWCZ0Yc60orWJe1QbonOSDSufRklnh5k3GCOb+TeXT9dB051w4S/iwWf+AwAywp7YMPnoKD/LI2pjolra4g3Bud47O+ulNVFvOvKtJNjSEbhCBKR5TNn0sQCj6ZPpjECO+BK58SiJHg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from AS8PR04MB9080.eurprd04.prod.outlook.com (2603:10a6:20b:447::16) by DU7PR04MB11139.eurprd04.prod.outlook.com (2603:10a6:10:5b1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.25.23; Tue, 19 May 2026 02:05:22 +0000 Received: from AS8PR04MB9080.eurprd04.prod.outlook.com ([fe80::92c2:2e03:bf99:68eb]) by AS8PR04MB9080.eurprd04.prod.outlook.com ([fe80::92c2:2e03:bf99:68eb%6]) with mapi id 15.21.0025.023; Tue, 19 May 2026 02:05:22 +0000 From: Guoniu Zhou Date: Tue, 19 May 2026 10:07:40 +0800 Subject: [PATCH v4 3/6] media: synopsys: Add support for multiple streams Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260519-csi2_imx95-v4-3-84ea4bb78a88@oss.nxp.com> References: <20260519-csi2_imx95-v4-0-84ea4bb78a88@oss.nxp.com> In-Reply-To: <20260519-csi2_imx95-v4-0-84ea4bb78a88@oss.nxp.com> To: Michael Riesch , Mauro Carvalho Chehab , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner , Laurent Pinchart , Frank Li , Sakari Ailus , Bryan O'Donoghue , Mehdi Djait , Hans Verkuil Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, Guoniu Zhou X-Mailer: b4 0.14.0 X-Developer-Signature: v=1; a=ed25519-sha256; t=1779156481; l=2908; i=guoniu.zhou@oss.nxp.com; s=20250815; h=from:subject:message-id; bh=Ac4dI1IhT+SkNe1AR3Dtik0ILr4E1k6RHymUVMlr5FM=; b=tm01bXmHfYJKTuA/USfGTxjBX/F5GKDzWqYlZOWx41TbFOb1jiiD28l0yiTk5zZd+NxPMVclH SwuRJXHudWZDNjnTtuR57T0iXlmpp5MMfdSgSCm+70v/Xk1wxl7eDlb X-Developer-Key: i=guoniu.zhou@oss.nxp.com; a=ed25519; pk=MM+/XICg5S78/gs+f9wtGP6yIvkyjTdZwfaxXeu5rlo= X-ClientProxiedBy: SI2PR01CA0011.apcprd01.prod.exchangelabs.com (2603:1096:4:191::6) To AS8PR04MB9080.eurprd04.prod.outlook.com (2603:10a6:20b:447::16) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8PR04MB9080:EE_|DU7PR04MB11139:EE_ X-MS-Office365-Filtering-Correlation-Id: 5c7a7f98-248f-4483-c309-08deb54b1599 X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-LD-Processed: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|52116014|7416014|376014|1800799024|366016|19092799006|11063799003|38350700014|56012099003|22082099003|18002099003|921020; X-Microsoft-Antispam-Message-Info: j6qCYpoCMUAtvDyUFi4XAusRSmCdjAa9XT8pW7xM67Mm1XB5nrbOWdUufO8LziNW+yr7K/0ZRY2eRVyt0NrWCznqxdB7NC88+QTNVeohbnMI2VZnVWwON1BU+pfPuKfJsef55RGZbQyrCAVt1z3J4WIWDN4x8opmszVXP2vufHX+xEStzhBeYcOcTh0NJn2RWLha8NL3QDQj78MF2wIen3RMjb+0o7jPRdd/Ze+K/oOuyIXoWsC3scig4XbKYI0GV+FyAf8jwW6Qn7OHOxo4c2o+Za0A+cOm979aLQxF1MVcCBoDHoTc1amrKryAYIwfEFIgxMvdueTZPUpk6TqTGcgalqq3vzlcqmitMFlccbARahshUB/prWh65Srf8+WYeJGTNHkMFx2Ri24tHeH6qyFWoLfXs+4yMXTe8sPgaK/LH2NPeHacEvnfBU73K2FLGdO6Gs7pzGyUhQB0xi3+yBHg3Xt8g6A0bZmjuL1ucdWb5njtjM/+QqFvSknJswjx1xSHoR1DH2TfFbZ9yb40LfUCmFvycApX835SmfWj3KQOgx5MvOwMFMCTPjqHkI//4eJVzPjW5hRKYOS/6y6iiGIlMVe2gD24C8d8Qwc3bPqqlccMGFmbJSPUZsru47SirLN8rvxijQsvVfRS35UeJvsMaRMMr/Az+cKW00/iCVSztLRZYWuKgZwxgPkQn09O3OKzm0A09Suf4XY9vrexvlm+M9eOkpLp/9JjqDTZF74iUGp/OpfIsZXOX0v+3Ih+kazIpv1zUEUlC0stPqDfFA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB9080.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(52116014)(7416014)(376014)(1800799024)(366016)(19092799006)(11063799003)(38350700014)(56012099003)(22082099003)(18002099003)(921020);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UjQ0SWVBM3BGNGdiVER5bEx5T0k0MGFScTFFR0pZZytYOTJkT0RRaytNcm03?= =?utf-8?B?UDRHTldnd21RYW9kbzloelZJTkV3eXRVRzAySUVQSUM0WUg2aDFpWGwrMlBY?= =?utf-8?B?aDUrZ05xVDhKeDl3NS84b20xa09YWkFEeGFoVFVlT24ydzh6TVJQUnFaTnRx?= =?utf-8?B?YjlPQUd3WGs3YWtNVlF6RWg0ekpoZ01URFRwTmZaMXZPS0FhN2wyWm1TSUZt?= =?utf-8?B?WnlUOCs0UzNRc01kOEp1T2ZDdGZoWjNLVUF3dHlsSVRoTTRIaUpOQVY3RUJl?= =?utf-8?B?RXgyMklKMDlnSmNyWGhzS1BIL0JmT0NNUFlLOXNtT25Qc2prSVd4czF5MzRi?= =?utf-8?B?RzJJN1FJL094NEJPYTdXOHBRc0VVbGNyeHhDR284bEpGVlZUVzByRk9oc2FK?= =?utf-8?B?WDNJSlNJVG9ZaVUxV2NnVXY2clR6N2ZOODRLdU4vcGtGQlVxU3lsL1ZKQWxu?= =?utf-8?B?UGVxSFFGN3VtQVRUQ2l0WDN1d0s4dkxCSkNaQ1RpcXlDZVZoSkdTMFc0cmxN?= =?utf-8?B?VTA3dUZTVmtZd3V4NVVKTHFXTVk4bTFmeTIwMnBoWW9HbUVOUmMzMlFiOEox?= =?utf-8?B?eTc2TGQyUC9TRFNHUUZPcDQ0blQ4UktWbkttd29kNTFSQWs3VWJ4aDByYm1w?= =?utf-8?B?cXNQdEdtZnFzYzBuU3VTUjZTcVBBR2NNUkhYSlFFWVE4ZjVrWU1ZT2JQQjRp?= =?utf-8?B?MFdhQlUvbVVRMituOGVyVktFRk5uemErV3NjSHRISlVUNmxwMi9TOHNiNXVY?= =?utf-8?B?T0NDZXltTE0vRDJIUENJaW9RRDRkWVA3ZjdHbzBVellNamU3UitZQnBaMWpK?= =?utf-8?B?bGJsYnp5bXVXK0ZpaHVkN2dJZ2FnNHZxNXZhTGhoUGljblZ6Skd3cFFRWlUx?= =?utf-8?B?OHpoSk51NUlYcmJCeHYvZ0NmYWVjQ3Z5TytFUGo4UE5xL2I4dUZGcTBHRjBH?= =?utf-8?B?Q0J4NlZoZm5hS1FQOEk3SFdUcEhITnZzeVBmanZKQ2VORGJQeGNkUnBEUVRx?= =?utf-8?B?OGR5ekpxQlJwamoyRVpuZXFNTTJvRUhlbVF5Um5sSzJteSt2eUQxUW1iaEpL?= =?utf-8?B?QXBzUW4xL1hWWmk2amRqNnlyaDNZdnFXdU5LQ01STjlCKzBpR3MwYVA3ODUz?= =?utf-8?B?ZXdIVU9PWjI3Qy9uREJYK0VqVnowZEtTQUt3TzlWc1FtZVRNbkJsU0dtenlV?= =?utf-8?B?VVVsUjZpRllUMWdpbUdZTyt0djZCNFk4M3lmWlI2YXlWSmtDT2FDOTFYRnZU?= =?utf-8?B?ckkvVjNWUk8rK2NoUS9CK0Vtc1NhdDU0Vyt0Uk81ODlZTVdTemJhaTlxNDk0?= =?utf-8?B?WTB5WTd1VUVLL21ZWVpOWk9IbXZDZVhCbzlmTFp6MHdoVGtXN1pONmFIR1NX?= =?utf-8?B?TWZBOVRoNDExOWMyLzRrSTRjNjJDMjNpRENueXVRZnFYKzNDUXFxdURxV0xi?= =?utf-8?B?N0M0UzhOR1FrRWFkU3NvWExjSy95OERSc0JSV25TYWZJekgyam5zZW4wQU1i?= =?utf-8?B?TllKcmhmdVE3TllKNjVzUjkvdmtTR2owdHcvemhQK1VrdGNxM1dIcTNPdUZk?= =?utf-8?B?WkQ4eVZGc0puRndBN3Boc2pubzhVWTJGZTZ6d0FHQnhOK1dETWgzdElISzJX?= =?utf-8?B?MSsxZDNtSGY4cFVyTlFxOWl3UUZEZFNkemduM0x4bytid1BiMkhjb2JPaU5i?= =?utf-8?B?bFFhZ2RjTjNNOGZya1NSSlYyWERmbXVxYStBZGNnRjhRd1JwbERIWEdUcmRF?= =?utf-8?B?LzdEeXRqSmlDZlpiVStTSSsxbXJySFNpRmphWVoxelJKK1U0ckxYcTA3Z3Fl?= =?utf-8?B?WWhiaFYwYWZMaU0wdXZRYm9MVTRIbWcyMGtROGpBTkVYdHhaN0p1UVVockF5?= =?utf-8?B?NkFpQkEzTXhkWjA5UGpoUjF1U0xwNjBIc2R4dVN1VXNwWU12ajZzRDNZZldH?= =?utf-8?B?UEFOSjNqUGE2N1oxTUExNGhCMHpiZHA2bnpDR3lMMk9PbGI5OUtCN1hpVjBr?= =?utf-8?B?eTcxWFFtVDlmQkNVUVVsUXh2VVZhRTFlYW84amJEdTVhVlhveG40WGQwS0ZL?= =?utf-8?B?dGxLOWdDTG5ZdTRtMmxVeWU1WFoxbUZablhLTDk2aHhUKyt4RGhGS3dkajRk?= =?utf-8?B?RTJxZFFGeHN0ZTVzcWpnbHFuOHQzNlB1YlliM2R3M2FRa1o1R0ViL01aSDIz?= =?utf-8?B?QXc0TTJqbnB6aHlyZjREOU9wQURHRE1GVUNyMmpWTDNpd2JCTXNQVUJEN3Z5?= =?utf-8?B?MGVvNE1BK0I0ZjdONGlleUg5UnRtbTVhWVFUY1FNUXg0UjJnOExXS2lWRkZl?= =?utf-8?B?eVZpTUt0TGFjejBBaU0vM3lmUFNBc2ZQWVpvdExlN2VlMExFMWlNdz09?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5c7a7f98-248f-4483-c309-08deb54b1599 X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB9080.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 May 2026 02:05:22.4418 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: vLg5+zFwbWhtWi7G02p9CGSz7sgga0/r4LPZ1enrjC4IcD4HeEMalHAZISE8DMMJq8Yu9UMZmQ7aWF2wDekU3A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU7PR04MB11139 The current driver only supports single stream operation. Add support for multiple concurrent streams by tracking enabled streams with a bitmask and only initializing the hardware once for the first stream. This enables use cases such as surround view systems where multiple camera streams need to be processed simultaneously through the same CSI-2 receiver interface. Reviewed-by: Frank Li Signed-off-by: Guoniu Zhou --- Changes in v3: - Call pm_runtime_put() after dw_mipi_csi2rx_stop() - Balance PM runtime get/put for asymmetric stream enable/disable operations Changes in v2: - Simplify error handling by keeping goto labels instead of early returns --- drivers/media/platform/synopsys/dw-mipi-csi2rx.c | 35 ++++++++++++++++----= ---- 1 file changed, 24 insertions(+), 11 deletions(-) diff --git a/drivers/media/platform/synopsys/dw-mipi-csi2rx.c b/drivers/med= ia/platform/synopsys/dw-mipi-csi2rx.c index f45466ede2bb..92178a3dec5d 100644 --- a/drivers/media/platform/synopsys/dw-mipi-csi2rx.c +++ b/drivers/media/platform/synopsys/dw-mipi-csi2rx.c @@ -113,6 +113,7 @@ struct dw_mipi_csi2rx_device { =20 enum v4l2_mbus_type bus_type; u32 lanes_num; + u64 enabled_streams; =20 const struct dw_mipi_csi2rx_drvdata *drvdata; }; @@ -539,26 +540,33 @@ static int dw_mipi_csi2rx_enable_streams(struct v4l2_= subdev *sd, DW_MIPI_CSI2RX_PAD_SRC, &streams_mask); =20 - ret =3D pm_runtime_resume_and_get(dev); - if (ret) - goto err; + if (!csi2->enabled_streams) { + ret =3D pm_runtime_resume_and_get(dev); + if (ret) + goto err; =20 - ret =3D dw_mipi_csi2rx_start(csi2); - if (ret) { - dev_err(dev, "failed to enable CSI hardware\n"); - goto err_pm_runtime_put; + ret =3D dw_mipi_csi2rx_start(csi2); + if (ret) { + dev_err(dev, "failed to enable CSI hardware\n"); + goto err_pm_runtime_put; + } } =20 ret =3D v4l2_subdev_enable_streams(remote_sd, remote_pad->index, mask); if (ret) goto err_csi_stop; =20 + csi2->enabled_streams |=3D streams_mask; + return 0; =20 err_csi_stop: - dw_mipi_csi2rx_stop(csi2); + /* Stop CSI hardware if no streams are enabled */ + if (!csi2->enabled_streams) + dw_mipi_csi2rx_stop(csi2); err_pm_runtime_put: - pm_runtime_put(dev); + if (!csi2->enabled_streams) + pm_runtime_put(dev); err: return ret; } @@ -583,10 +591,15 @@ static int dw_mipi_csi2rx_disable_streams(struct v4l2= _subdev *sd, &streams_mask); =20 ret =3D v4l2_subdev_disable_streams(remote_sd, remote_pad->index, mask); + if (ret) + dev_err(dev, "failed to disable streams on remote subdev: %d\n", ret); =20 - dw_mipi_csi2rx_stop(csi2); + csi2->enabled_streams &=3D ~streams_mask; =20 - pm_runtime_put(dev); + if (!csi2->enabled_streams) { + dw_mipi_csi2rx_stop(csi2); + pm_runtime_put(dev); + } =20 return ret; } --=20 2.34.1 From nobody Mon May 25 07:55:34 2026 Received: from GVXPR05CU001.outbound.protection.outlook.com (mail-swedencentralazon11013054.outbound.protection.outlook.com [52.101.83.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9025A2BEC45; Tue, 19 May 2026 02:05:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.83.54 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779156335; cv=fail; b=TU4VaQRwgjUvxaCQmflZP0ge3cMcS+cU/zyjOW1ylpMHCILmWYi08qkLsgfLJhvu8n7AlNfLTeutlO7PMigDBJdeMrxcjYNi+Vv1IXdlb61yBtXpiv197PWHq3Sey1PJ6UvmArzbzRiFGHzHgN/E+BtASfJkKPTvQSI23Yx+kx0= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779156335; c=relaxed/simple; bh=bG+DS/0ewMdNHV23cYrXxlFJm8KaPiWL/g0hJ13vsnA=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=M3+5+IMy4g06PeBEoa1ttdq6dMya8Jy/hXEVOampS3t/7dnKLBxkJ7VkOcf5kvHSnum21iscn+4Dto4Ojfpzq40UGF5OPVkxAmrhEajknX2gpFQf33NaxkBm+rSA9oqy3Hb3gfMIEjrSPl+Rv+TEMa4ucdT78dXzToecKAQqDMg= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com; spf=pass smtp.mailfrom=oss.nxp.com; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b=DwTJK2Vm; arc=fail smtp.client-ip=52.101.83.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b="DwTJK2Vm" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=ObA2/y0rlp+PwFc/LVDHUdISwOOOD34LN9+yXONLnJtZ1k3IADpE3IQe4BRKEB+d1gzZ7TtlrNFPuStfwgp6jp/vkPUk7YkJdeQOlefMH018XIzDsxFNAirSPU+4t2PXugTyNul3tqKBj7e0EcyQHjrmzp6IeLyStGme2k5ivzHtuNSkBUX9QslS+Ejv9I10/lXuskHp6iLvUAG0fOJhEEB2qv0ajAlHzef99W+/sedJBDE6nClCT0I/Om88EhWvExtH4GFRQZByNrH/n60+hjqXOQlN5kwX+bvS4AfPWLEfb5QYSEiloCNWsSGJtE2R4AC4qp6vRuZb9nAF+XLLWg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=EHB9SHi+fKnZBXLXZ1bu7K7W3GRCfhmbGidPvdUtrIg=; b=b4h91WMoUk3j/Z+C++M5IsJh0KhnIzeJVLx61HnUVyaKXQTZK+udzE9HOzilgUK1bkR4NyYzy1zYIDXB/7NOsRfwyXA+zn7rjr194ve6DDTnDkRSaHBphgY304fqpeCpMuaBlE830ZKjKKNZj1Oz58A8xcZFrKgjxTKkstcVRZwEb7/0a+DlRPM3jInCZaw9IpXiHTN9RVPxew8LqnQV9bkhzT88Z+FaF1i1YcVLTRcXA2MrBRwXkZGdytVsF6kLi0cAETjpKghvEuk1Mrbyc0WkjwGEEej5obtzDGEfWI5NAN3QDrAvtUgKQxRlROkY0wk0n9TMs4mdgifsixjiAw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oss.nxp.com; dmarc=pass action=none header.from=oss.nxp.com; dkim=pass header.d=oss.nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=NXP1.onmicrosoft.com; s=selector1-NXP1-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=EHB9SHi+fKnZBXLXZ1bu7K7W3GRCfhmbGidPvdUtrIg=; b=DwTJK2VmSNXXA4+duXFQokoZNzDrGttBQRMvSWBC0suUvnoWe7oqMkf5k+D9nKqPqIBrkmQZCSixk3lEgb6BCxO6RFeQ8R00rROOoQN/CIdfzNuC4f63kLK5BkyusclOu3MTrTg5a2AR0k2v4pCvNL5zpZ6TDAV8yeWm8Umok9myGCpQXWMpJxF5r72Yyr+GTLsYGxi8SWGBCdQz7bCUJhC810W3ASPa/dxbiqs7YidUEbRs1qg6M4Ojf/hbPjwv/UO71KrfB3Ws6KoPzfpay+TOIEmJp1qjiE+SyLgNoaCNIm78CTneFv5CDPMeN8H3Y9w9GNcqxiCdp35cQThgXg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from AS8PR04MB9080.eurprd04.prod.outlook.com (2603:10a6:20b:447::16) by DU7PR04MB11139.eurprd04.prod.outlook.com (2603:10a6:10:5b1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.25.23; Tue, 19 May 2026 02:05:27 +0000 Received: from AS8PR04MB9080.eurprd04.prod.outlook.com ([fe80::92c2:2e03:bf99:68eb]) by AS8PR04MB9080.eurprd04.prod.outlook.com ([fe80::92c2:2e03:bf99:68eb%6]) with mapi id 15.21.0025.023; Tue, 19 May 2026 02:05:27 +0000 From: Guoniu Zhou Date: Tue, 19 May 2026 10:07:41 +0800 Subject: [PATCH v4 4/6] media: synopsys: Add PHY stopstate wait for i.MX93 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260519-csi2_imx95-v4-4-84ea4bb78a88@oss.nxp.com> References: <20260519-csi2_imx95-v4-0-84ea4bb78a88@oss.nxp.com> In-Reply-To: <20260519-csi2_imx95-v4-0-84ea4bb78a88@oss.nxp.com> To: Michael Riesch , Mauro Carvalho Chehab , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner , Laurent Pinchart , Frank Li , Sakari Ailus , Bryan O'Donoghue , Mehdi Djait , Hans Verkuil Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, Guoniu Zhou X-Mailer: b4 0.14.0 X-Developer-Signature: v=1; a=ed25519-sha256; t=1779156481; l=4340; i=guoniu.zhou@oss.nxp.com; s=20250815; h=from:subject:message-id; bh=bG+DS/0ewMdNHV23cYrXxlFJm8KaPiWL/g0hJ13vsnA=; b=lao0uZ+qWSOy8sMTwahY61XbMmwUt0fFgbagefr16MBPNkurEBVxrj+qNXEjZyZwEh3Rgdk1y EwUdunSpG9oD8FEid4y9UO/UvFOKZ2OLy9DJDQ0f00V9SZ9arqSAkT0 X-Developer-Key: i=guoniu.zhou@oss.nxp.com; a=ed25519; pk=MM+/XICg5S78/gs+f9wtGP6yIvkyjTdZwfaxXeu5rlo= X-ClientProxiedBy: SI2PR01CA0011.apcprd01.prod.exchangelabs.com (2603:1096:4:191::6) To AS8PR04MB9080.eurprd04.prod.outlook.com (2603:10a6:20b:447::16) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8PR04MB9080:EE_|DU7PR04MB11139:EE_ X-MS-Office365-Filtering-Correlation-Id: 0898b770-9dd9-43e4-e533-08deb54b18bd X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-LD-Processed: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|52116014|7416014|376014|1800799024|366016|19092799006|3023799003|11063799003|38350700014|56012099003|22082099003|18002099003|921020; X-Microsoft-Antispam-Message-Info: 4K7IjPiCKpm4LvUft2fzGx6dDTTbpyDcOGnky3vEbRAHXOCCB/vlVtb/BuR9H87m+jcU/YEP6a6Y+9h5tpJOGE9NBwPFkUs8i4ewt6VnMXMIRqMfxaUj6FRhdx7sfuS69Oqh+2LmaJyeBK1OQhvWmv2pBl6w3H2WhD8KzUm8X6xIMBM/8LW/5yhyDYm9gNp5IoSynPoREMPu06p8RY5ftC1KEjkrF2YPcTt2EfOakWSvunHpSo7x53BUFmP1bS/9ZMK3BmrL29IfBneihLMDa18cn3Iihj3XS++R2NeblJj7iZiSkZJ7zN7nqiI9jlXry81bdza094n1nqYDrnScRJQJo1gb6eFCVPbkHZvfpmV9hNNWWV+K31EUxfKz8+P9+ZRzplSUTRd/S3R8Zg8SoMhrxb5xCFoohay5YcMH70ezwjmNUT5fbieqSvgSdqQt84pdz8jsJt7JH9ad+D9jtFccVB0MsYfG3HVvHa1aM3RK35981Fd/ok1ciY0fXPpcH6yPxDUuzXiFZCVurnCwGugIiJFLCw1yq+lNRZSDI8BmSpqcdZtj2Of5UfGteaOs896/2KBmCDKvgZaQONKLW0H/0oJ2+HJP+vb4ae59vFj8MQq2IigtghPjWAK1/7pSvhg2hgDkdzV1iiUQQ3SddxMymrG8/26jUuZuG0A4YewbEWqcvoiBKsWjzn4aXYEPZFUY5a5WfaRTTniBfNzvte/SZz+2IHUWZ9lEDvF4F/4AveozTUynLT3DqMdwheJEVKaMJnQHDIT9JO5HiVDreA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB9080.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(52116014)(7416014)(376014)(1800799024)(366016)(19092799006)(3023799003)(11063799003)(38350700014)(56012099003)(22082099003)(18002099003)(921020);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WVlsMUJwU1k1d0F4SUxpbnRxQ1o2SnpRWk9Gc241Q1hTRnJQUWsyZUlIUFQ4?= =?utf-8?B?TllxRXB2cUlmZzZjOWEvcVh6eUtXTEw3b3NtbDNWNEFSVkdwZEZ1cGZSallj?= =?utf-8?B?cVRDUmhrYnZjcDFvL3ZLc3NvTWozRGRKeG02SjN5STYzeUZ1TXdxMm94akVu?= =?utf-8?B?L0JVbU0vU0hycXZOWGIySnVOVUhmRnRNNjRVRkJvbXlQejJuZENPc2x3dm1l?= =?utf-8?B?ZXNKZEp3VXlWUHF4UngvL0RCMWtEbGZLMHdIZnlBV0RkVVNxeHRCc2d2c3FC?= =?utf-8?B?dU5QMzlXdHdCWlNGejF0M2kxNU1KTkNqaHFCZCtSSmd2blAwNFJpU2tZRTdU?= =?utf-8?B?TkVnb2dQZldwbmFiRjR4dG1HQUUvcFNVYlQ4VDIxa2RKdXkrY3ppWWtnWWFQ?= =?utf-8?B?REVpQnQ1emw4TjBCSVNTNTZSS0VnbkdvQzRmRDJ4SkxIdVVtd2x1bFVNck1P?= =?utf-8?B?a2M3cjF0QkY1VkJkVVNCb2pMS3lIaGwyMHFvUmFTNEZabW9paVUrMnNwUnhU?= =?utf-8?B?YnNDZWhzWUQ2eDh6Nm1aT0F5Nk9PSkFVOG4rY3RnbmFLc1VmUUVsam5TQ3VJ?= =?utf-8?B?eHFIVk1KZnhqYVpMVTdWMkVzeVRxSzdyenEzSnpyRG1xbHNYb2tuekV1MjJD?= =?utf-8?B?NERRNGpIS0hHdkxKaUlMeFRoVGNnYjJWa3hQTXEreEVwZ01ycTlGNjVkSUZt?= =?utf-8?B?a1BPWkJTVnJaQlJ1WHNvZEpQc3lPN1pjTkx4Y0ZYOUJwNm1MVkpDNVliQ1hw?= =?utf-8?B?SXdqTWRNaExzS0t1NDlTVW5lUGI1SW1WelNMOVZueTRpZnVWdkNySTVIcGdM?= =?utf-8?B?N3dUbEd0TE0zWUVkRUJjV1FTdUl5WXI2VzQyVGh1dlczWklyT2ZsR3Y4QlBm?= =?utf-8?B?NnBhNnZwWWdwNFBOT25IVitMR0VlS0paY0I1WFdIVVdOMGpCTUJHQU8ydzBp?= =?utf-8?B?TldnTUFyaXIvRVhHY2pPVk5UUnJGYkVyRk9sTUxQdFJ6TlkyaitlU1ltRzF2?= =?utf-8?B?TEdPNi9XS1UwaVhiYTNWTTQrNG0yL1p1eEJxUDVsV1duTkRaL3ZlUm1NRE1r?= =?utf-8?B?amRrS202NTdmSUVYdjM3aitXcTdJcWVjVUNaRHBCaUFjYzBzOFBlTmxBc2Vr?= =?utf-8?B?ZXI3b3pOb0krMlVib3czZllyVkNscDlkd3V2RmREMXZsVk9jSGh3ZUk2N3BJ?= =?utf-8?B?b1hNVUdCdWY1YXVFU0pxTFlIS2xKU1hyQlRSblA5dVg0WThSN2RybmFrRjhz?= =?utf-8?B?Nk9yVmhJODJkL0NmZlVTcHRxb0I5L0JDdGtTcVY1RExDRUgzUjR5WVNCOVF6?= =?utf-8?B?Wi94MFp4SDZNa1NJUnZYTDlkeU9Sc0tFRXNyL0VZRnNjTjFaeXV5SEdQSmFD?= =?utf-8?B?NFRJbXJuZjk2MVB4QVd3Tm9CR1M4S3F4TFVnQm1IQ3Bxb2VLUnozZWRZYmNx?= =?utf-8?B?Q3ZleE5DN2c0ZHR1b09PaXhFNXhTV2x0RGRpWkV3R1VDeWw0aXJyeDZkQ0R6?= =?utf-8?B?aXRVSWI1a3NROFk2a1ZuUzVVTmhmdXlMak85SXJMU0JzK1FYVWpmTEFWUlRD?= =?utf-8?B?SWtIamJMQmVCbGdDVUxBbHNMRkowYk0yY2wxUzdjbnVGYmg1bFoyWFFrcHd2?= =?utf-8?B?Z0hCQ2FtYy9Nb0hTN0FZYmYvU1dqSWVQNVNYcm53bEhzbUd1OGxMaEVRakth?= =?utf-8?B?SFpmM1VFeUtqYmowd1RvQWtub25TOHdMbjJLWXlBT0dqWm1hYVNYTEJFZ1pu?= =?utf-8?B?S0tHdG9RUFREaEtBRjljeW9qZXhKU0xPR2FWZktIQ05JNHhPZW5Wb25rQkhK?= =?utf-8?B?SnJLMFZFSFQ3YmZWMWNqZXlEdGVRUHFNR1BNMi9yeWxWcFQrWEVRR0M4N0tG?= =?utf-8?B?K0xPSUxhcTg4Y0wxSU1zcFA5bk5kZmhBRjErWHhOZmFWMTMvdHpYMVdrQjJH?= =?utf-8?B?T1BNMDg4Qkx3dmF0b3RIclI2Z3Z3bHlZUFo1Y096RWhMLzdYbHMyS1ZoaHFn?= =?utf-8?B?M21wOEljQW1UUG94MFRyczhSVlA0WEFNeGVUcU12dFVGNTZVRW5oUEhFYTAy?= =?utf-8?B?a3grZU9tVTZSbnVubCtoTFR5eHFIU3VkNWw3YzZ6RDBzMkJENklBdENBRzNY?= =?utf-8?B?OG9NQ2YzaENzeCtRdjlHZmF5RWZjOFJHcUFWUXZGYm1KdE84Vmk5d005ZkxJ?= =?utf-8?B?S1p1WHMydjZDbE9NcjdybmJkVktyZGpBc09iL3paT3pRTHhvakF4ZlRBWG1B?= =?utf-8?B?UjAvVFltMnp3bFdGazZuWDdhMW5vNmdyVll3b1pkc1F0UWlLdHZYZ3dOa285?= =?utf-8?B?QjhoQTBndUw2ZktSQUJsOUlhVU9YU1NPTHJuRjljVXVudzRqRCtxZz09?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0898b770-9dd9-43e4-e533-08deb54b18bd X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB9080.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 May 2026 02:05:27.6797 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: TQY7hnTgD+JXgxMwnK3SlFXShehE1ChwZCrlumdi3sN0rpL11anwiEYYanE4aqfR6sT5XSRyPr8OchEuV/jwXA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU7PR04MB11139 Implement waiting for D-PHY lanes to enter stop state on i.MX93. This ensures proper PHY initialization by verifying that the clock lane and all active data lanes have entered the stop state before proceeding with further operations. Reviewed-by: Frank Li Signed-off-by: Guoniu Zhou --- Changes in v2: - Removes redundant register availability check - Uses read_poll_timeout() with dw_mipi_csi2rx_read() instead of readl_poll_timeout() with direct register address - Fixes stopstate condition logic - Check PHY stopstate after sensor enable instead of before to ensure correct timing. - Optimize PHY stopstate polling parameters (1000us->10us, 2s->1ms) to balance performance and responsiveness. --- drivers/media/platform/synopsys/dw-mipi-csi2rx.c | 36 ++++++++++++++++++++= ++++ 1 file changed, 36 insertions(+) diff --git a/drivers/media/platform/synopsys/dw-mipi-csi2rx.c b/drivers/med= ia/platform/synopsys/dw-mipi-csi2rx.c index 92178a3dec5d..8a34aec550ad 100644 --- a/drivers/media/platform/synopsys/dw-mipi-csi2rx.c +++ b/drivers/media/platform/synopsys/dw-mipi-csi2rx.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include @@ -35,6 +36,8 @@ #define DW_REG_EXIST BIT(31) #define DW_REG(x) (DW_REG_EXIST | (x)) =20 +#define DPHY_STOPSTATE_CLK_LANE BIT(16) + #define DPHY_TEST_CTRL0_TEST_CLR BIT(0) =20 #define IPI_VCID_VC(x) FIELD_PREP(GENMASK(1, 0), (x)) @@ -65,6 +68,7 @@ enum dw_mipi_csi2rx_regs_index { DW_MIPI_CSI2RX_PHY_TST_CTRL0, DW_MIPI_CSI2RX_PHY_TST_CTRL1, DW_MIPI_CSI2RX_PHY_SHUTDOWNZ, + DW_MIPI_CSI2RX_PHY_STOPSTATE, DW_MIPI_CSI2RX_IPI_DATATYPE, DW_MIPI_CSI2RX_IPI_MEM_FLUSH, DW_MIPI_CSI2RX_IPI_MODE, @@ -87,6 +91,7 @@ struct dw_mipi_csi2rx_drvdata { void (*dphy_assert_reset)(struct dw_mipi_csi2rx_device *csi2); void (*dphy_deassert_reset)(struct dw_mipi_csi2rx_device *csi2); void (*ipi_enable)(struct dw_mipi_csi2rx_device *csi2); + int (*wait_for_phy_stopstate)(struct dw_mipi_csi2rx_device *csi2); }; =20 struct dw_mipi_csi2rx_format { @@ -139,6 +144,7 @@ static const u32 imx93_regs[DW_MIPI_CSI2RX_MAX] =3D { [DW_MIPI_CSI2RX_PHY_SHUTDOWNZ] =3D DW_REG(0x40), [DW_MIPI_CSI2RX_DPHY_RSTZ] =3D DW_REG(0x44), [DW_MIPI_CSI2RX_PHY_STATE] =3D DW_REG(0x48), + [DW_MIPI_CSI2RX_PHY_STOPSTATE] =3D DW_REG(0x4c), [DW_MIPI_CSI2RX_PHY_TST_CTRL0] =3D DW_REG(0x50), [DW_MIPI_CSI2RX_PHY_TST_CTRL1] =3D DW_REG(0x54), [DW_MIPI_CSI2RX_IPI_MODE] =3D DW_REG(0x80), @@ -556,10 +562,19 @@ static int dw_mipi_csi2rx_enable_streams(struct v4l2_= subdev *sd, if (ret) goto err_csi_stop; =20 + if (!csi2->enabled_streams && + csi2->drvdata->wait_for_phy_stopstate) { + ret =3D csi2->drvdata->wait_for_phy_stopstate(csi2); + if (ret) + goto err_disable_streams; + } + csi2->enabled_streams |=3D streams_mask; =20 return 0; =20 +err_disable_streams: + v4l2_subdev_disable_streams(remote_sd, remote_pad->index, mask); err_csi_stop: /* Stop CSI hardware if no streams are enabled */ if (!csi2->enabled_streams) @@ -871,11 +886,32 @@ static void imx93_csi2rx_dphy_ipi_enable(struct dw_mi= pi_csi2rx_device *csi2) dw_mipi_csi2rx_write(csi2, DW_MIPI_CSI2RX_IPI_MODE, val); } =20 +static int imx93_csi2rx_wait_for_phy_stopstate(struct dw_mipi_csi2rx_devic= e *csi2) +{ + struct device *dev =3D csi2->dev; + u32 stopstate_mask; + u32 val; + int ret; + + stopstate_mask =3D DPHY_STOPSTATE_CLK_LANE | GENMASK(csi2->lanes_num - 1,= 0); + + ret =3D read_poll_timeout(dw_mipi_csi2rx_read, val, + (val & stopstate_mask) =3D=3D stopstate_mask, + 10, 1000, true, + csi2, DW_MIPI_CSI2RX_PHY_STOPSTATE); + if (ret) + dev_err(dev, "lanes are not in stop state: %#x, expected %#x\n", + val, stopstate_mask); + + return ret; +} + static const struct dw_mipi_csi2rx_drvdata imx93_drvdata =3D { .regs =3D imx93_regs, .dphy_assert_reset =3D imx93_csi2rx_dphy_assert_reset, .dphy_deassert_reset =3D imx93_csi2rx_dphy_deassert_reset, .ipi_enable =3D imx93_csi2rx_dphy_ipi_enable, + .wait_for_phy_stopstate =3D imx93_csi2rx_wait_for_phy_stopstate, }; =20 static const struct of_device_id dw_mipi_csi2rx_of_match[] =3D { --=20 2.34.1 From nobody Mon May 25 07:55:34 2026 Received: from DB3PR0202CU003.outbound.protection.outlook.com (mail-northeuropeazon11010035.outbound.protection.outlook.com [52.101.84.35]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4F6DD30AACB; Tue, 19 May 2026 02:05:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.84.35 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779156339; cv=fail; b=kEbNeJ39IFzivDh3OejZEp4xlWiWetDWNDu1B7hn6eVIkv2WlV7c551bH8mZO+GpLrxVuR2jP6GoYuI3Xe2cfjIOjcTVQkIvvnMQ5cDxVrUp5Q8oTirh8zV6TrC2q7uzX+9uIXPEhFJKbwVdk8LHNOXhnHBbXy+3TUVzpc1wUKI= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779156339; c=relaxed/simple; bh=NBUkUvQ5dmPZtJs0c7EzDFrJUMviaQkVTLo/jpjQegw=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=u4/k06LEPxR3bXVgzB8/nIGKPR+qOLFHSVihgXe1wmAS4pIhP7/lpHrx8wFBNp1UflYZHvkpTENhR/kDRs0NP2Fzx7kHue5znBiUsRT8EEQ3FYfW6dTH5QdC3gkKffpOJx/xa/L2iJYXjhumlhTzP8EmutkJo/RPaGdZirfd+mI= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com; spf=pass smtp.mailfrom=oss.nxp.com; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b=VzX95sZr; arc=fail smtp.client-ip=52.101.84.35 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b="VzX95sZr" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=B3GgYy+sIX58J5KFro0HU/QdIWNRbTYveZ4jrZNxcecPok6qHgFkv76Pnp32PwvliOlNGtqwFPVRjBpvM70pu4cvobCWkO990wywAh4LhClr+f6mqD2YNoSZGf2vhZkxQj9dWG2lRrDi08CvioZufsEbUVWYSkxS2kTmathIJDW79Zeq834uNd2y1ZEO+qF1vIqqbFoBOjUqH+E8JTyreBGXZ5UdRTLn2nQlOLK1kUfCxm9dwM/Ou19J8HmflgVH/1jYpPtQWIK+ZoRIyi70Eg2fNkOl/gZ9hpz2wsTt9D6mAdgF6tsQwUoBtRv6sqOFOQQ/pSYKHLSZ7QCV1as76w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=yG9P6GvCAgr1HcP4kUUTv9eqUDRkJuxuXTlPUoOQVsk=; b=pYWSrYZI0ScR6c2ZZs1X5mi88kZDvcnK6OC65DOuK5oduAO+QJRGR9OjS5YZitZhOTRfZNy97+zmNslBV4sBPxZAK5L+iVR1ZgTjDWEFxATZ6eL+52gZdoRHcWE8YIYt72bAgQ5P1MhCsS52m6U7IJ7hj8S64q+cEl8ny7a3+3xUBNd4/jO+fwgMBYZDZAm5vSdBJd+Fr3E1k9q25CMsxWsA4S3Kd40s9fAhNPnildZ1qXx9etaqw3fvLpCayIiuKL2BQnk3McZDXYfqJdfJxe8Dm9KIlXixJ3MHs7wD3AI+hIpHKxkFGpp8eIXlGfaIludMuZeiktMcOIJeps6YNw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oss.nxp.com; dmarc=pass action=none header.from=oss.nxp.com; dkim=pass header.d=oss.nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=NXP1.onmicrosoft.com; s=selector1-NXP1-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=yG9P6GvCAgr1HcP4kUUTv9eqUDRkJuxuXTlPUoOQVsk=; b=VzX95sZrTGARDIwBvheYhlcA0XLK52uJg42tyLiLF23Bd5ilQH3GoigIw7JwFolKMAN84K6oaxbCL3PP0O8IH0lIhZ0CrXTWahyocr5qKjV7hY6qod1fgtHtQuHMhl+cq7iIhX970m3LH46aaEakTmnkD/bVO+q1qqNwhfxZ4b/vwczUc7XQRUni1Fymo29x1mZh1c8vx9X5CfW3mrCM+xukRB5uVJfOSHPfS261i0m0e1bJrUzjA3i63M7ELGsftwXs88I5fSsIdvTfhwtS4TrXRCipQJ1K3JlQrck4XHRkWbv/YBsnrR/kpwLvPvEPgFcmOiXB3p6XDIAVb1QuYg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from AS8PR04MB9080.eurprd04.prod.outlook.com (2603:10a6:20b:447::16) by DU7PR04MB11139.eurprd04.prod.outlook.com (2603:10a6:10:5b1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.25.23; Tue, 19 May 2026 02:05:33 +0000 Received: from AS8PR04MB9080.eurprd04.prod.outlook.com ([fe80::92c2:2e03:bf99:68eb]) by AS8PR04MB9080.eurprd04.prod.outlook.com ([fe80::92c2:2e03:bf99:68eb%6]) with mapi id 15.21.0025.023; Tue, 19 May 2026 02:05:33 +0000 From: Guoniu Zhou Date: Tue, 19 May 2026 10:07:42 +0800 Subject: [PATCH v4 5/6] media: dt-bindings: add NXP i.MX95 compatible string Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260519-csi2_imx95-v4-5-84ea4bb78a88@oss.nxp.com> References: <20260519-csi2_imx95-v4-0-84ea4bb78a88@oss.nxp.com> In-Reply-To: <20260519-csi2_imx95-v4-0-84ea4bb78a88@oss.nxp.com> To: Michael Riesch , Mauro Carvalho Chehab , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner , Laurent Pinchart , Frank Li , Sakari Ailus , Bryan O'Donoghue , Mehdi Djait , Hans Verkuil Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, Guoniu Zhou , Krzysztof Kozlowski X-Mailer: b4 0.14.0 X-Developer-Signature: v=1; a=ed25519-sha256; t=1779156481; l=2261; i=guoniu.zhou@oss.nxp.com; s=20250815; h=from:subject:message-id; bh=NBUkUvQ5dmPZtJs0c7EzDFrJUMviaQkVTLo/jpjQegw=; b=NiSZu/xHRFhDkoIX2Aj1WF480+bHJlo4LVQSZfZExzBYBXKC5qBUDI+mQ9X74HUNAfOQNCCqR HEyFqU0eaA1Clo4cSTbcjlzNpakciZM/v44b4DJW9yyIjru1Gxq+yBU X-Developer-Key: i=guoniu.zhou@oss.nxp.com; a=ed25519; pk=MM+/XICg5S78/gs+f9wtGP6yIvkyjTdZwfaxXeu5rlo= X-ClientProxiedBy: SI2PR01CA0011.apcprd01.prod.exchangelabs.com (2603:1096:4:191::6) To AS8PR04MB9080.eurprd04.prod.outlook.com (2603:10a6:20b:447::16) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8PR04MB9080:EE_|DU7PR04MB11139:EE_ X-MS-Office365-Filtering-Correlation-Id: a4f1f67b-0978-44a0-f282-08deb54b1c25 X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-LD-Processed: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|52116014|7416014|376014|1800799024|366016|19092799006|3023799003|11063799003|38350700014|56012099003|22082099003|18002099003|921020; X-Microsoft-Antispam-Message-Info: JKn4dgfrOlv6ceONtQzYYnn5StIEA0LjR84oFh3w7vTCJ7wXHiAIsuaBEexgu945MhFmYKmHqGEH0Llx9GKMAlCSSa39on5LCKuejvUR3YjxPgHJ3JQnezsrSkniyB25cByrBYYOG/xGmalFO00B3Ags6aHmKMuHAQhcUliuwrgdqvJsefiNe7IRb7cMNnHf8NtcaE/CXibx7cOW6JihsAS2Uu563FCDaLE5lBLGTxEWcGBnDm1dDOo+WTGdIKyAwg8G2aMSJbLKPm4cJKDJKNG9Iq+o5aJLXxPEAcCBHIGf4H+Kn7A3QsuSOaX7K1rckkcx4wV8HuPOUKyuqeXDmTyYxTA+u7Mm1gLcJVgqR2FXsIXNNbpE2U9Sj52mJ+p7e79G0PI056EnsvNPllXRMEVtgucnL+zId643RhKwdfS/P8+X8/sedg5B75loAvbao18dBhSIDFxeLbNkEBle83puQuEu8DBFH6HpnFPXPu9l72MNGtCeSsXUNW1y8h5fmn0gBf9q4NpNrfNrKrOGdkzV7UnKT/WeofXetcUT6j1baP4jYk7mNOE1CCH8NNizv8W89N5L7i8QyOucSZDS8mcUxZm8zScRs5bzWTmkDQGLXWoC84G2hg7hJFRUVadI04+RR6zo4F52wENjC4FxeBCd+HJkweneSoHvhrs6znM5VWQY06f4yZIXB9zvDLAJglLqlvz4SuizYuCdr+C6AKSNxLawIVHt49yDhWqfcJepdcLOAIJ7/La6EjjiBb858/RYFuKNd08lhEPnMyHTsw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB9080.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(52116014)(7416014)(376014)(1800799024)(366016)(19092799006)(3023799003)(11063799003)(38350700014)(56012099003)(22082099003)(18002099003)(921020);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bVBrL1FncUhtcEdDNGhrZzA5Yis4UHMycVJySytIZmpHcElsQ1oxcFJ5bVVU?= =?utf-8?B?MTZEZGdCNXMvWmtodWF5cTMxSlBBWnFoelRzWGpsREprbmNrUFM0YUZuU3Ez?= =?utf-8?B?QUtCQ2xQeFNVQnVjb2lza01ac1VvMTZZdDBTbnBZd1k5dTRUSXdMSnZZUi9q?= =?utf-8?B?cStvQVdHbHU5Q090VG82VU9CSnRDdnpxSk1IZWxvMU9zc2hYV2JzZFpnTXdJ?= =?utf-8?B?cVhCaGZFNE5BMzV0clE3TUxFQWtLZmlOMW1wYlFPLzdjUDdxcVJzeGE3L1ZQ?= =?utf-8?B?UTEyRjQray8wWlpVQlBweE5vdkhQaEh1KzRObGg1TG5wY1d5VFM4RHRYNjNU?= =?utf-8?B?UnNKN0I1d3BvRVhsVlBkRUxEcWFpcGJlOWpLS1llT25YdTNaOFZUZ0g5TnVI?= =?utf-8?B?K0EzejNseHhDQnJTMG9ITUt0bVQ5OUpCaURhZVlWWHJKdXZBamJzemlTRkN5?= =?utf-8?B?aDUxWVNlbVcyTHllNUMwSm4zKzFWczduR1BreXAwTW5ZOGhpb09SekpsTlM4?= =?utf-8?B?V0Q2TDJzRTdyM1gzYmZRQW5NYlQwZzU5QlR5U1kvTDRUMGJnRVRCOFdTMGg4?= =?utf-8?B?VkRKWU95algrTEtIZUx6bGJZTVFQMUljd3NXaStnSHhUaDVENGJtNUR5RzFl?= =?utf-8?B?azV2OEZjdFlyRzUzbmNNZjA5TXRjaFpqb3Zya1RWQ3ZiOXpGMitDRkxKaS9y?= =?utf-8?B?d3ZqNHNxbU5SSUt2N0xvS3ZiemkxYUF4R0xoZHZFZWp1RHMrdkg3QmdDYTB0?= =?utf-8?B?dWpXTm9FVUJHTkdMQ0N0Qy9Ic0hqQXVaUUdQeTgzQnU2czVyNEd4Ukc4WE95?= =?utf-8?B?citsTXkzUUJCOHhSZEcrc3h1TWZEODhBRWNNTlRCSWYwNmx0bGo0RGdCaUxm?= =?utf-8?B?dFlQa0tXQlZId2hURFlzOVZma1ZNZ3BsZm9WOE5WY0pzVVo4c0llSzNSb2tm?= =?utf-8?B?cm5sWlBTNm9DUDJ5Z3hXaXgzMjBBZWVDQzhwRlpIbDcxWUR4YUl0ZzZVdjRz?= =?utf-8?B?L3lnVHVZVDZaODU2aFAyczFmWFl4Q3pZanp0ZXVWdlZMQ2dLUW0zRytya0ti?= =?utf-8?B?NFpOL2dqMDRxd1lKSGN6eHowcWJsdkc0eDRYcjhET3IyZ20yYjVYeUlyQVVB?= =?utf-8?B?NnBCaEZYQVpCLzcvTGcyNUxyd1FLTFhWV1hKZlBHRmRDWkVWdGlmMHZnMHVm?= =?utf-8?B?VDlLOWxBN0dkM3owa2R6QkhXeTU3cytQTkJVR2dyMUhiSHdjRDRKakZoODRu?= =?utf-8?B?eUNTOURucHBVU21jYTljMElicHprSFpYZVlEc0YxNmtKTnJSbjBGQXhhMyt1?= =?utf-8?B?T0FRVHBzeGtQdnVxSk02SnBselQrbDk3N1hBTUQ3clZ3eVNKeFFXMjdiMFgz?= =?utf-8?B?akluU3dFQ2xkeFRoS3dSNkw1cWVaUExaeUJvS0ZEb0FwNXVHazRhdHFoKzkw?= =?utf-8?B?UGIvVjRMeVQvVTM3a2ZVaG5DZXJaZEk4WE5hMW1VYzlsanMvWUVyTWFuL0Y3?= =?utf-8?B?Z3duM3c2QVpuRWxjSGVzRy8zSWdaam4zcHJ1NHNDd2FpL1BET3pjb2VzdUY1?= =?utf-8?B?OU9PcmVFSEpVZDdNS2JtTTU0YVVrcy9xTWV0Szk2T2xZdDBIR0hZVjBROURa?= =?utf-8?B?bXZxMEpEKzhjQ1Z4cTc2VTdRSzE3ZWt4K0dveGowQTArdWM5TFd5emlNYmwy?= =?utf-8?B?d095Z0YrZWF0R1UwS2txU3J6M2tXVDVodWY3a21SMUdTZTJlU2RaVUtuSElm?= =?utf-8?B?L0FSYzNURFpqdHR5bUg2cjhQL0lFMStkYmt3Q0JqaC9rKzRjb3hxZEhOV0dl?= =?utf-8?B?aWlIalVESG1SeklaM3hXWjhsUFpLQVRwUXdHQkRRTmZXbEVqQXdsa2lCSEdL?= =?utf-8?B?YThsZDg5VVZHcEt5TEU4MnA3N3NVWEZMbklvNHBYaTBBUit3NS9MYmR2R01s?= =?utf-8?B?dEY1aWpPdGZtMmF2Qi8vWHVDU1o0d0ZzQ3VhNk1GNDhRMWlPSFRlNUJSYUQz?= =?utf-8?B?VVZhOFg0cGRWbzJuSXoxN211aURIWmtVa3JKYVEySUdCOE4rKy96MHpTeklF?= =?utf-8?B?RmJuUG55Q1BEcGhJTWd4bUI4N21FNERGbWVXT1o4cEZldTdva3NkNkt6QWNQ?= =?utf-8?B?ZFhvckxBRU9KcWMvbDNZSSt2aGlNR1Z2SW0wRXg4a1h5ZjJEWlUrWnU0L2xv?= =?utf-8?B?SUJqRkhOT2J1MmZuNFcyS1lTU20xeGw4OVZId0g0VTJ3TUx4YzZDR3EwRVla?= =?utf-8?B?cXlzaloreCtESVhHQmE1TjJ3c1FzZC90M0U5NGVWNXYxN0NQTThzRGpwd2JU?= =?utf-8?B?ZVZuSXZRMmxqMGYzWjNRVXpxclozZXBCb28yMUttQXZjMHd2cWxrZz09?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: a4f1f67b-0978-44a0-f282-08deb54b1c25 X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB9080.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 May 2026 02:05:33.4030 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: UdEUVaWstTD6hwNFiVf17MeoB77Gcdq+rEQ+uWaphI9xQmTb7B+vYGMubEv+Ndd4znQX+Wd2cmx+pIA0T/D9xA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU7PR04MB11139 The i.MX95 CSI-2 controller is nearly identical to i.MX93, with the main difference being the data output interface: i.MX93 use IPI (Image Pixel Interface), which requires: - Pixel clock input - Software configuration through registers i.MX95 uses IDI (Image Data Interface), which: - Does not require pixel clock - Is software transparent (no register configuration needed) Due to these differences in register layout and initialization needs, the two variants cannot share the same compatible string. The driver needs to distinguish between them to handle the interface correctly. Reviewed-by: Krzysztof Kozlowski Reviewed-by: Frank Li Signed-off-by: Guoniu Zhou --- Changes in v3: - Add Reviewed-by tag from Krzysztof Kozlowski Changes in v2: - Add dedicated constraint block for i.MX95 to reflect different clock requirements (only per clock needed vs i.MX93 which needs both per and pixel clocks) - Update commit message to include more details about interface differences --- .../bindings/media/rockchip,rk3568-mipi-csi2.yaml | 16 ++++++++++++= ++++ 1 file changed, 16 insertions(+) diff --git a/Documentation/devicetree/bindings/media/rockchip,rk3568-mipi-c= si2.yaml b/Documentation/devicetree/bindings/media/rockchip,rk3568-mipi-csi= 2.yaml index fbcf28e9e1da..8bfad0fca3b7 100644 --- a/Documentation/devicetree/bindings/media/rockchip,rk3568-mipi-csi2.yaml +++ b/Documentation/devicetree/bindings/media/rockchip,rk3568-mipi-csi2.yaml @@ -19,6 +19,7 @@ properties: oneOf: - enum: - fsl,imx93-mipi-csi2 + - fsl,imx95-mipi-csi2 - rockchip,rk3568-mipi-csi2 - items: - enum: @@ -140,6 +141,21 @@ allOf: clock-names: minItems: 2 =20 + - if: + properties: + compatible: + contains: + const: fsl,imx95-mipi-csi2 + then: + properties: + interrupts: + maxItems: 1 + interrupt-names: false + clocks: + maxItems: 1 + clock-names: + maxItems: 1 + examples: - | #include --=20 2.34.1 From nobody Mon May 25 07:55:34 2026 Received: from DB3PR0202CU003.outbound.protection.outlook.com (mail-northeuropeazon11010044.outbound.protection.outlook.com [52.101.84.44]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8CE6621E097; Tue, 19 May 2026 02:05:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.84.44 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779156345; cv=fail; b=uMfcY1JlTr1QUbWM7jiwL9HWnJuocFujTJWjq9oir0TjcaCBj0f1f6ijuhQuigpV/fhAbNprirHeuXvxtFV+8T/HCZ1IhzRRoFf+HqHo9iRXGbidPcS0yPH+E7mGf2i22thlzReiBldR4k5qEBnx4x8IAoSfsR+fzdmUVTnJ0wo= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779156345; c=relaxed/simple; bh=FEG5bYsPBxZ4dSkv2k1aIVamftOpHreA3QLGwnJexfk=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=pBj7Kfl1kjm6octjzNGwQz0x9ce3obBnCPvfeq92VY3B+o3o06rf7kZbVmgwdpowE+za6SWxrQBQa63h+czy7OSLZyYCW6nSWp9fI4Dx+YUGCrWd53JQJW6AOHj8maxsiz77ch0vOsyR0GGEBappjbLKG67XlRONRto738SuCOQ= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com; spf=pass smtp.mailfrom=oss.nxp.com; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b=O8qbLt0u; arc=fail smtp.client-ip=52.101.84.44 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b="O8qbLt0u" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=D9f0wltmYGDfsziW0KhCqmqLKwPaD1C5aDCcArDugtHqMnvRT4dTwBsmwCAHV/J0KREko1pcs7HPRiRwNNyoiai1i4pH7GuQ9HsWsFhJYMOua7c+qU+o3lA3bjAvpFfD/ErQG6EA5H4O8VSLpP7J8r6TDUljYdZyR6TGZmWYH3eQE8uDTG0PYdB9/OCokg87lM92ok2AgWZd5OD9ln91Irm9zqlTy3WueQ2CA3dJ+fUfnWEudYy3gkSL8b5/kljKdkUjeJhR+DME0+RBlMruViMdfWjNDULkXlcKnactsDkv+7CeGjd2xb4O/XG275lZ9w6QivCtLNf4Aa4u/H5AtQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=iVPS/YZ1oSIlrkSb8D1UOrXNB6sJr5b517OMbwu23HY=; b=nbUG7wW+Q0LUz0dP+7uJ25DnYYzlOBFiwS5IOlYQ5bDoz2ZRJgA7Hzkq8xb7H5uUfOa7fF3gYfIMp/0kaWGTePRe6E6+yZyTj28mqIMw3I6VhMOW3xO7xBVyroQg13OyxjVGqilF887rU3i3e9bLuBpdTsK2NpOXovi9Wahw7KMzJ9/YvdC0o5FDJUxUDqFae5bqCtPXD/M7/8VCZGV9Ay7ARl8yGTJSSX55ZR3ycZUSuZTXvfntZ2AsYb2xDla0Cid50qa4Q+qM9/rZPssCa30S6qcQH6lyphJwA9zusBzWaRbJ8VJlwvurfdodVoLtylAhJQiREnjiot/bFemQ/A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oss.nxp.com; dmarc=pass action=none header.from=oss.nxp.com; dkim=pass header.d=oss.nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=NXP1.onmicrosoft.com; s=selector1-NXP1-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=iVPS/YZ1oSIlrkSb8D1UOrXNB6sJr5b517OMbwu23HY=; b=O8qbLt0ufjvbBGVYQVDmjWQDDrgh0nyKkHMRdoIAhJ1uu+j6PiaPn7QFBBRl8L/Fwkypl+QqPIj6PVCtH7afIu0rdLE/WkFmUwYZjdfK5tor0zW4qTnvzxXOpEMrb+1gbEgYltkDmBNRhbzc6KvW1/VZ9abKLStm3DUdZ4RqZ6lw6BJ0hYeXfx2rrXC85MW2hhSqA1/3/whUtLg+w5MMdjXBQ9mnCPPfiNRxh13x8GT5h1LAgqtascFLo2gfLnDDIour7Kg2wogC85IMP1N9krP9oTJjKtX2Vi2do5N7DWBKw/AFz5VxauJy03i2SyfoZegqdN4vnBiDCpclj+Y9wg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from AS8PR04MB9080.eurprd04.prod.outlook.com (2603:10a6:20b:447::16) by DU7PR04MB11139.eurprd04.prod.outlook.com (2603:10a6:10:5b1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.25.23; Tue, 19 May 2026 02:05:38 +0000 Received: from AS8PR04MB9080.eurprd04.prod.outlook.com ([fe80::92c2:2e03:bf99:68eb]) by AS8PR04MB9080.eurprd04.prod.outlook.com ([fe80::92c2:2e03:bf99:68eb%6]) with mapi id 15.21.0025.023; Tue, 19 May 2026 02:05:38 +0000 From: Guoniu Zhou Date: Tue, 19 May 2026 10:07:43 +0800 Subject: [PATCH v4 6/6] media: synopsys: Add support for i.MX95 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260519-csi2_imx95-v4-6-84ea4bb78a88@oss.nxp.com> References: <20260519-csi2_imx95-v4-0-84ea4bb78a88@oss.nxp.com> In-Reply-To: <20260519-csi2_imx95-v4-0-84ea4bb78a88@oss.nxp.com> To: Michael Riesch , Mauro Carvalho Chehab , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner , Laurent Pinchart , Frank Li , Sakari Ailus , Bryan O'Donoghue , Mehdi Djait , Hans Verkuil Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, Guoniu Zhou X-Mailer: b4 0.14.0 X-Developer-Signature: v=1; a=ed25519-sha256; t=1779156481; l=2362; i=guoniu.zhou@oss.nxp.com; s=20250815; h=from:subject:message-id; bh=FEG5bYsPBxZ4dSkv2k1aIVamftOpHreA3QLGwnJexfk=; b=8J+RaSWf/RzWXF1+grk+iSAnstSpSBemF6oEpWMXlUTHpleh8VpwsPX4lJBUmPh+KdMQyTQ1B 7ZZnMMybcaFDZEF50IZptMoFtJLpolxJ1GrMW6au7d4AjSLPjRenP6h X-Developer-Key: i=guoniu.zhou@oss.nxp.com; a=ed25519; pk=MM+/XICg5S78/gs+f9wtGP6yIvkyjTdZwfaxXeu5rlo= X-ClientProxiedBy: SI2PR01CA0011.apcprd01.prod.exchangelabs.com (2603:1096:4:191::6) To AS8PR04MB9080.eurprd04.prod.outlook.com (2603:10a6:20b:447::16) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8PR04MB9080:EE_|DU7PR04MB11139:EE_ X-MS-Office365-Filtering-Correlation-Id: f9a1aca3-4897-4a74-c97a-08deb54b1f41 X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-LD-Processed: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|52116014|7416014|376014|1800799024|366016|19092799006|11063799003|38350700014|56012099003|22082099003|18002099003|921020; X-Microsoft-Antispam-Message-Info: L94tIORaYPDGuoNraAUwU8MP2LocQpg+uW7PpziE2F5Ty43hvOdvLJ9aDOx9QE0wZKGPZQf/u5ZeWPZjDp7ATW64NSFP6h1QzYY9s0M7rrKqbhrnuUremaRK+bLJRJgqKwUfinmRhHhqy+diN5bTHRvVdyi6EAWoBoGUKi2ZcZJQxDRkhBQn3x+SptBW5vJ+vzddZ7Xcn6RNTFWBj1mvcpmrAr5xb8kUIAVEf2kGoaBVryf9B6I+wZkKguWZz76+VyTEcxwCjvv4U/AXuQHoID6QEcgyzZwbGFE5HjLMl2aAkwYYaUSkTUrubqqllm8fLf2N/QiSxfjoraENDYNAnRYUWoC6/hiljpqhq/Vzc5lVX/VnEYxgaffAcHQychOE43wMu1l7x8crk+qrbaxZxYoMGafczYfouGLeCkZRx7ycM6oajfRLLH7RE55jgUTyGkAAc/FtC9wpnYe3nsDU4rVxoYzuNmeHD1bEzPwnZG0idZ0bIB8oH0kegxInfem2DxWVlLISYJbp+yIMd8Rg3KaJVHdVve9GMzXaW98c6gIqhXIMkd2NV2EwkNq+fMxk8bhRVBi8otALf6WrMfg/jT1wThEAdjqcu+0pr/hdpwC95Dw/5eyWCtSB5O7VZ8Pf2oqH+i2pOEAV1fytaoVmBqqv8egMIZTneoDhPuIPOZ/xJSWSQ+s27dxPXIm7/EUNq4GIBLJEgepqk38AJVKS0IZkIxVcIue4yovYo5C5nucz2BySGAZArxvXr1LRf9Oxf+CV5JML0K+g0MalTp/AIw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB9080.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(52116014)(7416014)(376014)(1800799024)(366016)(19092799006)(11063799003)(38350700014)(56012099003)(22082099003)(18002099003)(921020);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QkFsRmJpL0pKcFM4emxvLyswMjJ3LzNIei90aUYxdkRPUGQyb2k0V2VIL3ZT?= =?utf-8?B?c0pnSUpNeU1BbkVVdTI5QTNVRFJKWmo1Qkd6SWNzOW5NVFNFaUNzamFtNnI3?= =?utf-8?B?aVFxNDJKdkpCbWNLMmxpK3k4anF1RGFqVjJITUkvamF4cjdIMFZWVHRTNitP?= =?utf-8?B?QnlMeVRtcDJTT0lUV25ZZm0wckZ2Njc0NDNTYmVJWGdZT0FlVFBnRGZMRmo5?= =?utf-8?B?dVo1WGRXRXhIZ2FKSlNWM0UwcjEzSzQ5WkhoRmxuWHhqTXZDbVJnSURaL0RQ?= =?utf-8?B?R3dVT1hZdCt3bmZ5b0owWTlyWk1MQ2tmSHNkcHVPSm51RGR1bTlQVFhra1Qy?= =?utf-8?B?UU41cUIxTUdVYlZMbCtYdE1QZXptOG1LeWc5WEtLWE9NaTFRa25TT3AvV05P?= =?utf-8?B?aStnNTcwTk1iY3o3aWQ1Sm5BNW81LzF5VG5ET3pzN3NZeUdJUWs5b0ZzMWxo?= =?utf-8?B?WkpId1JlL0Z3SWNtVjkvR2VUOXNVMEF6Y1NtSW5JQmxKODRuZkdBTXYvTHBz?= =?utf-8?B?a28wbkZ5anA2aWJ6ZUgxdmgwbjZpY2NGRlFVOVZ3WFQ5ZmQ3QmZEa0k1RlFE?= =?utf-8?B?UDdJaVUxak1GQUhZamxSYUw4cHV3aklMV2lWTUM0LzAvMUVUL0h0SXlxVE55?= =?utf-8?B?N3V5WDFScm0yUGRtbEE0M1N6NFdPdTNqcm9NaWtiNzN2RDF1ZmhiNHFBUEhE?= =?utf-8?B?YXA2WUgyK2JXUVhKdDJCRld1Wk1JNlBNa3A1bzBOY1BGdjRxMzFFbzVpOEJk?= =?utf-8?B?Tk91TmxSL3V1aXZCUUJEbVJEZ2FIdGdSeEVKck4xMmMyNXM5MUhuZzdRTTRz?= =?utf-8?B?WVJ3SE1OZWlqdzd2aWk5WjRvclMrNlRnT1FoT1oyaHNBUklIQTFZbHlkbmZE?= =?utf-8?B?UEJTQUVyQWQzQjhwb3Nsa1ltNFgvTGlWb0dYWUVtczBIYk9nWCtZZXRmUjJz?= =?utf-8?B?bzM0VEpFM09MSjZweG85RmVmQ3RidDZmTHBRNFhGdlBtektKcXZoekNhbVF1?= =?utf-8?B?ZnMvd2dXeVd0U25nTzk5eDVQS0VVek5qTC9zL3kzcy9CY3ZtMUlJQ2lUb05M?= =?utf-8?B?SDlpQldXbFk2V3RUcDdyYzRWSkRSejNIS1dXbWxWaU5halZVcmY4MDBtczJR?= =?utf-8?B?L3hQWS8zdk9HMjRkZU9ta3lmUnFxRXBiRnBBNnhRT0V6TEFiUDFIeStNdUhk?= =?utf-8?B?TklzUkNoUXMyWFo4cndVbFQ2cGFsN2ZWUURMZjA5K2VUWmtVSVJ1MkJFMVNK?= =?utf-8?B?ODJpTHZVaXZKZ00xK3RNVnNkK1dIam50WUlnYVJOUjdQYlpzL3M2cmxWRTRW?= =?utf-8?B?WnA2Z3BGYVVOWS91TGlmOXRtRVp3am1WdGtvcFpUTXEyeS8zTytwdlp2VVh5?= =?utf-8?B?RHlwZm9VMWpuOTgxdkRZbW90eHdzcmFXZWdsa3Btbkg4Q0laRGZ3KzZOT0lI?= =?utf-8?B?T01salBHZTVzcjEvanhTMTZPS0hZSHFMZnRzZW1BbEFQSVdzQ1FBQlY2Q00y?= =?utf-8?B?S3dpeDNiMnVVeSs3VStJT05vWUhiSXRveE5rdWMxTUtjWlc3aUtFaE9jc09H?= =?utf-8?B?MUpsOUpQVnlqK25BNHRweEs1NGJqWVVrRGl2MGxld3BqQTVoV21mZnBHMHQ0?= =?utf-8?B?MzREaHR5MElzaGIwOWd1ZUVPU0ZUQ3oxWjVpS05zbjJTbFVJRUI4MWZQTWJL?= =?utf-8?B?S0FuRTI0ZFFpM0cvS21SOStVRlZ3RGJpQVVRTDN4V0hnUWlwMlNuY3lxdEJu?= =?utf-8?B?ank3RXhkQ21rN0pMS29uT3JFc0dQVXYra0FqOUVoWmVnWVk1VHREZUFWN25l?= =?utf-8?B?dEJON05YR29ld1pRblNSQmUzbWY3OCtpaDU0MjNjS0pjaGVpb0o5V1FQTFUy?= =?utf-8?B?Z0MwNWdxeHN6RGFyM21YUGRxck56ZTJuUm9FdGJuQWF6Q3dFUEZYREZENGl3?= =?utf-8?B?YmhTNnl5NmpTWUhodUZUKy9qTnRVenF4UVo3MnFML3VuQ2Z4Yk80WHQvbVhZ?= =?utf-8?B?NGpuSUlVeXRuMkRwL25mWGhxODgxUFZ3ZzB6WktOdk9VOVg5UDh0N1JPaTFG?= =?utf-8?B?V0NkVHFGam52M0cvb1NYcUE0RnlXcTcvRTNNVi8zbXB2c1ppVVp2Vk0raEZV?= =?utf-8?B?RGFWMzNlSDVFemovZHR1N2lEMmdoUGpUb25TZzR6RWZJVU8zWmowWWtNdnVp?= =?utf-8?B?SkJGVUpyVWEyTVRxSVRhbmlkcEFSaVFyQ0x6ZlBvTTM2N1UraUFDcVRHRjNs?= =?utf-8?B?cm50NVpyemY0aXBlbWw3ekZsNFkvdlhUbkwzOE9XSzlzZnFkcEhienV4ck51?= =?utf-8?B?b0NMckNxdGtUWm1NMFF5MU5HZ3lvcGRVTU9Ic2tXSVJBRzZLZ3FmZz09?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: f9a1aca3-4897-4a74-c97a-08deb54b1f41 X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB9080.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 May 2026 02:05:38.6285 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: q/hTCdOzOMirPNy/h991LkIBKkqwNkqJBsLnoycvhoaEvrv2U4CrvVKOva56Pvz0r3pTgf53pyWE7sEw87L+bw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU7PR04MB11139 Add support for the i.MX95 MIPI CSI-2 receiver. The i.MX95 variant is nearly identical to i.MX93, with the main difference being the use of IDI (Image Data Interface) instead of IPI (Image Pixel Interface). However, the IDI interface is transparent to software, requiring only a different register map definition while sharing the same PHY control functions with i.MX93. Reviewed-by: Frank Li Signed-off-by: Guoniu Zhou --- Changes in v2: - Add Reviewed-by tag from Frank Li --- drivers/media/platform/synopsys/dw-mipi-csi2rx.c | 22 ++++++++++++++++++++= ++ 1 file changed, 22 insertions(+) diff --git a/drivers/media/platform/synopsys/dw-mipi-csi2rx.c b/drivers/med= ia/platform/synopsys/dw-mipi-csi2rx.c index 8a34aec550ad..41e48365167e 100644 --- a/drivers/media/platform/synopsys/dw-mipi-csi2rx.c +++ b/drivers/media/platform/synopsys/dw-mipi-csi2rx.c @@ -154,6 +154,17 @@ static const u32 imx93_regs[DW_MIPI_CSI2RX_MAX] =3D { [DW_MIPI_CSI2RX_IPI_SOFTRSTN] =3D DW_REG(0xa0), }; =20 +static const u32 imx95_regs[DW_MIPI_CSI2RX_MAX] =3D { + [DW_MIPI_CSI2RX_N_LANES] =3D DW_REG(0x4), + [DW_MIPI_CSI2RX_RESETN] =3D DW_REG(0x8), + [DW_MIPI_CSI2RX_PHY_SHUTDOWNZ] =3D DW_REG(0x40), + [DW_MIPI_CSI2RX_DPHY_RSTZ] =3D DW_REG(0x44), + [DW_MIPI_CSI2RX_PHY_STATE] =3D DW_REG(0x48), + [DW_MIPI_CSI2RX_PHY_STOPSTATE] =3D DW_REG(0x4c), + [DW_MIPI_CSI2RX_PHY_TST_CTRL0] =3D DW_REG(0x50), + [DW_MIPI_CSI2RX_PHY_TST_CTRL1] =3D DW_REG(0x54), +}; + static const struct v4l2_mbus_framefmt default_format =3D { .width =3D 3840, .height =3D 2160, @@ -914,11 +925,22 @@ static const struct dw_mipi_csi2rx_drvdata imx93_drvd= ata =3D { .wait_for_phy_stopstate =3D imx93_csi2rx_wait_for_phy_stopstate, }; =20 +static const struct dw_mipi_csi2rx_drvdata imx95_drvdata =3D { + .regs =3D imx95_regs, + .dphy_assert_reset =3D imx93_csi2rx_dphy_assert_reset, + .dphy_deassert_reset =3D imx93_csi2rx_dphy_deassert_reset, + .wait_for_phy_stopstate =3D imx93_csi2rx_wait_for_phy_stopstate, +}; + static const struct of_device_id dw_mipi_csi2rx_of_match[] =3D { { .compatible =3D "fsl,imx93-mipi-csi2", .data =3D &imx93_drvdata, }, + { + .compatible =3D "fsl,imx95-mipi-csi2", + .data =3D &imx95_drvdata, + }, { .compatible =3D "rockchip,rk3568-mipi-csi2", .data =3D &rk3568_drvdata, --=20 2.34.1