From patchwork Fri Feb 7 11:29:53 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Laurentiu Palcu X-Patchwork-Id: 863148 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2085.outbound.protection.outlook.com [40.107.21.85]) (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 0C7FA2417F7; Fri, 7 Feb 2025 11:30:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.21.85 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738927825; cv=fail; b=aCtKk8OoxUdUP8UwxwM4MU3vdxaJXghHzmSJDYGjWCRmWpH+VkmCaVIRm0Lol/wHhQcf7+XpjeJfg+C3Rc39Tecb1AQoxqXtQM1WZPUaRwEPmsBmLvRlNAswMePzRMR/0EfGs3sGzzn9hEHQ9TT7V+xB2NlYk5nCKP/06Ndhig8= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738927825; c=relaxed/simple; bh=IGRnR0q0jtqo7MxSYzuHnDVuL1knLEJ8R11ZcfsNZwM=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=HFbv79T9Sr5FzoSgVfv2Z/nkHTaEN5/blJN8ho0F1+RYtbpZWnbyBSpIYTUfrY4TvD62sC9qzOIRcGka7pSL86hsmgXQSaINjGn/SzDA+u+kGnCG7TxM1ojLU7/5DBiMsO0d/Mcbz42iFs9wYoiTf7pEA+bnDMGHAw/L86M4CnI= 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=sxjTgi/8; arc=fail smtp.client-ip=40.107.21.85 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="sxjTgi/8" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=HpbWtUHPNsG5bbGHoQwrVWcPiPzKXkVZN57IBX3+1DKFlGwc6gl356enDj1bDVahBmfynrRBNi8xGnKyU+d3mmE45ERQ7O6D3d5k9N82FUr5ouvT1CyiGTq9Q9OccrcLoMqWi5qV75du4HhDFUlA3jY2iSja9hqN5DNxF5gzLiDQwxdYuxwibx03S23PZXa9kkoAtRZtw/yGRdA3BsnPsvPFVKfFCk5H1zIib6PcNTD3ETycbqi6aXh4TSdqc54NqH4Bkuc/pNQgYqm4R1wPBTeQvCGUkaFJy749UvEgSnZsd2CHTDKKq1br9g2xA4I9QegSI3ao1RXHcyQDor26vg== 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=ABb75QhTJsBzzuOAxXjX2btcTxRLxPVLDAyILe7VdNs=; b=zH3ndcwQtspkQcUG9bzt52dMo9qb+G1uVp4lhn0Frt49W35iE4v2N2Tr4QFG/ji+EutxF+xOVKkixjvWkryVoeR3H3nq/OBt0wmKi3NkLXSikMgJ/eqqFE4tGkXYlVUUtDYHo8fK1tNhjUi3NiAhU7B4qX2wYy5Qx1DKAOXzRjuSpeJ2zu93gB59HMLVAcxQ5unA/OJtnmEcHgmYkanv/MDXMQ1pPtJ51PHVBT55WPP2eFeT3KCK0tWbRMOEquI/kX8xbYR0NPMwIrkSFXlhQ9iVhBbcFJa8GQCB0LKE0Lvhw3K6Ou4xCEgfwSOWsr6Qz8rmeHQzY/7cH5A9OyviaQ== 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=ABb75QhTJsBzzuOAxXjX2btcTxRLxPVLDAyILe7VdNs=; b=sxjTgi/8VccbbFwUQs9JNXF+QuyGi/YHMGkwsqwvsItpxaa9n0yxkWD/P48tphPAnlZRuzPRlwwhTLxtNRLF8JNFTc+esyho43WyLAVotzcjsXALjTOPgccIjy4juntE4QJQIzrFv60xzMwr6Jk2QpTbHbLeZF8NjpGvVNMo3VKTb4iQTe5hkpT/UgoD03zxmxLEQybo/BIlbRyIBhpGY/zU1+xXY/n2TQ0NShePD3vMHz9iwr6Pu/HS9ZvQjhvX1lrj/BUuUZFvc9uaDnaeufaJ59mUY46wyIc3Gf+FZ7Lps0Z0hvF9ReVyhBu/Tlen0mbAwoRE9TVlZKkewhsRBQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from AS4PR04MB9576.eurprd04.prod.outlook.com (2603:10a6:20b:4fe::12) by PA4PR04MB9392.eurprd04.prod.outlook.com (2603:10a6:102:2ab::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8398.23; Fri, 7 Feb 2025 11:30:10 +0000 Received: from AS4PR04MB9576.eurprd04.prod.outlook.com ([fe80::9cf2:8eae:c3d1:2f30]) by AS4PR04MB9576.eurprd04.prod.outlook.com ([fe80::9cf2:8eae:c3d1:2f30%6]) with mapi id 15.20.8398.025; Fri, 7 Feb 2025 11:30:10 +0000 From: Laurentiu Palcu To: Julien Massot , Mauro Carvalho Chehab Cc: Laurentiu Palcu , linux-kernel@vger.kernel.org, linux-media@vger.kernel.org Subject: [PATCH 1/5] media/i2c: max96717: change internal regulator voltage Date: Fri, 7 Feb 2025 13:29:53 +0200 Message-Id: <20250207112958.2571600-2-laurentiu.palcu@oss.nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250207112958.2571600-1-laurentiu.palcu@oss.nxp.com> References: <20250207112958.2571600-1-laurentiu.palcu@oss.nxp.com> X-ClientProxiedBy: AM0PR03CA0020.eurprd03.prod.outlook.com (2603:10a6:208:14::33) To AS4PR04MB9576.eurprd04.prod.outlook.com (2603:10a6:20b:4fe::12) Precedence: bulk X-Mailing-List: linux-media@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: AS4PR04MB9576:EE_|PA4PR04MB9392:EE_ X-MS-Office365-Filtering-Correlation-Id: 30684fbe-3269-4c07-decc-08dd476ac7ca X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016; X-Microsoft-Antispam-Message-Info: nNxWa2WcPvvDp7gcZplobJfU4siWt99L3uM9X0yVqh2q0iCWBmq0lT0y4b2NPBUKNSUMcoUqKzgrDebEqWogeWopMhNimoqXkBLQJIDASVv3RA0qQ2J4c3PAKMj52X2IwzhjsXsFEITL/M6KW9vBa51gcLkVZ2CC15AIwapok4CXRie7mLiJSllYUn/ieoxzPHIoIdTMfHIj7dYjh09HS0p7mJb60eE3zYb1kcqdHkFShD2pa1whwh5l54y27SlEbHS34OLG8RR8XN92coxGdMaGcdAivh17QAwFCGVHVp3rZme6n0yxN8fFa8rMYFyip9DKmI8UEUK3OYnY/g+toWDTctqnctKYEHHb/GO2M+ZzS+pfVePGHcbUs1EWR8xtLFkWNrCS6RIBS+TSFq3fPbXAeiprjcPNeNqviMEk7EkpgDbZjF/wCw8f15+HkzPO3IAFhszIgha9YtvLMS4zUAdac0HqTPaukJZ61dBzQquC7h17RbLA9sFg04+NIUf+2fTE51eIiQcHMHq3QZR9tPPVhfYxrJ3o2J/uXxIo7ua9h5nNaFcfWZXuxjTmVqBB7yoCOxSv+jv+WSNWMWVE1l9Qfjvm+YO5dfxjyhLAx58rn6H//byrOOG5uGkl8bcFiIeM81vxZSvz1Nwu0UovEZm9J74gN9zBq9YuOjWZwsokKcCZhw6Q+LuyUYISUR4eUUVrdcM7seGRGyfM2TPhOHsDgaDtIbHX8aJ6JXF9J4TCZaEn1zRN3q5Oo42HwTK0M0Dq0IILedlv8+gvqcE3VZ8JchTR/HDjJb+JqdH8ROJdoJzI+/UvT5wfVE28Y4mwsFdQtHCtKbRhEoQFjW5VCwlWLvniwfsE7/iedS+vIlxDsQTJzWznUjabPcpka3RUzxm8q4b76odWsqp7Ds9u0r7WJS768u2nhxaPVLxs2tzB2vVVtQsOFf5F4LwSaLRCnVtpGASXfIoPEffuVy2emde3jEM8J7GfLFmwuQarew6255+arB1LWWizwqmsmNkbWZaaxtJJl5lzAbcw3ZSDzFfN2NCX0dKmqPxgSFPgOL25oGbfe3TpjcrUylVNUEdHXC/DSMI3+TphQrvrg5VmGD03vh+kWbd3EV8uEfwNt8YcMxj/adb80cQEkOyTSdY58yF0qMDww1BGIoh0ximaHxD1zsUhjAHbZKAYhOX1sBplN0keNbLycWpzHFWeWfWm9GDrf+JK04fESTB52FJMjfCts6Wd7dca6IGnA+UPLt1w4SXyqhh0d5Vy/08uW//Xpyhf78+OI5zR++doEEBBWfBGUYQJYxWTuKPgqMkcrF3GOn+K8vX1c8fflE+Aj2tthXgtSeKh5mjWG7XwSvQSiRWWrieSGFxJ1a0KREx9Nl2BhHfFCnQvNQOr+uJ3bWDD X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AS4PR04MB9576.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(376014)(366016); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: fjw3iKwizFR+baH/dHCbq7jk4ILYzoXCqV1UiHnFBjyIgUtdrnGDo/zs3arE4kNoq+HUsXoWuLa5/KPpquglagNgNxEbgYvHBEJIiEYa7SmZRzm9pXvRgZeGFDpPzQ6gNAZ0vu1cmSLztBQ20E664wCCb0C696zU/wgJkDQbcJMM8iYkhaa8HKuLNO3mBTmG6ExZnnhfpgjlbnE087+yzwC0XJbn1ER9rN8J56i00+qPR64YuffW8DF/W8D+ItqdYQ/NMRwYtJMPJPQR3++f8yk0Mvrv5pNI1e7whvR6/19e0JgCJ0w60Vf1v2Cycnod2w1ARg15y28FoRUcbNq/v8JAVgjd6NWRPU2aIjjZ54l89MERA35h8ZqfkMDHiqwj+IvqYAnFtDFL3L1CwWaac3ndOlmL/uw4TbB+TtNam7sZEv9Yd20jXjXTSqOO6VxDa1ShaUq+oMDgdhBMLDBPPk/zyen8KRkaedTQyGY/qLfAHSUMkkFs+h0uAar9vx0ybYCEplK6Emtyl3h2GnI0nYAeKR8N5/E5QJK3daTNymCiCt5yGm9rGfmdLydBxfVgrNczZ+9yvH11ccZmnB0iSsTdOXaMkVumFFVc3mMY7pYUSqX9g86NWtiW0Zuczx9OKa4O4U7siLUF8qN/02IokrNCPqHZFscaJPwoaA69Xprft1yV78RQSVHapExDhOxI4VgYSkuOZoFxTViuUeE2Av23BeX5o05LtkaOlxZvcwH9DR+EFOA9S//nB6Ksn9JIncfXtuPs7nSpYxuRPIRNEaZrSFKr2D6EQeC/sCUeQrtsyefxTGAHayA8uHjNUwKAXs8W0kSY5IsnGpnnk5zjyl+KTmBUnquiRi5GrL9BXfU8u6NAZafObDvsi+D/2vj9I8nJJxuSiXP35o8jNNIuFabK1TLJR9/aETDzpCszrZUKrTd8mo468n4OliF/leToDvNBLYDf0MTj6ougM3U0NyqQPIIYBNVQ7f1al9J9rHGyJJ6fGiQBdWIRGake7nEn5LL/KpojrTZozzXiqNMNW/0Xg/v7zzxSii3LogeI+clpi0OjFfE2pOakgPgmtGkbsKx0tddAlNjTsRmhanFx0FKQPZ/9SPjlq0OXjli7lJOjO24FHkiG9dMTqoTXWP4Q+D2ePeJ0BSAZ/GSGMHnV8LwkUl+tDJ+bYkgkKvJwP0JkWRh0g7uBods6EFNmiCdMI44lgGQrhNAzR0ZJqzA2xCuWTlTITgNz20ouIccPn2QqtGOPNc9mFkk76PpI8L47Dbz9Lt+3FB6Bq7CzZnE8u/1sagjyMELtR1T3La6kyLZ2SsL3Q8tUtzQMB9Mnl0WSQERU3ykbTaeb/3G0sXxFWzx1voh3p//P/DqGVYpgjPsa1N44xbXMT1dadXzXagNxl07+0eT8lZlvf2jtSvIoR4O5v08PkqMeN0r21MfBelrjNmlI5C8+YKXCiFYb44mMwcklMU+XbdSfmD4Bkh+eo2YtXE8NSxZ1VxjMVpS1Mo/sRXecDfSmPWhYyr1PNjy8ia0GRKjwda8XvchVena1qi3cu9q1D8euwoEWSwUMjYoMdm/7rs1dnN/Rs/9LMt/DKEQvOTb6QJ+U3V7H9hkAXQ== X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 30684fbe-3269-4c07-decc-08dd476ac7ca X-MS-Exchange-CrossTenant-AuthSource: AS4PR04MB9576.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Feb 2025 11:30:10.2375 (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: jYKquPL8mQ7ZY/OndS69cOXa5F2f03+0R4lDqQAUNVLmaklWdIA5uFwkdRp49LPUHHW2JK0fNUmXny68QPYUOg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9392 The Programming Notes section of the specifications states: """ MANDATORY REGISTER PROGRAMMING Make the following register writes to ensure proper operation of the MAX96717F. Without these writes, the operation of the device specified in the data sheet cannot be guaranteed. Set bits [6:4] = 3'b001 in register 0x302 """ Set this register before going on with the chip initialization. Signed-off-by: Laurentiu Palcu --- drivers/media/i2c/max96717.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/drivers/media/i2c/max96717.c b/drivers/media/i2c/max96717.c index 9259d58ba734e..b1116aade0687 100644 --- a/drivers/media/i2c/max96717.c +++ b/drivers/media/i2c/max96717.c @@ -78,6 +78,15 @@ #define MAX96717_GPIO_TX_EN BIT(1) #define MAX96717_GPIO_OUT_DIS BIT(0) +/* CMU */ +#define MAX96717_CMU_CMU2 CCI_REG8(0x0302) +#define MAX96717_PFDDIV_RSHORT_MASK GENMASK(6, 4) +#define MAX96717_PFDDIV_RSHORT_SHIFT 4 +#define MAX96717_PFDDIV_VREG_1V0 0 +#define MAX96717_PFDDIV_VREG_1V1 1 +#define MAX96717_PFDDIV_VREG_0V875 2 +#define MAX96717_PFDDIV_VREG_0V94 3 + /* FRONTTOP */ /* MAX96717 only have CSI port 'B' */ #define MAX96717_FRONTOP0 CCI_REG8(0x308) @@ -981,6 +990,14 @@ static int max96717_hw_init(struct max96717_priv *priv) dev_dbg(dev, "Found %x (rev %lx)\n", (u8)dev_id, (u8)val & MAX96717_DEV_REV_MASK); + /* + * According to specs, in the Programming Notes section, there's a mandatory register + * programming notice that advises to enable the 1.1V internal regulator to guarantee proper + * device operation. Let's do this before any other operations. + */ + cci_write(priv->regmap, MAX96717_CMU_CMU2, + MAX96717_PFDDIV_VREG_1V1 << MAX96717_PFDDIV_RSHORT_SHIFT, NULL); + ret = cci_read(priv->regmap, MAX96717_MIPI_RX_EXT11, &val, NULL); if (ret) return dev_err_probe(dev, ret, From patchwork Fri Feb 7 11:29:54 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Laurentiu Palcu X-Patchwork-Id: 863146 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2055.outbound.protection.outlook.com [40.107.22.55]) (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 882A01DE3C0; Fri, 7 Feb 2025 11:30:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.22.55 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738927840; cv=fail; b=jcEsOWcSQ+t79B8m24ZlRevGgNWe9rlFKcR3TUYn+VGPBQLJ77/XqIUOR+CbsXKXiujATaluer/EMqI5B3D0ye9y+7ZDBFB2QKFEzzP+ZB3G8DrcFw9R1IN+aC3b9WyWE9m4FE1sKqu2FiBbvn73V91Y9PrC7WIUQGbPyCANFJk= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738927840; c=relaxed/simple; bh=1hHFzgGazPB89wZhW/nUS8bMueK/sH4vKa0sV293FDI=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=dLqjge7VlBPtKAnLk4eJQqT9/tlB0HwEoOyWC+gPQRBSD22HK39i34qRHctg+QaylpKXH/atTplml/G+7G/AprhQN50nlNrBHBPIQ1RfcO/33RYjWccmPwAyVshATojXHOGmECaF8KO54vFi7wMMea5PqNA4irFypV+ASgTxEfM= 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=v4u2bN6J; arc=fail smtp.client-ip=40.107.22.55 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="v4u2bN6J" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=JAeBmVkNpdovLf6Z2rS1q3Kzg0thjjPctVtf/voQP5z4avDVh26efWGh693pmldJFvyAKIp3lnHVn7hzQMrp4DfASBhnp9FPW7Mb3lXVFkHnEqyeck/7gMbvQc0WMP9jQms1dsJaXePrthfbbkV2iFG6/7uV7AlAYzbA0SMJrfW+AiOaxV5zavZflgu9jN89iiLNnY7TA9Qb7UBwVfczd18WUpFbCCq5wFNgh+0I7g1MWjCIe3CdF6cFeo4opvcF0wDmp2LiD9ZKt5ELIaH67t1TAgMiLyn2ySkSDMHXSpwiWEaJ3v0WT/xLqiBILh8YzNLIl8cdTGdfKImLzSnfVw== 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=KNkBFzEiYpCNUxnTf1/1CK4CQbmq/Sekyx1DyqxIy64=; b=iHpHnAGR5+ilMOauUB/gSVDrvVMnya3nrnlc+fEN9Hg2+SV23kfcLwQSEjddErL6eZxAGYAnrYLqs/JQOYbn2mfOB4i1aXWHh4JYSPKZPD1zX7f3VZAYD/e2zhjxAGRpVTRFYd5aNaT9YBAfWzG9FylyjueLm1kx+PSMzJnfuWdk8zYZdmLoGKJl+x2CUb51ZC8MCKpHKRIHEZ6GQFl7YI4MaNTsppyC7Nghoa8+Z0i63nbuPakSm4qF9ct9Rh7yXnb7gkGGAWHTa6urX7vcW+8594Mf12pq/giMjhYZmvODiCVJZMvkA3euMjHcw1bgbQp2/qOfjW3000qqMXp+Bw== 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=KNkBFzEiYpCNUxnTf1/1CK4CQbmq/Sekyx1DyqxIy64=; b=v4u2bN6JH/jjRO5x+BJOCQMfDkMSmEB+Vx834KNZ/zrGazlJSAvzQSFGfJ5qJ0GCovc+SGZDKMUNRcVioauvw/SOWWX3THnLjty9iSvFCli421vcYQ0ud2jbQvsCuXjDT5quewximcoltMRY4Rf3HhFqiY3Y8K8xwh5gz0kl94Xt0MiEH/Pbc2A5iWeYA7I2lI44ssEl4QMJer/y0e8ygJW1sMoVj256QUznvRA+aoN9ZN3C1Lvfy3TAzi7ealPatBuEQAv9LBSqxaKod1vJBAOCh23pw0sdwmwRSvs8FFUB2NkBUqQbod9Nb4Y1kdkjKshpfrgZjSsK2Tmo2oFgQw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from AS4PR04MB9576.eurprd04.prod.outlook.com (2603:10a6:20b:4fe::12) by PA4PR04MB9392.eurprd04.prod.outlook.com (2603:10a6:102:2ab::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8398.23; Fri, 7 Feb 2025 11:30:20 +0000 Received: from AS4PR04MB9576.eurprd04.prod.outlook.com ([fe80::9cf2:8eae:c3d1:2f30]) by AS4PR04MB9576.eurprd04.prod.outlook.com ([fe80::9cf2:8eae:c3d1:2f30%6]) with mapi id 15.20.8398.025; Fri, 7 Feb 2025 11:30:20 +0000 From: Laurentiu Palcu To: Julien Massot , Mauro Carvalho Chehab Cc: Laurentiu Palcu , linux-kernel@vger.kernel.org, linux-media@vger.kernel.org Subject: [PATCH 2/5] media/i2c: max96717: implement the .get_frame_desc() operation Date: Fri, 7 Feb 2025 13:29:54 +0200 Message-Id: <20250207112958.2571600-3-laurentiu.palcu@oss.nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250207112958.2571600-1-laurentiu.palcu@oss.nxp.com> References: <20250207112958.2571600-1-laurentiu.palcu@oss.nxp.com> X-ClientProxiedBy: AM0PR06CA0123.eurprd06.prod.outlook.com (2603:10a6:208:ab::28) To AS4PR04MB9576.eurprd04.prod.outlook.com (2603:10a6:20b:4fe::12) Precedence: bulk X-Mailing-List: linux-media@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: AS4PR04MB9576:EE_|PA4PR04MB9392:EE_ X-MS-Office365-Filtering-Correlation-Id: ee06b63b-9f74-4a4b-ba8a-08dd476ac93d X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016; X-Microsoft-Antispam-Message-Info: Ce0M+r3m1eqRztBOTkj4lt4zpNZ0d1zW5N21ZZG8uW8vIED+IORySM8BzY9HYAe+OXgT+y03lNoOSd8U7yE7gkG9T2UvCyOg+XhH23X01S4nRSjXAfDFp68flvCmVEWkfsmC+nmTB9vCLMBRP19TEvz8wBDUSmvFugmPduyoMcgR0DeqEJHXsvLa0C5l8kyWlQ3m81p2WyDEoVP4Px2m2fKdeztdFYT9Rg3do8eMFvau6Rt5jKB7237xS8uGGQwy6timy752e+l6mMrKEObcAYvj4/7FTv4NJ+7gabJcjLWPBD4h8IqzuDjk3vGQLiiTVe4y/bDJ8lislxZ5uXgQgDn7oVG13e6atiQ6XU99qFdsAboA3V14wlWc6ZbT/6O62wpLgB7ntmzB1W+d5wpPprFmEPY6IFMfWy2lMGE4YL2azqLMRO3XsmqQTJrKi8fLL1DkYoTS6AKlJY4fUVughBIQ+t3Bb9jFRtewVVM4kqeGuEkc5Nr1PrGohNBReE/bFZaCU3QI4W220/8g6vrxmid/HSbqdOkMDuPmFTBwiOdm2nZr0FgSnwoLLL57aqxwDa1ps2yk7PxcE+xF1nSN1UDs+djs3Rw825WSHbJ7pfn9X0TiMN8dBUse0RcaUchbRGXlo4Jqal29dGvJSusviKM+jal926yb94jx9Ps5lqJayxpMEquJl/Z3IdIBhmen9PGtvTAVlvy0G3MtFFXMJn/2vFkOD5BKiXe8plMArJ6aQHZ+y6c9iMzC3I46ibqXqq0t5Dv44of5rVCwTnFJvBhkeEl4GsVslzQxEfV4Gym3UCGL/5/lP+f7jofyT6OFbs++o+Qg2b/uKOfb1cWKw3l0C2SpYCR3vcwzfUjSrFI/x2951C73a7aIQ5NFYFZX4nG8oIEZx/a4DvBej7f9NoSC64NhDeT6v4lTnqu/SQTIlPYXP9Xx09uwXtVHwapAwW8vD8tLQvhtB5U09fZRqkxVXCIyALRsoKCIYYYE624xkIn+YNW2D4cEo42X/aa+L3CBY0/D1OGX9jx049o+JT8kRO2uNja5UBgsjoIh2B5YBREaqwaAyBgp4xT4+Vh9Xehni58O9YZoY+hVtQ0nanec8K13XoK7UzgRlGD1niGwGEblkKc7m9AOBKGWp1qUzKFqBNmMNnCsVl92jbldpwbK3zSglipWHBIMa6Vlmnqy/YeEGbMu4DTy6MG/zvLIXFbXN7Za2lSnPtvYBFhIiIVyMny0sC4BBTgH87w4z88S5GxsdWxUXY+yZw9fZOrnygB8fyhhG87KD2O5OmgSthdWL++zvav7hosquQv1/o7QOPzaVNYwCmIj+G6q4ht7Ed9tILQdpjZSWoeOw4loKZjFU+ZbImNx8KoqH2N4eTn461Juq/+pECV2YIa+pc3/ X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AS4PR04MB9576.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(376014)(366016); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: JkI7wLJYcCi2OgKCnmpJCmo8PCPcTpnyiUNuG4qZez7gcVfR8ZFLEJ7xGmV9lL3VNeLcftchJUhzTRoMGZRSE8b3s5mDvWoKB1N1JXh8ZCXFHADWyWZnuNxgv1SqBOWspkQy1XHoTbBKGn9JkDBZo3FcydLRyxjgI110uNvqS43EsuhrRQ+yScnhSi3n+K6Wqvya8/ZAkY1Gg3b5G0r9pibnGtAatQ20AyiTC4w4c+tLXrjzZzb8Syb/TjxJYrDlmhp8lcmrtUM+2m/5tT4hb1z4bFFcpSOcuA0HQU+zdkPXz2eIeRt6ZjK4E5JuzIHZd/84a9ea2rigG8L28lty5KZi/bG9eWJDSn98cV6HA9CMmbxc1XOWXiUP7h7AzQ0c8JpiTqUKQxF4BlFFWoThw0C0C5DR+5ULqAyNmSRRb7kHFtZCcuxPWssROaC4gtmn5lEs1eH3sjfo+dQLyTAKdCQwkwY52mMYTKE1vTpzQWif2ONCDU/RynZncqaX72Es5EJur8npLKHUiJpBJ7cl/DOKQE1xlrDYwqDpwCTVFYcfqWP4E3gNYtfptsyLxcA0t8bm4O7s+Eyk7Zt4er3GjAyeR2k4+jA/TmpCSWuU+ullmN5b9B7gKbgHY9+otW/zMJKR/6RG/GHDWq676jZQCpVFalrJfrr93MmYe2fuXmaXurXq7ZI64sy8js6y5nEC7O6JO06WM1aInULGek+pJDC96/S9qrLF7lLIH985PAFdXU3a13/mFeQU/bnPe2+7Als8MrZBVO1yiQV1ZNWKvBW7ooUyW3f9dAfKvBHlmsaSRM6hZeDUyXOAXf3bozFyX/teFMbPt1qNeRqn2dHeBKO+mzYo0cfxmB2lg937GnciHtND7iC9aKICVrHFEAZr4kyRS+hmG/TqaPpuoOZeUnreQv/G4tw6jW4cM4BEqQZIyrhwCK1iUlZE+WiNPKNG7Jo52Bv27WhcgGBv6ul4gHS7sRaebL9TGMDaR7YWzuaCl3UK6C+niatDvwzMJT0vyAwkRCFvAYqJpN5ZQsA4/0ln0j4GshQxgQ7I86XBIXeC85uch9nFOL0sLQd3fH0lKvHlKafD2OjMgZzboVkgfEGgh18FD/NfycEh0resBixNoaaJtUVjpzP57YteKLKCZ9JDtqSc2CZLbZ0fon4lRbwBAwmdOkGY+R6x3U7SsIbU7sMM/PtTrnB/F4AqK0on0mTZSKlqUo59Lc1si7zx4MmmQ7+4bs6nD4Gf5SyDpy0NbnV2wnI4EuDrwKqBNdAQf7fA3FZbLalSEZMjHJm/vsKSh8nwKM5z4ZGC/NKbJvTmGvoOCkBhLFNYj5XbdzhjY8mpbmbhN3MJaQ6N3FmqaDanefiXbVDx9F/ws7kRa5Co5dDNJZERP/dQSW4Voj9HIvE1XD9a2SER+/+F66K3l2d3IjMqUMgIG4aZUaV3I6SKMVeAAS56BfDNDF8yB/cuedRlYGSBaljJuB7PQkwk8zbRRIEXEKL+cHW0VazMOtrfXlZ3+n5vXYB9edDRE45va+49tHrjVIKu33Objyz8LAY5msw/GAikJ438p9JEugA3l6pohh+hkgLRBWvaZwNHQ+QsqUk9bH+MsG3MyjMCog== X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: ee06b63b-9f74-4a4b-ba8a-08dd476ac93d X-MS-Exchange-CrossTenant-AuthSource: AS4PR04MB9576.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Feb 2025 11:30:12.6874 (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: xMpSjS4ry5++d/1yaewL1t3mwq4nU47cjpI2VQK600mv6hOGW+QdKc7j8PkTPDd0NX7xX/Pb3tV0iVAWNoU7Gg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9392 Since the max96717 serializer can work with various sensors, we need to implement the .get_frame_desc() callback to get the VCs and DTs for the incoming stream(s). Signed-off-by: Laurentiu Palcu --- drivers/media/i2c/max96717.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/drivers/media/i2c/max96717.c b/drivers/media/i2c/max96717.c index b1116aade0687..6a668a004c717 100644 --- a/drivers/media/i2c/max96717.c +++ b/drivers/media/i2c/max96717.c @@ -575,12 +575,33 @@ static int max96717_disable_streams(struct v4l2_subdev *sd, return 0; } +static int max96717_get_frame_desc(struct v4l2_subdev *sd, unsigned int pad, + struct v4l2_mbus_frame_desc *fd) +{ + struct max96717_priv *priv = sd_to_max96717(sd); + int ret; + struct v4l2_mbus_frame_desc source_fd; + + if (pad != MAX96717_PAD_SOURCE) + return -EINVAL; + + ret = v4l2_subdev_call(priv->source_sd, pad, get_frame_desc, + priv->source_sd_pad, &source_fd); + if (ret) + return ret; + + *fd = source_fd; + + return 0; +} + static const struct v4l2_subdev_pad_ops max96717_pad_ops = { .enable_streams = max96717_enable_streams, .disable_streams = max96717_disable_streams, .set_routing = max96717_set_routing, .get_fmt = v4l2_subdev_get_fmt, .set_fmt = max96717_set_fmt, + .get_frame_desc = max96717_get_frame_desc, }; static const struct v4l2_subdev_core_ops max96717_subdev_core_ops = { From patchwork Fri Feb 7 11:29:55 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Laurentiu Palcu X-Patchwork-Id: 863522 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2085.outbound.protection.outlook.com [40.107.21.85]) (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 5871C1A9B4C; Fri, 7 Feb 2025 11:30:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.21.85 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738927827; cv=fail; b=ZxXP565Y53bNefmX716GWzxyO+/VlhhDRwJPEN/9KfHKqZyH2M8fdPddZ2sWy3V1l/js29RPJRbYgUPQkDUHd2d+74MQd66ilylWOk5d07cio2+fl38bcDDt+D2IT/j8BP9+gfXEH9o0P+jI9NkK4dJSskv/y2eY7DS9Mk4DDrk= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738927827; c=relaxed/simple; bh=GmE+8U2SYof1nsHFGCYl5HLBP1OBFj4yskRL+o9Qvp8=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=QCDtRnVKdWVcadOItfn8KHjjCPT+qhqznkWDeuEncC2ntiR8rQXFOzr7m2HaSKx+pbiNkofsvsaA6JyTash3hSwEOzIbat9STeHP3oHRSbhHhGqjwHIiCDuyekllfytD8x1AW0LrtCCdUUTDKjGWSqjGgp21/YoGdgP6I06O1Nw= 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=N9VNasw9; arc=fail smtp.client-ip=40.107.21.85 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="N9VNasw9" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=bI8aWPb/bHtBH5QFlFsUDmhV9/9bEVUo2TA6wCF2h9u2BgG0vG3e0yrothtiOEw7Gxs7VDjUHq/PMtcQuGPPrpTBKr3WdBZZCjJPpUKl4ggneWJm8lV19lVKEJSKnBqtAq5wPdggnqyjknrGov1Z6Aqiu2B2cb0ulQgx+VoFfzTxIZvHsxhSJxNXiq1SkZGRpJfEaLM3lANCkvMQUNOLC8J8MwKX0WPkdIu8zfY/18CfgZKXMFeNDNiJn5hUC9trBDWRWY1ka6lbgYFPFy8frX2HPYnNw45icEIE++40wGNt5i+CYUU1aAce6MCCPe1KTsV4KQQpzRCuCk7M8epp6Q== 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=yXxKxwQrFfb9TNRAqEBaRJ/DxNNhr4sIyL0wLmQSTlI=; b=i397nW+5DKqZUYW4UNecWFH7mwOYWN2aD7SSRyLnWTQyq6XD6eR3khmCH8QS3VzUVIwBCFyqoeD5H94jVRuAxJOc4t0MOmIazqxu1M9X95z8w7JmEqKKMRajeaElOGgKlPGcKjahxVpV2g4k2Gi32FGXKKb/noEExZEhHTcmX0OueQ0lYtnhGqPdRL+lrzsBXmXAuM59OXyn30ivRY1q9xwG/QN1swC6BMew+wzGR972HWwu0m1NJvrdaSpbt0rKDUSPd/gumNORrOWyPpVtFoUKdsAzS5EeIqafFaLjpliK/2OKRrKqntwGNvXpsG2NWhWa8m9RDLYFFW548fq3DA== 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=yXxKxwQrFfb9TNRAqEBaRJ/DxNNhr4sIyL0wLmQSTlI=; b=N9VNasw9VZlVozwSo9ow/8Qx1lcz5pyMhyGBvIJ1osAQrv8jir6rmXs3wQMQym70s2Q+yvjuDRRnZK2X+E1/9sZCH/Hu3WmCT7XUjFSY2hzJLzAeWS3g0kj3E6Xkkzt3f5IvRm/A3zaVWmMIUq2FhTkPKckoa4kSFACDPoI+MjWzCpXOGI5MeVXXfKTGFXJPTZfqBv4eLjvKZmVtd9wVqJb3jLalQj6pHD6XGyMkysKcyqmtLbn9KgoHWgVCVrKcjiK3ozi6i0RPiIfnwg2CfUvtbwzbA/4sf58XyF/DbOueRYAX0BmZBUfCjUiOnZus8+zxuQvBMKO9u4rSFaOldA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from AS4PR04MB9576.eurprd04.prod.outlook.com (2603:10a6:20b:4fe::12) by PA4PR04MB9392.eurprd04.prod.outlook.com (2603:10a6:102:2ab::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8398.23; Fri, 7 Feb 2025 11:30:20 +0000 Received: from AS4PR04MB9576.eurprd04.prod.outlook.com ([fe80::9cf2:8eae:c3d1:2f30]) by AS4PR04MB9576.eurprd04.prod.outlook.com ([fe80::9cf2:8eae:c3d1:2f30%6]) with mapi id 15.20.8398.025; Fri, 7 Feb 2025 11:30:20 +0000 From: Laurentiu Palcu To: Julien Massot , Mauro Carvalho Chehab , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Laurentiu Palcu , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-media@vger.kernel.org Subject: [PATCH 3/5] dt-bindings: i2c: maxim,max96717: add new properties Date: Fri, 7 Feb 2025 13:29:55 +0200 Message-Id: <20250207112958.2571600-4-laurentiu.palcu@oss.nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250207112958.2571600-1-laurentiu.palcu@oss.nxp.com> References: <20250207112958.2571600-1-laurentiu.palcu@oss.nxp.com> X-ClientProxiedBy: AS4P191CA0002.EURP191.PROD.OUTLOOK.COM (2603:10a6:20b:5d5::6) To AS4PR04MB9576.eurprd04.prod.outlook.com (2603:10a6:20b:4fe::12) Precedence: bulk X-Mailing-List: linux-media@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: AS4PR04MB9576:EE_|PA4PR04MB9392:EE_ X-MS-Office365-Filtering-Correlation-Id: 991a0035-a99f-46ee-c97a-08dd476aca8e X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016; X-Microsoft-Antispam-Message-Info: H9+Gf0VOplWJLc0cWFHeSXLh09hlyfa6R+QhjruC3Kl2NougEoKr7i5VDBKtjxp5ucr8oIBNfVNmdvxGPFB1F8o8AntNHH2OB8OfcBGN0F7i1TztNH4tzV37ZjQ8Z9qcKN8FfyWJLUu9LP0ICMYyu+2akOyasMzvrXUeFq7dmCbAFnFqd2asnLYDHkD1+Md+cbWakdR9VuuCqQJoSBmLsY5ki3uYXz9Z32g67+yDGzdJEIbBx8VIvdvL2TAJR3EoRIdc5yu4g9swxOizM+nxMGsibG/SN7/irbX/IMXgfTRKEtXb+BeT0f8h9yO+OESUJrD+s5MeGZmFtqNzpVEUrzbaBU1UjZYbujIBjXlzuzTBM/2G2hDg8kJiU5dHXm6LS8ZuaFbRBavdiiVE4h4EFuHe0l9CUhM/gLDXUTiRJNFCXjY4MOIClw1jiL+XEey0lJBIVSLmaB3V0EeQ5ZTvSSTACeHh/AGUEDMn0tlj0GhNdP3FntBoWGZwBKNF4INhKk62SUK/82cyvu5I3STkIGvWqUDMRlRmsAlfHEjAdNtGYurC0TnT5Rz1AYZduJPEeYhH+kCvjKOIQU4m3ZVKoDZcBIqWAexBIEHJSH9vzH8lBX2hqepeGuDG+0YnqDzwjMa6Kzm8uqzWK8eiD/owxe8XkzQRaV/HkGTzy2yqG+90VTy8VLdRlIhUOv3K2bJUIy1kOh7mYGZYqBT+dB0+IpnJuu91C7BH7U/oF/wsugi/nchqXw+KYiINsng+rqpLxOY3BgqO/M1AxWTua/xoMMF5ry1pBkFbnTt+cvK9YKlZ04WMzd/y5N6nYyn471d8X7HBWXn4PrEgWlEP2TfeWfb9Ppol6ib5acr/XCpHqY9m9KXaeCepzOEeKMM5H012gJg1BtZkhWmKTXegcN/t3mBC0TT6ga0+IrA+mTcJ/pIrYwfBcvYGHzNQsoU+TpG/6Qe6styetPsgASdna2VexTvygEN2OfloZgRWVeq/ZhMj/ZBIi1js5jTIzevioYC6iXJDZZlg7QW1D5+CD2liW5bh8yXqZwlBTGiOKWB1kQ830H0pJLwUEdDlKELGGOHyfHf4gxY8oi9NQx5LvyL2iZEmvULe0tFVydkXkYsh2JpQ87XLCQwtY0X/r4p6Mt+ofTX+JJAWkKyRg1vk1nZcKQYe6zPpDnZdV5bFlg4doWEXWMAohhouA1dsI2hKLFFyWZ5ALHp94juFDta3sIbI/nKt7MwDVA0DvVyOl7/GvBIhsS9f3+6Oj/xRedtCICK2Mm92/xVCJQo9xcH8pQIcvF3tVZENLM9OC5DEknYapQZPBmidQ3a6nJ6/6FlD1z/7JXcOaXugF6LmWVwTnsMo9qJBh5CF/ZahpMvPADwp+1ehnNsf2MFZ8Ji7/Ud0EH2F X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AS4PR04MB9576.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(376014)(366016); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: OKVHdra/pIvrFTNdwjWX5OBW2lR1czw3YnL9XQttK043iXofibmP9SEfbjN5WJUEuMolbV9CcAcDsCRUxf7WH8QRbC5TpBVcJj1zJJRm4ZJmiScotz8C3EgxWnQT3vDb+W0Tn8ayKtgUrLk2asPyXQtAcfXK7tc8umvY27C+FDxDbZ5nQhNBjSBsZ9tOCRCcxGNHRthquO2FpVVDR9Ncbg93S+JPfvsMupq5v/nYVNFGacqd0EllV+A2KmUhmVMgSOKl1FN9yl0QEvTeSaRL8IeeD+YzS+PbTu2aM1mOTPL3zUR0HNzeB24uPHLdc2MxMBw9u/E4/NkqVWcXdsZmH1f/tejsOh/65k0KsE2LgNBMyGd9xlk05hp8iroZJSxboS2L9Qzpvwg1oECx4Ms44LJddtMf9egl7Js4KJsdZFocv2OnOf4JUlegTEf62XKSpkqvaMcXETesgJ6Vj2/Aa4zbqJ1Q6AqBJMzzH8jUgISFzo2PavIOVg6pB9ApAEDfCLuIvLLjQPwaIWG7A23eOujL517viI/f0HbB72sEMO7fQu+++4JtT6kyse+2MTTPlIfk4ZhqiBW3q7D5dUp3yK8anrvUSYVVbIYpeDqJ2+cxD7fdh0XC2hhilDxl96VxIf7tlfqp7L6znF8pRRTmEExtsbVvhqSjlRavJk0m4QhCBvB0+HYB7DUibUztXy84Jz2hl1nygkAAS+wTgWzLWNhB3h2VL4iuApQxDw+j1eI8OVv/vQpL5AkZaPLWkYpWT0QZTDaiasBxiHxFeYRk9jBV2/P/X+tzt65rBj6QAlTEYabMJccd4DyYAG5Oi6Vs+I7aWV+IMw73bvil0K1z5Ez6ttS65/60/3SvLylYZcebU+7S2jPuJ7hJVOtr3lbZEOq4Fy70ibplc7QwcqbeAqFIdwXsoZE6mStWuxZd9e/Suz4ihNwKiA6nmCis542PJCEabpGiGTDu1RtxDEgJNBLZhrnX9Nx6wUTC4EAjcEioT9zIotgmi8dxCvSy2fr0YHdXb3Fv0VIBSfqsjKTH1Hmam2mjQrTm1XjlAHvVDddt4lHdo8NzwO1FPw6n5c1zmK8fa5dqjfX2xb4wWDUYQ5r8deELLqCaiv8sC1/JdWJ6G3XK9t9nhP7ubzKDRAwtQkhKXgHEjhOrjM/trjy4k8iFvSOBHtgmRoDWtnlVa2j3bZ8UTTsapAjRsCR720ysrRwBmOOnP4NHyAv50U17RCvA8zijxr9jH0vgnFi+rX/QdCSJQlmdj+2t6i4P+3DqLx23bEfOywDqlYxK2b5HXLS+mRGR+5wtF2cb8NCBS0sCgH0meYRF6ZVffkm+TMf440bvFuuvPyJUmzNC8l3MTSOkpHlClox5J+Lt+gGvc4YVcewMdY9OVKgkNGj45pHPUrZy9f5tY9oUD06rS1VNM3OHZMB7O8KUMEg0YK5oqTaLLLlng1OblounqD/s4jHHPfopvgsOsHQcop6hrkXfkwH7hNtUFQA7mHtqNQvGE2vJ7i+ZscDSrS83OPmG6IHKKdFODo0eru3zOE04igBcV4RDn0cFVMSvjnZJCWM1wnwKNvb9J+KtgeyrlstmNKvCi0MPAU/b1aboJMeFXfgt6A== X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 991a0035-a99f-46ee-c97a-08dd476aca8e X-MS-Exchange-CrossTenant-AuthSource: AS4PR04MB9576.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Feb 2025 11:30:14.8594 (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: 7zpkmEFQZendAv+ExFex06b//sAZAI66OJnd9JZsyl8YziD19elB89zmbh33ZfS5y2kJlGWo7Ga3tVpPTQNwSw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9392 Add 'maxim,override-mode' property to allow the user to toggle the pin configured chip operation mode and 'maxim,fsync-config' to configure the chip for relaying a frame synchronization signal, received from deserializer, to the attached sensor. The latter is needed for synchronizing the images in multi-sensor setups. Signed-off-by: Laurentiu Palcu --- .../bindings/media/i2c/maxim,max96717.yaml | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml b/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml index d1e8ba6e368ec..fae578d55fd4d 100644 --- a/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml +++ b/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml @@ -42,10 +42,35 @@ properties: number must be in range of [0, 10]. gpio-controller: true + gpio-reserved-ranges: true '#clock-cells': const: 0 + maxim,override-mode: + description: Toggle the operation mode from the pin configured one. + type: boolean + + maxim,fsync-config: + description: + Frame synchronization (FSYNC) is used to align images sent from multiple + sources in surround-view applications and is required for concatenation. + In FSYNC mode, the deserializer sends a sync signal to each serializer; + the serializers then send the signal to the connected sensor. + $ref: /schemas/types.yaml#/definitions/uint32-array + items: + - description: FSYNC RX ID, needs to match the TX ID configured in the deserializer. + minimum: 0 + maximum: 31 + default: 0 + - description: + Output GPIO pin used for sending the FSYNC to the sensor. The pin, however, needs + to be excluded from the gpiochip using the gpio-reserved-ranges property since + it will be used exclusively for FSYNC generation. + minimum: 0 + maximum: 10 + default: 0 + reg: maxItems: 1 @@ -113,6 +138,9 @@ examples: #gpio-cells = <2>; #clock-cells = <0>; + gpio-reserved-ranges = <0 1>; + maxim,fsync-config = <0 0>; + ports { #address-cells = <1>; #size-cells = <0>; From patchwork Fri Feb 7 11:29:56 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Laurentiu Palcu X-Patchwork-Id: 863147 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2085.outbound.protection.outlook.com [40.107.21.85]) (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 909881DEFF9; Fri, 7 Feb 2025 11:30:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.21.85 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738927829; cv=fail; b=taetZIaBZG/TcjG2l77cjoh+5zn4PngehbBNCYDiHTXsPQYbN5tdLgmCyXdEs93TbM+nsSyz4TlrySB26UZ3+aKo2F6pK1kO3pXY5AGVfCEBgVDfovL2X1M1oVQMGmh9BZesuX7I0cdnTLgSRPzwztSn0RZDaCWUAQ0AaQUMfCE= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738927829; c=relaxed/simple; bh=CDLcxrCX/9TBeVpP626ZgH0CqAMdFLXQunwIm7BFiKA=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=CsjdEwtjlCbSeVpPIw1hufJybv/j7mRBfCTUvP3SyWAH+g1lDLwF0UDY0YnjJwDQObM3AAyNEAgUKYlTjDK196c1YeQJf525TW5ccyu9YKimSUlBfyOxmDMIRMZlHJR74GEGb2NGoJsRlL0BBRlCNWYXkc+vaysU88tGXu/PziQ= 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=eoaBQO2I; arc=fail smtp.client-ip=40.107.21.85 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="eoaBQO2I" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=eQB9F1MT7V2uIUOSD/+CbziwJOgrfzmSh7wJnm8W9fPOTS6zZ2YrXZkXk5EKS39djj8LHS7R8CHv85F054ydX9SpTDEvUVcdB7jnxUl8eloutN5CHbKH8C5uziaIOwodT9BhyMXMF+OcoC0WXTYrCVauioLWmRcQLQTH1JANQIrNDwaEDZrSTX2F2dj0pDEU/8BVvvWviUAxSZUZ/v+jKTPHUd/73atMfHdE6jnhYvyXghOH+hWrNNYzucAL60glSFoZR1BKocAC9N9imfcJG99dvf3KtNbnntikER9peLjlrfAIWqckDBfuD7dJ89wiKzEybk0tVVxjpgZ4iS8uUw== 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=y/QB/IOk6Gvm9Qig9QeBdp18Hcjw1/uc02/6Fobq9OY=; b=zJDzHWW2834L4txlVJEXY08amfE8RQyDdqRVnt0Eg/qCYo+NSdaLPJfoJ4CR6TOQ/qTD75c+afuBpPc/Vbnfqty16ZB4TgaShgZ6qn7a7j34c04eBlWwaF10rxzEcuJrju71wa3YjFLkPTrXqF+48/KAOpZqfRp8SWMwvsdZe7h6t10dFXWyrm3HsB8QMv9+fRxccvvDAK4pl1lPvCxarCIdyyCU9XTe/dh+fOQhYbezfTj5L34mMqFaXkmCaRysEbeW6j2F9DiAH1qBq4fZDJrmaO+S+X/i5PXqCqgTtflzjMkVEMM070oeEOGfNCaW5t/iQlGYR9ufMTgSP7/JdQ== 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=y/QB/IOk6Gvm9Qig9QeBdp18Hcjw1/uc02/6Fobq9OY=; b=eoaBQO2IztOTF1vSk7FSHzOKiD2vFO4XIHqHwJTIWSaG0eA/30GFmjpkhcCMfbFAp9NPMbS8ZZ/g4yo8PK2piaTPFPbjjYmV7JugFu+yQyYyNc1MBGMiuiiBv3+GdqCoVkJKG5nvLxCUFIg6mhnIbie+wcLMgoSxGaVe4seydJ/o+WVNcaqNExH/muoTjcKTZW/vpWIF9ezmRl88Pp2BL8Erjfuw7327OLvjmX1erKwOPsfuzaWDhrlk2vyeFEx8e96zmb27+MpkP/l0+sBn1n6BTqGU5vya/J6xsK6B2MB1rrPy/cnLX0bc9usMQXkYRbvyzhCCgVWYByrJxLxDRg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from AS4PR04MB9576.eurprd04.prod.outlook.com (2603:10a6:20b:4fe::12) by PA4PR04MB9392.eurprd04.prod.outlook.com (2603:10a6:102:2ab::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8398.23; Fri, 7 Feb 2025 11:30:20 +0000 Received: from AS4PR04MB9576.eurprd04.prod.outlook.com ([fe80::9cf2:8eae:c3d1:2f30]) by AS4PR04MB9576.eurprd04.prod.outlook.com ([fe80::9cf2:8eae:c3d1:2f30%6]) with mapi id 15.20.8398.025; Fri, 7 Feb 2025 11:30:20 +0000 From: Laurentiu Palcu To: Julien Massot , Mauro Carvalho Chehab Cc: Laurentiu Palcu , linux-kernel@vger.kernel.org, linux-media@vger.kernel.org Subject: [PATCH 4/5] media/i2c: max96717: add FSYNC support Date: Fri, 7 Feb 2025 13:29:56 +0200 Message-Id: <20250207112958.2571600-5-laurentiu.palcu@oss.nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250207112958.2571600-1-laurentiu.palcu@oss.nxp.com> References: <20250207112958.2571600-1-laurentiu.palcu@oss.nxp.com> X-ClientProxiedBy: AM0PR06CA0131.eurprd06.prod.outlook.com (2603:10a6:208:ab::36) To AS4PR04MB9576.eurprd04.prod.outlook.com (2603:10a6:20b:4fe::12) Precedence: bulk X-Mailing-List: linux-media@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: AS4PR04MB9576:EE_|PA4PR04MB9392:EE_ X-MS-Office365-Filtering-Correlation-Id: d78a5335-8582-43cc-c1c0-08dd476acbf4 X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016; X-Microsoft-Antispam-Message-Info: bcO9yzi9+ppi9Fm+VSaN8i1Hhp6oZa/clqx71ZZskb8+WbMxbJKOmK1jz2nvEkuMtC3/W51XbMkFyOQIDPSNUEIYTidw31EnT+c2zFmV64IO5s29C7MQqtBpsyT1kRJL7Ypmefsu6RY8ln2b6Ip6k7A7BEhlXAiG4M/w6nRVZpSzRVQzjCLORe6bsFqw9LruD0CDt/cr58ZR9S2hzi2HK1uLOHux/LJIJ73XyBjzMSM7nLEIUPgFyU4SpVm2o5x49yP1ZWB84N+xR0R/IKYprW+HM/o06h3TYtgiI21zjLgkntSh+wgGo48C0GNWgJiNOROs1LK3EwYnD6A1Ud9lesnzffudt0SFnvR59sWJ74nngsOQyqw3yh6+h6F6wXg9vBYxPTfATwECtZ6etKbyFEwvn5ddcSN4qz2Pc2ynjFgnhnVvaEETN9uYKoa2ApQr2qwzLcivWaZ/91OlSJyknT+nl/35wDhS+Buj0wfXbPdbNOAB8PVHNBqB6Vz1/S/X8XlsaLGIsIzdgViI4OhggfW0eJKRTF9U4C1Bc5okmsdK2TjPPX/oDz5baVp3yO4Np5KqzVQt0/wzJvBfjxDvix2a/bccVrHHgYypjozKe6bjWtfY2WsISYO7+IOh5I4HqXr/vF/38lXa5Y+k1Vni+nQq9n4843wsS2AmWFCfBjVbpg0uilw3HsSaP7PgWDgzo1H1H9g26Jmu01dajyE9yVtPpJRIBLpRjwd+4BuoxZoNwO5VpefTZhpQbNixF1BB3XOQDD+xnVQ/lE9jLL9d01Gq+6O+IUCdEohIF2ASoVdl0LDn0Nk0bQkAA+WxsPXy0U8DKzd6JiFKLAYDFPFB7Qr6PFZQMVPbitLWYuxg22c0ZZlCJ8Gh5Y6ntxRjzjIKaVjMUm47w9ccegBMgjU/Fy/6KTijpdVQqrG8EFaWryV00gtrKLufVy64JsB0ywBqiRfyiFcETf0tSUSeZ3DTP2QGFIJhHqKEs78yb8Tqtidbuxr+FfOQIbc0VF0vP+trAzi6FoXzjbvAzzLb3n9WwBLIw4pAW58vE1+khHwXFJQK+iK+wMiy1xFqBIWVa9naT3sZWM+MZxDQovkvPlWZc5d009I4Nt4LKc+4f7QWBIoLEfYmZkeFu0bZvYWPsxF+ueeiVfZL8PEyd9HIY5vjyosWnZkZeWDlZuIoBny6DQpJ6qoneZzbYqTp7zTHDVoyhfIMJcezfYDcRi1Qu6hFtPL9GYn1msyqdyWyndfH1uLUP0tJyQUIxeLLX1tl/0Mp4bd2RxgKiDTttsC5IxzbHwEiqpG92ZbzrWrjXJtGccJHQrqhqkkc8Abh84d0lcQefSehpIJYcyoqr+HxcKP28o/rhVKtYcVGPzxBkJG1v4SkkpEc50X5INbK6VWkdMp8 X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AS4PR04MB9576.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(376014)(366016); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: L+JNDu/jRAXMX4U2/HaD/g3hzEpkqt4gw30DPv3rpuYLtFVL+SpU++aoT1UiDqntxDYCHXLe1Klm0h9vjXXKnuafsek6dZuoI74o8OsEgHL9+lYDaNtGszcPjChqcKIBai/f/uqXeaYmdpHL3bO+slt2q33bZ0QVR4PTCOA3TOWgL6Zyyh7/uqvl0AOQj8qQgSotnA+130bfmr91MPE4WUeiBHYPPKg8JP9/mhSBx3FX88l8YnROSxPjzk4TJ5IjYg+IiOD/nJZuzXMUezU9AcFEHG+i6rvNnq600jJto+qCaIAw7RP6UuMq8f75tujsfEx9aUG8tS/HuLSFPDSENpwj6NlSdY0v/pIEbp7LHpDbcsuCoPoMykKHzhGQp1s6JveHrOld9nQv/FU4W9z8dXSrxvoo3e4MwTu623B/uEo1xEWILdw0LTA6BENlzJtA98/mWxIeuA11UP0nA8/DiDCh+rPdN5vJVOTbJamBreSYB83tXl54gZtkoOCcYCqw7VbCibg+lt+/U+/ob36XSKDEJA6z3ewXPt8Lht461tP3woxVAPcM0Z60/5vtf5b22qRXpQgJRMowpeWA2pAj4H9CQ670itkY8YPQ99oIWUnnJEFt7kfhweUE9r2+YVG8KG6NaFKcCBc17L4HDNvrVYOe/gLIe+Pki+lhfvaVzCHijF9b5sfC8TeVWp1mFGXJtwrCgunBWpUAvl3San1FVzhBqCrQl2IfJ4nnefDxFAdQW6HevSB6G38vhezu8C/cFlglHqH1cNwhFNXTPvRNtfG26T1NgD4LDGV/DfC380WJwv1QJQWypesPFyzXsiDvLL+jtB3n0zqI4s00C7s95U8qlnTLpOhKGZ/MMmipMcdNCGJHi1mKzyiEhQBLEGongUuD3glQDxSaTr2r5GxnmjKYVcu30N0nRnrkrdXDQI4Ct7SPmuUsBplE7UDk7lx6kMNbyydGjd2M3DbL5dYAE5LSgVm9fvq2sYPbXlDLttknkJnQLvvreQu58yINhNuZjmjMelFAJbc/4qQCp72anuC5VgeAtDNWXMkGFqMqk4ZST1Ld/hyXV7D0v7Uy46iVVrC/lmPbnA4ndeZYNqez09txm06sjDtn5sGxJ9fh8uewUbnH4Nb1LwGGYJF8PF49mCaRnisBKxJXw9PnmM/iEntqj2uk0nYWWRJE97JPNiLA918EHoGpVyAlWQuyClxxC2ePXttifriDLJt39YiigAOFvDcMf/PsxV8poY+jeQJFNOeM6SXMS9Vpbhs1ra84EDGPZEYZwlqctoTGi/tRfo4C0P3ZcrgYJz7Q1KcLlPbcWZ/8RgnDiVD6TqR5lHweYeP3q8+gZbTB0PiuCWc+uqxFaohn44FsJyaUPrN8DUh6HkuGTWs/UZ6xm15EgM6E95PN96/PCu1jv7bZSEVjLliXJs73ut06hIXy0XkIpqwlJKtNie+pqyz4H3/CdcjR5M+b0JojWtc9DI05oyGbHH8+kZro2m1VRjfihgNliI83qdmEpumNH48Sn1NxN4TNsudeUmtw34/hCsFfKb7UZ79hqpXOIG9XIGHiWslxsKu6s7ilQsUTCs+PJJvyUrwIEqb/GAXRSrLk+nbUZ8uOTg== X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: d78a5335-8582-43cc-c1c0-08dd476acbf4 X-MS-Exchange-CrossTenant-AuthSource: AS4PR04MB9576.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Feb 2025 11:30:17.2041 (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: lq9oY+TM2cI6c1tE9iG1WemEqyVcYgixZGrqT9TJyXWk8LK5BexBXZyexzfzfIh4B/UTrWPYKmMsfldnO0X+ug== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9392 According to specs: """ Frame synchronization (FSYNC) is used to align images sent from multiple sources in surround-view applications and is required for concatenation. In FSYNC mode, the GMSL2 CSI-2 quad deserializer sends a sync signal to each serializer; the serializers then send the signal to the connected sensor. """ Since max96717 can be used in multi-sensor setups, we need FSYNC support. For that, I added a DT property("maxim,fsync-config") that will be used to configure the frame sync output pin and the RX ID of the GPIO as sent by the deserializer chip. Also, add the .request() callback for the gpiochip so that we can use 'gpio-reserved-ranges' in DT to exclude the pins that are used for FSYNC from being used as GPIOs. Signed-off-by: Laurentiu Palcu --- drivers/media/i2c/max96717.c | 87 ++++++++++++++++++++++++++++++++---- 1 file changed, 79 insertions(+), 8 deletions(-) diff --git a/drivers/media/i2c/max96717.c b/drivers/media/i2c/max96717.c index 6a668a004c717..47a3be195a971 100644 --- a/drivers/media/i2c/max96717.c +++ b/drivers/media/i2c/max96717.c @@ -70,13 +70,28 @@ #define MAX96717_VTX_CHKB_ALT CCI_REG8(0x275) /* GPIO */ -#define MAX96717_NUM_GPIO 11 -#define MAX96717_GPIO_REG_A(gpio) CCI_REG8(0x2be + (gpio) * 3) -#define MAX96717_GPIO_OUT BIT(4) -#define MAX96717_GPIO_IN BIT(3) -#define MAX96717_GPIO_RX_EN BIT(2) -#define MAX96717_GPIO_TX_EN BIT(1) -#define MAX96717_GPIO_OUT_DIS BIT(0) +#define MAX96717_NUM_GPIO 11 +#define MAX96717_GPIO_REG_A(gpio) CCI_REG8(0x2be + (gpio) * 3) +#define MAX96717_GPIO_OUT BIT(4) +#define MAX96717_GPIO_IN BIT(3) +#define MAX96717_GPIO_RX_EN BIT(2) +#define MAX96717_GPIO_TX_EN BIT(1) +#define MAX96717_GPIO_OUT_DIS BIT(0) +#define MAX96717_GPIO_REG_B(gpio) CCI_REG8(0x2bf + (gpio) * 3) +#define MAX96717_GPIO_TX_ID_MASK GENMASK(4, 0) +#define MAX96717_GPIO_TX_ID_SHIFT 0 +#define MAX96717_OUT_TYPE BIT(5) +#define MAX96717_OUT_TYPE_PUSH_PULL BIT(5) +#define MAX96717_OUT_TYPE_OPEN_DRAIN 0 +#define MAX96717_PULL_UPDN_SEL_MASK GENMASK(7, 6) +#define MAX96717_PULL_UPDN_SEL_SHIFT 6 +#define MAX96717_GPIO_NO_PULL 0 +#define MAX96717_GPIO_PULL_UP 1 +#define MAX96717_GPIO_PULL_DOWN 2 +#define MAX96717_GPIO_REG_C(gpio) CCI_REG8(0x2c0 + (gpio) * 3) +#define MAX96717_GPIO_RX_ID_MASK GENMASK(4, 0) +#define MAX96717_GPIO_RX_ID_SHIFT 0 +#define MAX96717_OVR_RES_CFG BIT(7) /* CMU */ #define MAX96717_CMU_CMU2 CCI_REG8(0x0302) @@ -125,6 +140,11 @@ enum max96717_vpg_mode { MAX96717_VPG_GRADIENT = 2, }; +struct max96717_fsync_desc { + int pin; + int rx_id; +}; + struct max96717_priv { struct i2c_client *client; struct regmap *regmap; @@ -141,6 +161,7 @@ struct max96717_priv { struct clk_hw clk_hw; struct gpio_chip gpio_chip; enum max96717_vpg_mode pattern; + struct max96717_fsync_desc fsync; }; static inline struct max96717_priv *sd_to_max96717(struct v4l2_subdev *sd) @@ -364,6 +385,7 @@ static int max96717_gpiochip_probe(struct max96717_priv *priv) gc->get_direction = max96717_gpio_get_direction; gc->direction_input = max96717_gpio_direction_in; gc->direction_output = max96717_gpio_direction_out; + gc->request = gpiochip_generic_request; gc->set = max96717_gpiochip_set; gc->get = max96717_gpiochip_get; gc->of_gpio_n_cells = 2; @@ -386,6 +408,26 @@ static int max96717_gpiochip_probe(struct max96717_priv *priv) return 0; } +static int max96717_fsync_setup(struct max96717_priv *priv) +{ + int ret = 0; + + if (priv->fsync.pin == -1) + return 0; + + cci_update_bits(priv->regmap, MAX96717_GPIO_REG_C(priv->fsync.pin), + MAX96717_GPIO_RX_ID_MASK, + priv->fsync.rx_id << MAX96717_GPIO_RX_ID_SHIFT, &ret); + + cci_update_bits(priv->regmap, MAX96717_GPIO_REG_B(priv->fsync.pin), + MAX96717_PULL_UPDN_SEL_MASK, + 1 << MAX96717_PULL_UPDN_SEL_SHIFT, &ret); + + return cci_update_bits(priv->regmap, MAX96717_GPIO_REG_A(priv->fsync.pin), + MAX96717_GPIO_RX_EN | MAX96717_GPIO_OUT_DIS, + MAX96717_GPIO_RX_EN, &ret); +} + static int _max96717_set_routing(struct v4l2_subdev *sd, struct v4l2_subdev_state *state, struct v4l2_subdev_krouting *routing) @@ -1037,7 +1079,8 @@ static int max96717_parse_dt(struct max96717_priv *priv) struct v4l2_fwnode_endpoint vep = { .bus_type = V4L2_MBUS_CSI2_DPHY }; struct fwnode_handle *ep_fwnode; unsigned char num_data_lanes; - int ret; + int ret, count; + u32 dt_val[2]; ep_fwnode = fwnode_graph_get_endpoint_by_id(dev_fwnode(dev), MAX96717_PAD_SINK, 0, 0); @@ -1058,6 +1101,30 @@ static int max96717_parse_dt(struct max96717_priv *priv) priv->mipi_csi2 = vep.bus.mipi_csi2; + priv->fsync.pin = -1; + count = fwnode_property_present(dev_fwnode(dev), "maxim,fsync-config"); + if (count > 0) { + ret = fwnode_property_read_u32_array(dev_fwnode(dev), "maxim,fsync-config", + dt_val, count); + if (ret) { + dev_err(dev, "Unable to read FSYNC config from DT.\n"); + return ret; + } + + priv->fsync.rx_id = dt_val[0]; + if (priv->fsync.rx_id > 31) { + dev_err(dev, "Wrong GPIO RX ID. Allowed: 0 -> 31\n"); + return -EINVAL; + } + + priv->fsync.pin = dt_val[1]; + if (priv->fsync.pin >= MAX96717_NUM_GPIO) { + dev_err(dev, "Wrong GPIO pin used for FSYNC. Allowed: 0 -> %d\n", + MAX96717_NUM_GPIO - 1); + return -EINVAL; + } + } + return 0; } @@ -1092,6 +1159,10 @@ static int max96717_probe(struct i2c_client *client) return dev_err_probe(&client->dev, ret, "Failed to init gpiochip\n"); + ret = max96717_fsync_setup(priv); + if (ret) + return dev_err_probe(&client->dev, ret, "Failed to setup FSYNC\n"); + ret = max96717_register_clkout(priv); if (ret) return dev_err_probe(dev, ret, "Failed to register clkout\n"); From patchwork Fri Feb 7 11:29:57 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Laurentiu Palcu X-Patchwork-Id: 863521 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2085.outbound.protection.outlook.com [40.107.21.85]) (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 E589E1DF748; Fri, 7 Feb 2025 11:30:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.21.85 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738927831; cv=fail; b=gABg0nx6E6tuVmhVBI4PIdUuN/hBX+PV0vUGW6FvBswLomSuBB6CrdzDJcjE3TI+7M/SH/w1t/chtnicVe8z8JBgiqqY+CwGBUUF2qhBvPULM0/uOabRQ5AOjOVdMN/Cm+emRJzsYvs2MVTalcujzozPQS+3uJziFzlK79DY11E= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738927831; c=relaxed/simple; bh=B56Q0pFcff+mkvfG1yzDWzWljQabsSM4nZWJpo1Lbds=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=WUxnnUarcYleq5i7rIJniszOJg58/OT+RJCHwbiq513yyvtaKi8vr0vX8hYllYADCERPcXzIf9mmytu92TSU0bwKHdT3eon9S03eU2pX/M35KbHJuCqu4UWDsfDjceMTA7qMitrzj7xA5Of33iNqQLdDSwJsY4n+ZyviVwLvgUg= 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=R25gRjUl; arc=fail smtp.client-ip=40.107.21.85 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="R25gRjUl" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=hmmnJZk4xUi+GTbvB7FBhPgXcnGRBbArjXxlRp98e92eyBHXigk2UQnr13WmsL+Zaj+Y6Sb4wxF6W9cVKhUGBEY8RshHC1oP1q0ebddNcq60zBUwXDa6RPeuqZ5f0zllKbXmOQlC/dWEbkZi87zRrMNCluhjOvBPUwUTcetk0YlKW5r8b+gpNUXV272waHqVNE7g0yyJ0kyLHefdxQizq0gKkFS49hgEzvhKuNHjrOIz93/LXs9N5w0IPbzk589lyVAMKljKnmfoTxMDCMtp7rXNKk5DjvPCteb2psRbZ0X050EPAQA9Srfh5uncnvWfBA7zdcyAFVIJ7EHudl7d8g== 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=XJjcZgdQV4jwKJmUOtqRlzKwZVbXQLQbEQ1NbL30x5Q=; b=uqOJ/s/ThZqMR7z97IqoFRuvocrUCbaMCWAACIkMBUcdm0MYsWfcYxhZlsTj3agCReyJR3RLiX/kjIz2OKzc/04zL3HEVYPFCQs91OkP5/F73Wxvof9I2Uye1lPke5E0MKJvoY7YFE3JHJHW9C9nulYwih4vageueUSQkurHhJWw7zXp91Bdtw6ZuZoR73TsI9ThW5b3+oxO/dYmsq7dp9dincT8KUO1PjST1y0v/kupl2H+kI0b/UkGrQwURqzK2xrEizbFin1uNcG2PqZ0onQCYh15gVWgs3d1XvpdoPppl3PrkE+JOVQ9ZMDtS17oFDoNvcl73n8zjC1byYrjjw== 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=XJjcZgdQV4jwKJmUOtqRlzKwZVbXQLQbEQ1NbL30x5Q=; b=R25gRjUlIjOQJGaMUaYStRRugBWKQTHexoPkt2D/dwx3f9tTEksjB+MwYBPmE7u28NeL8j0ByikctJsv2cNzUprzhnTWYdBDp8Rfx/Yt5QBKOUhQTyY8Fld0bTRs0kGZhlP1D+9SABNUP7QJEnhdlJ7jTkyy48Cp9mJ6lHucd19MIp9yWofwEmgW7c7LZLdRXE9IZ4y+b9CHH/poC1Donc/rS8pof9nblfmaMuqUiye0Ur+pThj6J9KOZcJ4CZCySIWVHwXJ1TtsKbTcpBe+dttL6F8vPDD8geRN0Wxs2/z+vC6HayrQJbrKepbu7aC2DglFKwjb/ttTA8glwb7FxA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from AS4PR04MB9576.eurprd04.prod.outlook.com (2603:10a6:20b:4fe::12) by PA4PR04MB9392.eurprd04.prod.outlook.com (2603:10a6:102:2ab::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8398.23; Fri, 7 Feb 2025 11:30:21 +0000 Received: from AS4PR04MB9576.eurprd04.prod.outlook.com ([fe80::9cf2:8eae:c3d1:2f30]) by AS4PR04MB9576.eurprd04.prod.outlook.com ([fe80::9cf2:8eae:c3d1:2f30%6]) with mapi id 15.20.8398.025; Fri, 7 Feb 2025 11:30:20 +0000 From: Laurentiu Palcu To: Julien Massot , Mauro Carvalho Chehab Cc: Laurentiu Palcu , linux-kernel@vger.kernel.org, linux-media@vger.kernel.org Subject: [PATCH 5/5] media/i2c: max96717: allow user to override operation mode from DT Date: Fri, 7 Feb 2025 13:29:57 +0200 Message-Id: <20250207112958.2571600-6-laurentiu.palcu@oss.nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250207112958.2571600-1-laurentiu.palcu@oss.nxp.com> References: <20250207112958.2571600-1-laurentiu.palcu@oss.nxp.com> X-ClientProxiedBy: AS4P191CA0014.EURP191.PROD.OUTLOOK.COM (2603:10a6:20b:5d5::20) To AS4PR04MB9576.eurprd04.prod.outlook.com (2603:10a6:20b:4fe::12) Precedence: bulk X-Mailing-List: linux-media@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: AS4PR04MB9576:EE_|PA4PR04MB9392:EE_ X-MS-Office365-Filtering-Correlation-Id: 00914d31-8b2e-4e24-0565-08dd476acd3e X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016; X-Microsoft-Antispam-Message-Info: 0q8yoTCUdx6ySzW+Ijga8oMCWfz7rG/FX6AR7DiYbc5RA7Tj/ZEaP0Jq9iGShHkAzrMdbCWzU+oQ0Y01XPiR9g5hoHmtNx0VUaso9dghKAYOuANNe5u5unf1z7sTFkfQjjYX/y8faXRDPeyOV1J3yFh4avFAIl/gd5JGAV8yagOU5ZiIAdD/DVHuvrpZKlskSb/vgQm1ypEeAV8xSLypgl6+N6c351zBcwReaOqP32PBnlKTiUfb/ACDsM5W1hp2whH9CwyW2v5jiyKLxPNZJeUXZ01Ioprosa/mc6rcGH07PgkPlyuF/YLGk9GN3uOxqvIZIjG008t4ZF0dQekcNTX2oWthVFj6kiN/AXo0QjRAZUtwG6hDvKUybx7c1KViuRZj4gXNeu7zCpBxwLNSGcIgkpYsbQSyQBjzQ+2iXA7SbhUQfxu6OCXIJM7Zz0GOviFVfp0fE+9+Tk4O8yITbOb+jiQS8TyDSFqFBPYqJwzkCwcDmaua3wLbJ3xM3j74oy0Tiheox41LhhTxh0L2BYvDE0q2686QHEzpLTM/OZuNh930sSes+3B9UfeGUknrq22Tywz/UjV3YMZfwTdV4vftKbPMmDe5oBcNoCCxW1SvGzcIz6577zZ6sogoCJ0onc6GHtASu/NrFOU0iLADUfduHTVCL0sBhOQ4Rp75DrSDscbT49AoMh7GQKoT81R1s7aIdwyIXNsxdlu7pDMfM7oKh+YCdbEdYzkavTqWMsdtWktaombjuKgKPmHF1dEeebfcDLFyqKjh3VqqTC1xNaMBSOgFUNVM2NkME2hitiumIWFjF3aSWHaEVt9ilCHkhDyve4N/10imj70Fss5YPYVbhome4rQ+UZJUVx1HOx+JeRNnjm6/Vva7d1oJDr42ptEd6+MYTEKGR8TA+EExur1v0nTlJK1W+mJhSpHVOBHHdhywqwJN+y//agrpluT2qPCt5BE8m6f5CwZIgSjF3mK2xqcEy8ZU5YTkuZWEceRRkciXhdPrefjPHwyHtxFWPQzvomaF8WdOx0Wwo9l4BzNhQk6+0lpJ7Xn1LvFSyAOKOdUsJMKyTmCYlpndsaK2rzPXgVm9NUQMN/AFruFZyGUPXgC+sioETjdc2JFNXF/Ve6cGYSfze2Zi+OVNBCXA6Bz6nu1qlzCVv7ddqe2W316J0U97o4EMOIRUO2kRrmznUjJDj5jbw5/iRTA8GFBaCxTu6FaB2tXgwHSPmqM5ARhYu4yBXYWnQcfc6cQuM0Jg9/4spINp0sKf3wfHIGnnW8nRM8HOlHbt25kj4jaZL+kJggisGSJc6dlS6J1GcknEvDTfmA3uFM4RLj8HzK11roip4HlSD/Ai9dg85/mZXTT5Cpzv4YCtCLv7GdvxBXcgQfmHRCDD8tiy657jspp0 X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AS4PR04MB9576.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(376014)(366016); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: j2EkEsth/8jRa3l80WLuYorQuLC+E208YjtioPeb1LWredT3P0KY4rcZf4Br3j3/BV72XFbWXPj1mqnV1aCvomvs5Fp7Y8tsLsMiAdkDdUMjXBVqxn3S8oPoUNSKE/uC8Kx/yIs1BgjCVaF6jYyfzKytGo5UowE5CGrRBvdpalNcuVsJIjnIFnhrFhUQe6u81vLhmjN/lIic9pzXWMk7ECev8vZJQ8J1bzS+D5YGB9XUkxHNN/yI4WzET0YsbvoKE+uiom7zCopievgE71m9Zf/SwwSwyQH/nBJQdkH2GvUgTpuF7MHA3G5pgRuhYkSopMxMJ5YMisSN+vqw0P/DBr0rAxnBVxmKV3DeiOXCctCJL9eZ3PTad7tPily6DRnKz5AXFLpWdb6YiUWlnUpq6ErNl3aZDlqujkz5pdXVt1AJVAPeu7nPrdlwdAQRagK1nB9WVimgsC2HnQo/5gsPoGXYY1HAUvxbJZRZwMGrEbOH4S6GyzzTYYqh166ulnSK3OQk+lodSNIsBtNGNdh2AGBfE3P6ucf03UPd0TP43KxVlTCfItKhFTUcKLIcTwsz3qKltmPNazI1pKA7+Smkfvo5XoKQroPPwQ7yI/qBYSYHWxPhh3s0sJ7Mls5beszbe1ihkYecmVg82q6hpZUGw4yPCF3RBwpystGkd/c/5WodRojpCBrtFCk8RvxUCgmbvKBC98pxIxmL2W5PcQA6wq+jWveaA/YcKz29bVPEe92TnGn4OylsXHA/B/xYUW07mqgmeG/RC9AwGFTU4Oq0XMqIM3ALzHW+v0zDXIn2fpyRUQRH8R63Us44//ihET1teENQEQglpt7aKSogepv1bWusXfi9C5tqVuq15JB0BDVDNhDMiGGRcxEq8an/Zx145u5zu2IReg8uvJnjUEK3dGn8Vr965kG7IkfrLFg4iC3uUjwNeqfMtocmbzJGAWtsjqwamb/nmNy3nNJaT5getVMLF0//PriqNrxCdfEooKxVtgD7cqmf6DNVjYuAVq0tyiZqp3mpihlxlqRW8+67aa8va2hOs3KJeM0/kbGeNhcIMrd2tzMZLn25gof6HQO6DuYVXQ6cCYF6K4JaHo47V0w3yIFP9IirgcBkzgzjpMRcdeyB2sdwtDec+ESO9bzUryCoH+Z3ozu8zspTHSjAf+TUEKNwVI8DDzEjXOWp7hNjM3+gn49ETJqmPeBNssvawYHQQcHlam1A9teyX30uOtuBYRjY7LGqC4EC1Csth9bA1YTN3xnbZgN2ttwmnU/Q+PMCDOhSI8CRWw5oDeJEYHHQutlMQquXS1kU1+oa5vnLxQxHWswnCSw45qQtXfIIHBxzp1STJ7NZb8o9jaj9GR35zCgEvJ7Ok1V0nbSRBc3P4TZ0Mg1hbOTEdCALMa5SCgcS2bu7myxlEL6X7BZR2oTVeZ7HEe8TnWPEyCkNycjrt9ToLiBSZNIXa/v4qIzPpiNMS1qAMXKv0jJRDOErmqQrv3lRezFpZ0nb+x086kIOWiyqa9xZW2PWqXf4jzeLAlgCbBQF3WVsNL9+s/lut0ZYf3atkzHDM8JZ9sL3osfb1J8RW9/v1i5BQr29941k1vOHCG5sLsF6vBpHjTwLnA== X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 00914d31-8b2e-4e24-0565-08dd476acd3e X-MS-Exchange-CrossTenant-AuthSource: AS4PR04MB9576.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Feb 2025 11:30:19.3634 (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: aWNNbvyuFbXdytcEpTvRMcrxCcahaXWmO+FW4bYPwmLRdQ5gk7Wnn5vkQqeG3c/e8LPe7CZPs9IMDI/6wTP8ww== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9392 There are situations when the CFG pins set the chip up for a certain mode of operation (ie: pixel mode or tunneling mode), because the HW designers decided this way, and we, the users, want to change that. For that, add an optional DT property that would allow toggling the operation mode from the configured one to the other one. The driver still only supports tunneling mode, that didn't change. Signed-off-by: Laurentiu Palcu --- drivers/media/i2c/max96717.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/drivers/media/i2c/max96717.c b/drivers/media/i2c/max96717.c index 47a3be195a971..a591ca5d5f44f 100644 --- a/drivers/media/i2c/max96717.c +++ b/drivers/media/i2c/max96717.c @@ -161,6 +161,7 @@ struct max96717_priv { struct clk_hw clk_hw; struct gpio_chip gpio_chip; enum max96717_vpg_mode pattern; + bool mode_override; struct max96717_fsync_desc fsync; }; @@ -1066,6 +1067,14 @@ static int max96717_hw_init(struct max96717_priv *priv) return dev_err_probe(dev, ret, "Fail to read mipi rx extension"); + if (priv->mode_override) { + val ^= MAX96717_TUN_MODE; + + ret = cci_write(priv->regmap, MAX96717_MIPI_RX_EXT11, val, NULL); + if (ret) + return dev_err_probe(dev, ret, "Unable to update operation mode\n"); + } + if (!(val & MAX96717_TUN_MODE)) return dev_err_probe(dev, -EOPNOTSUPP, "Only supporting tunnel mode"); @@ -1101,6 +1110,9 @@ static int max96717_parse_dt(struct max96717_priv *priv) priv->mipi_csi2 = vep.bus.mipi_csi2; + if (fwnode_property_present(dev_fwnode(dev), "maxim,cfg-mode-override")) + priv->mode_override = true; + priv->fsync.pin = -1; count = fwnode_property_present(dev_fwnode(dev), "maxim,fsync-config"); if (count > 0) {