From nobody Mon Jun 8 04:25:58 2026 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) (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 402EB3E169E; Tue, 2 Jun 2026 13:01:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=213.167.242.64 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780405267; cv=none; b=Ep3B6Uc6lrTObrDdPrqsscgn6Vym4dmVSUIu1mVlrOgfMXqGUH6pdacJ+6IM09yVYUnOylQK7iNXVyT17P3NMvau/no9mBTQrDggbfGfFfW1JFqrOBUV2f41wglqglZUaxeiLNBjser+OUcms2/wKVApsCSYdBUd29hewYspACQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780405267; c=relaxed/simple; bh=v7755meFUFiWE6PwyqlAe5/lehT63GnEEOjlQC2nS84=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=pbj0rF7oXogBybFeTzdMQUemvgDEBOfI60+CWvybJf5WlNMMYvaOqhAFxe9vRdZ9TcAdaCHdakJx769M7JZm7qadVls4DEAaXqeV4TUXqB3ps79ttqleiRD/VQZUWR/1eeNEijbzHDSak/4qg1KFLiaAn6NPEczMMbKqO5aN4aU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com; spf=pass smtp.mailfrom=ideasonboard.com; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b=ucU35nGJ; arc=none smtp.client-ip=213.167.242.64 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="ucU35nGJ" Received: from mail.ideasonboard.com (unknown [IPv6:2401:4900:1c66:476d:c684:fe78:389f:7375]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 3EA1A1112; Tue, 2 Jun 2026 15:00:41 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1780405241; bh=v7755meFUFiWE6PwyqlAe5/lehT63GnEEOjlQC2nS84=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=ucU35nGJRbJQBwUocrpGMuffWKtfjl9XnbqqghCNZ0k7OT1Mr7wUinIMb2CyHaMIb ZznvQPFL/75QHYnbarm3vbWIeaPXBLOiciSk8QrmM14MRZnvnFEcdtvi2g856C0AHC C+reiUWyQlRdDCxQqdPk1IRdf0tHJL3fZ5FCP00I= From: Jai Luthra Date: Tue, 02 Jun 2026 18:29:27 +0530 Subject: [PATCH v3 1/4] arm64: dts: ti: k3-am67a-beagley-ai: Setup I2C for CSI/DSI connectors Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260602-beagley-cameras-v3-1-fe6ae35b7eda@ideasonboard.com> References: <20260602-beagley-cameras-v3-0-fe6ae35b7eda@ideasonboard.com> In-Reply-To: <20260602-beagley-cameras-v3-0-fe6ae35b7eda@ideasonboard.com> To: Nishanth Menon , Vignesh Raghavendra , Tero Kristo , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Robert Nelson , Andrew Davis , Devarsh Thakkar , Tomi Valkeinen , Rishikesh Donadkar , Yemike Abhilash Chandra , linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Jai Luthra X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=1925; i=jai.luthra@ideasonboard.com; h=from:subject:message-id; bh=v7755meFUFiWE6PwyqlAe5/lehT63GnEEOjlQC2nS84=; b=owEBbQKS/ZANAwAKAUPekfkkmnFFAcsmYgBqHtQCFmZIPyCttYXqvit17B7FIjh834IO8RDMd BFX2oQ5+uKJAjMEAAEKAB0WIQRN4NgY5dV16NRar8VD3pH5JJpxRQUCah7UAgAKCRBD3pH5JJpx RQxKEACJHOKe3oA8dNtb3UIMKSacXP0v2u5GJ6em/Q1+3/Et8ZjaGXdXBRA1ExAQ08+mFEVL3uw bvieKfUKK24cYzLSn4tVdv/VXkuPKJXjqv4QNTFOc0w/y0gWTqeFoIjvqpNhvDno+39LKnN6AZD G3FdFVweswX5dsdaEyrGveq4wmTSvln5PigmC5CgWcv5ztfnd6H/9D1egYgRSLk9B2HvZ/97WQU TmlWaNWWH1zc9RfRD6o/AtWbzwpkYrQObuRHnr1wDypTr8wXG4HPElPjiH37NCiHlBiZUHuhMbO 237okjhjOKX+j9rcGODjSsiFhrx0D2n3HDm7Sz9EYyttEosC9FWfX8bbqcrmpQKtFsMEh2cJBT4 NkiHizL8KWk5yEkGPhhQR8Ys3pzacPaaMX01fkEoQxN2w/s1NANPcLNdqi9X6cBO7wCIMb3yjWU XOd5w3pqGIzThraCeiDT5E7pSvA8dZywvMk7VWiB3bY09Fd/neUisOQKotX8RlTcDLEZW5cJahm 9yuMYDzw++7s1T7X8JtJMU80kMFSreLdOyYqMg5MPrIQxMoIhiClG04fO217Pg92gBsL7SROjaK Dm70eEn/mKfhofsdwMnsobd/crv0lyud2HfDNaGWvE73mVYEHWsq0u1xIVLKZ/SWg/JrhIOUFH1 bmFUt2ho6z2LpOA== X-Developer-Key: i=jai.luthra@ideasonboard.com; a=openpgp; fpr=4DE0D818E5D575E8D45AAFC543DE91F9249A7145 I2C0 is used by the 22-pin CSI1/DSI0 connector and I2C2 is used by the 22-pin CSI0 connector. Add the missing pinmux definition for the I2C2, and setup both nodes but keep them disabled. They will be enabled by the camera and display overlays. Signed-off-by: Jai Luthra --- Changes in v3: - Also add disabled nodes for I2C0 and I2C2 - Earlier this commit was only adding pinctrl for I2C2, so update the commit message accordingly --- arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts | 25 ++++++++++++++++++++++= +++ 1 file changed, 25 insertions(+) diff --git a/arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts b/arch/arm64/bo= ot/dts/ti/k3-am67a-beagley-ai.dts index 5255e04b9ac7..890d3a745375 100644 --- a/arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts +++ b/arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts @@ -157,6 +157,13 @@ J722S_IOPAD(0x01e4, PIN_INPUT_PULLUP, 0) /* (B22) I2C0= _SDA */ bootph-all; }; =20 + main_i2c2_pins_default: main-i2c2-default-pins { + pinctrl-single,pins =3D < + J722S_IOPAD(0x00b0, PIN_INPUT_PULLUP, 1) /* (P22) GPMC0_CSn2.I2C2_SCL */ + J722S_IOPAD(0x00b4, PIN_INPUT_PULLUP, 1) /* (P23) GPMC0_CSn3.I2C2_SDA */ + >; + }; + main_uart0_pins_default: main-uart0-default-pins { pinctrl-single,pins =3D < J722S_IOPAD(0x01c8, PIN_INPUT, 0) /* (A22) UART0_RXD */ @@ -399,4 +406,22 @@ &sdhci1 { status =3D "okay"; }; =20 +&main_i2c0 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&main_i2c0_pins_default>; + clock-frequency =3D <400000>; + + /* Only used by the CSI1/DSI0 connector; enable it in the overlay */ + status =3D "disabled"; +}; + +&main_i2c2 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&main_i2c2_pins_default>; + clock-frequency =3D <400000>; + + /* Only used by the CSI0 connector; enable it in the overlay */ + status =3D "disabled"; +}; + #include "k3-j722s-ti-ipc-firmware.dtsi" --=20 2.54.0 From nobody Mon Jun 8 04:25:58 2026 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) (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 AF2E33DB647; Tue, 2 Jun 2026 13:01:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=213.167.242.64 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780405273; cv=none; b=pxVuSwfWSuddZB/LrssOL05Pl25F3viGTrVDRVs8u1zgdohehcvs9M2jf6aMKi0fh1p5Go7ZAQSbLuunZoG6jChLCzZjqTMRZQ5reoz2iYvahkxS9YC2QjSKRn/KjePAxZ4jQbfhoNrHOkOaPuYkFb2/hq3MohcMgckHsfP5nYw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780405273; c=relaxed/simple; bh=1IoQSXUWgYTEVd953ETp499G6a1vtRSc22m4J2jdDQU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=nWz+R+kzOP160pYD3hQl7jIhENpayqTdBjX28yH4T5k5IXgibMTU0WgoIFMNbL60OCcYwGyyGUoCncCKqQx9VH6v7cZ73/OIjCx8+XWt7f21AyP0zrPEooqxj6xPbDeLCMdFbWuQCRftSpdqkxsm8NABJomXgtJ3wchbSV97JV4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com; spf=pass smtp.mailfrom=ideasonboard.com; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b=rG7h38c+; arc=none smtp.client-ip=213.167.242.64 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="rG7h38c+" Received: from mail.ideasonboard.com (unknown [IPv6:2401:4900:1c66:476d:c684:fe78:389f:7375]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id DD856103F; Tue, 2 Jun 2026 15:00:46 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1780405247; bh=1IoQSXUWgYTEVd953ETp499G6a1vtRSc22m4J2jdDQU=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=rG7h38c+vMd0Ib16WyhDsKk6qnxiYaBxxlZduj5hhJpQbVVIXTWpgYxp2Off2WXQM BMuirNiMKu0iJaUAbyQFwP/m+ZXVKFlpGHzw/4xv8QbI5EJti3AV+IglMR0YgmvxAQ 9FgDb5OEpwNelaEquu/+RtII0ch8hFvSnmynVtuE= From: Jai Luthra Date: Tue, 02 Jun 2026 18:29:28 +0530 Subject: [PATCH v3 2/4] arm64: dts: ti: k3-am67a-beagley-ai: Add DSI0/CSI1 mux Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260602-beagley-cameras-v3-2-fe6ae35b7eda@ideasonboard.com> References: <20260602-beagley-cameras-v3-0-fe6ae35b7eda@ideasonboard.com> In-Reply-To: <20260602-beagley-cameras-v3-0-fe6ae35b7eda@ideasonboard.com> To: Nishanth Menon , Vignesh Raghavendra , Tero Kristo , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Robert Nelson , Andrew Davis , Devarsh Thakkar , Tomi Valkeinen , Rishikesh Donadkar , Yemike Abhilash Chandra , linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Jai Luthra X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=1833; i=jai.luthra@ideasonboard.com; h=from:subject:message-id; bh=1IoQSXUWgYTEVd953ETp499G6a1vtRSc22m4J2jdDQU=; b=owEBbQKS/ZANAwAKAUPekfkkmnFFAcsmYgBqHtQD8e+Qn7Exk8nQGthzX0JeBnZTt8f6Wf+63 feVLEpGkbiJAjMEAAEKAB0WIQRN4NgY5dV16NRar8VD3pH5JJpxRQUCah7UAwAKCRBD3pH5JJpx RV+pEADQRDG4llqs4sWLC7epusLmybE+P1he8AjvpbEXFM5aSda3HDcEABL7J4dycoSeri0tQiG dGCqOZ1JuKNXjBCBkhyF/1knNbQNnSy0aPJ4Ii0CcBiFGq0iWwFRo+YpqJ0z6pb7rutTfMwPoFQ Rm4IjOaRvaIa4rTdu6Nu0B3r7FogEOA/ADLkKSH8VYVe5IaCxnLrLlCTv81x8v1OdPae3ey3cHR j/a2v1ZZTRU3/HwftcA0uYHDl7ffODRBOB/ByHMVPt21JU527YESEQ5AiCXGLKUWWAODKUaBnqo Gyh2LKBSYeFxwOkorDNg/6OF6lqfI1VBNEgJT/doN0GflMCDwG9JjvebZyrHewm3ufwnbO1rgPx cC9JI6IJ354NX9iLuNxy1/3NM4q9uXmG3m5s8DeEzq3bsNAP158SMoRTtEysl5hElt8rp2ne29B O9SOnBfwYBwIx1uBqS429GCQHQZc7g7DI7CfvpQ0J8RpPUe5XESZKd1NiatJSXONcqvo0lrZdRG GeQHDkgIhwkx23qhNw8H3so9NeCJLDLQFPIQWI9EiG9xPH48C+kCSCDaqvyDPu3KQVrnXuOu96L LsLkgtdnbeicZ9A6UjpO2SDtPrC3NeFIqXkkko6+Of+7NLU0AcQJ2ryy4R5mMI+3JIPq5/YGLIT PlFcsVBM5HBqF5w== X-Developer-Key: i=jai.luthra@ideasonboard.com; a=openpgp; fpr=4DE0D818E5D575E8D45AAFC543DE91F9249A7145 The DSI0 connector is shared with the CSI1 and selectable via the TMUX646 switch present on the board. Model it using a gpio-mux so that camera sensor or DSI panel overlays can override it. Link: https://docs.beagle.cc/boards/beagley/ai/03-design.html#dsi Reviewed-by: Rishikesh Donadkar Signed-off-by: Jai Luthra --- Changes in v3: - Add Rishikesh's R-by - Add Link to BeagleY schematics for the DSI0 connector and mux - No changes in the patch itself --- arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts b/arch/arm64/bo= ot/dts/ti/k3-am67a-beagley-ai.dts index 890d3a745375..bb1db8c6a91f 100644 --- a/arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts +++ b/arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts @@ -146,6 +146,19 @@ led-1 { default-state =3D "on"; }; }; + + dsi_csi_mux: mux-controller { + compatible =3D "gpio-mux"; + #mux-state-cells =3D <1>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&dsi_csi_mux_pins_default>; + + mux-gpios =3D <&main_gpio0 2 GPIO_ACTIVE_HIGH>, + <&main_gpio0 1 GPIO_ACTIVE_HIGH>; + + /* state =3D SEL + 2*OE : 0 =3D DSI0, 1 =3D CSI1, 2,3 =3D off */ + idle-state =3D <2>; + }; }; =20 &main_pmx0 { @@ -199,6 +212,13 @@ J722S_IOPAD(0x015c, PIN_INPUT, 0) /* (AD25) MDIO0_MDIO= */ >; }; =20 + dsi_csi_mux_pins_default: dsi-csi-mux-default-pins { + pinctrl-single,pins =3D < + J722S_IOPAD(0x0004, PIN_OUTPUT, 7) /* (L23) OSPI0_LBCLKO.GPIO0_1 */ + J722S_IOPAD(0x0008, PIN_OUTPUT, 7) /* (L22) OSPI0_DQS.GPIO0_2 */ + >; + }; + rgmii1_pins_default: rgmii1-default-pins { pinctrl-single,pins =3D < J722S_IOPAD(0x014c, PIN_INPUT, 0) /* (AC25) RGMII1_RD0 */ --=20 2.54.0 From nobody Mon Jun 8 04:25:58 2026 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) (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 9462F3DE430; Tue, 2 Jun 2026 13:01:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=213.167.242.64 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780405278; cv=none; b=EQyuJElC4ZsNcSv4cc1spAAKLOU9H/yKPXHzlTgVojzd+idgwov6R3J6RvdSC2/tg/j/eqG/oAit+PPCc7Z0DGBxbAs3YalQLXMkZyiv7t6s8U8TRonOYKvteWTUwvBtribs2H7t7LQN9Aac+w52VoeJVnwQSIrZdknhxsUUevc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780405278; c=relaxed/simple; bh=YxVQ1DUhT9+NRjCyoBIkk+IeqRLqbHraYqHIX2FNh3I=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=lylgTpk5NyPNGBkaj1UEJ3PKCD/WgdoKqVC0eIpFXguVZ4VvI6+kqWRGIErvLg/1VkdLgq1hyOWN8xH/BNFe8z8rc80JyVJeoqNwaSFNYDhfO0jII5hBt2dreCnsaRAl9QvKMTV3lqAEVdD5IdXe+OLOwoxCaA8xHuh++w7dPh8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com; spf=pass smtp.mailfrom=ideasonboard.com; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b=vNpJMMBc; arc=none smtp.client-ip=213.167.242.64 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="vNpJMMBc" Received: from mail.ideasonboard.com (unknown [IPv6:2401:4900:1c66:476d:c684:fe78:389f:7375]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 5C26D103F; Tue, 2 Jun 2026 15:00:52 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1780405252; bh=YxVQ1DUhT9+NRjCyoBIkk+IeqRLqbHraYqHIX2FNh3I=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=vNpJMMBca+4N+qhegxxijA+iPxPeOIbDIgUslddGJtj3SkftekrYK72XTvp3i5lRK OQig0Tk729+aX+HSOIW+d+8okK6RU8t7OD36ZmI8GI+L2Rg0W9r++H5q3OTyulrul3 7K4DVQykUZDwfM0dfrzjeQzhf5YtSrR6vdzjcbmU= From: Jai Luthra Date: Tue, 02 Jun 2026 18:29:29 +0530 Subject: [PATCH v3 3/4] arm64: dts: ti: k3-am67a-beagley-ai: Add overlay for IMX219 on CSI0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260602-beagley-cameras-v3-3-fe6ae35b7eda@ideasonboard.com> References: <20260602-beagley-cameras-v3-0-fe6ae35b7eda@ideasonboard.com> In-Reply-To: <20260602-beagley-cameras-v3-0-fe6ae35b7eda@ideasonboard.com> To: Nishanth Menon , Vignesh Raghavendra , Tero Kristo , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Robert Nelson , Andrew Davis , Devarsh Thakkar , Tomi Valkeinen , Rishikesh Donadkar , Yemike Abhilash Chandra , linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Jai Luthra X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=5087; i=jai.luthra@ideasonboard.com; h=from:subject:message-id; bh=YxVQ1DUhT9+NRjCyoBIkk+IeqRLqbHraYqHIX2FNh3I=; b=owEBbQKS/ZANAwAKAUPekfkkmnFFAcsmYgBqHtQESKhJcNzc0bN0O2IwLsK0sG+XVmiQ6DKJ1 hZBFN40YvmJAjMEAAEKAB0WIQRN4NgY5dV16NRar8VD3pH5JJpxRQUCah7UBAAKCRBD3pH5JJpx RRZpD/0YevXomcTEv+IZWNQ86LAU/aIs3JoCLlz2LWviqVO6UU26KbweKK+t/KeORRGh2CmfNPU F2BBqCVdcyIvYNrTobitdRgsLwNxhOzbtFNS+iyHc5nU2WO5erSBUaTW2xRYl2L55GJzWW3edCT 9KZO7UIZfWv4oJ22nwhcHvkljXwR89iu1KG1ZKOaNcAnnvkT2qcGRLdSoS4WuoiSKkz66Odgfx7 mSqXfKxPqUTVrrak3XH8YtVis2bENb34Bm5IHvR4uO7rL4LFcJwlQQ+xa5VW5M32SNrnOfF8KOV EpHvsUtdoPZ4P/KQKeJM1Mic4Q5fpnWM5cZaK9QnObFWdPyu5oBjCEy8yb32Sp46scVSCAjX0L1 cttLi+s/6CTp8THQdljcgul8eoKhVAganFLUE3pIjBCxlHB98loVUiT9CpChDDw+h++muuLBSFW r78fgDBOQYvIF6toFbi5LHdlYwLGPQmncs++5uWpmlVddZT7zlc0SDnE44q+Cof9OCHsXt7ufZp uMgWYnnu6LeOWlqDp6tbyPcu8OHh6QS+KaQrCbOJRJ40hgsKEsP7u4jSD2goASntZ+7jRxIbIsy Nc5a23BRA7Z//1AyjnF+rbbDiYfnG8BBs6IxFDluDIIe11s0/qHUqs+q4aFtT+U36qaieWkEX5m qjgOs/9he195m9Q== X-Developer-Key: i=jai.luthra@ideasonboard.com; a=openpgp; fpr=4DE0D818E5D575E8D45AAFC543DE91F9249A7145 RPi v2 Camera (IMX219) is an 8MP camera that can be used with BeagleY AI through the 22-pin CSI-RX connectors. Add a DT overlay to enable use of this camera sensor through the CSI0 connector. Link: https://pip.raspberrypi.com/categories/1205-drawings-and-schematics Link: https://docs.beagle.cc/boards/beagley/ai/03-design.html#csi Signed-off-by: Jai Luthra --- Changes in v3: - Now that I2C node is defined by the board DTS, only set status =3D okay here - Add schematic links for the v2 camera module and BeagleY CSI connector --- arch/arm64/boot/dts/ti/Makefile | 4 + .../dts/ti/k3-am67a-beagley-ai-csi0-imx219.dtso | 118 +++++++++++++++++= ++++ 2 files changed, 122 insertions(+) diff --git a/arch/arm64/boot/dts/ti/Makefile b/arch/arm64/boot/dts/ti/Makef= ile index 5269c9619b65..68a82e161c20 100644 --- a/arch/arm64/boot/dts/ti/Makefile +++ b/arch/arm64/boot/dts/ti/Makefile @@ -152,6 +152,7 @@ dtb-$(CONFIG_ARCH_K3) +=3D k3-j721s2-evm-usb0-type-a.dt= bo =20 # Boards with J722s SoC dtb-$(CONFIG_ARCH_K3) +=3D k3-am67a-beagley-ai.dtb +dtb-$(CONFIG_ARCH_K3) +=3D k3-am67a-beagley-ai-csi0-imx219.dtbo dtb-$(CONFIG_ARCH_K3) +=3D k3-j722s-evm.dtb dtb-$(CONFIG_ARCH_K3) +=3D k3-j722s-evm-csi2-quad-rpi-cam-imx219.dtbo dtb-$(CONFIG_ARCH_K3) +=3D k3-j722s-evm-csi2-quad-tevi-ov5640.dtbo @@ -245,6 +246,8 @@ k3-am642-tqma64xxl-mbax4xxl-sdcard-dtbs :=3D \ k3-am642-tqma64xxl-mbax4xxl.dtb k3-am64-tqma64xxl-mbax4xxl-sdcard.dtbo k3-am642-tqma64xxl-mbax4xxl-wlan-dtbs :=3D \ k3-am642-tqma64xxl-mbax4xxl.dtb k3-am64-tqma64xxl-mbax4xxl-wlan.dtbo +k3-am67a-beagley-ai-csi0-imx219-dtbs :=3D k3-am67a-beagley-ai.dtb \ + k3-am67a-beagley-ai-csi0-imx219.dtbo k3-am68-sk-base-board-csi2-dual-imx219-dtbs :=3D k3-am68-sk-base-board.dtb= \ k3-j721e-sk-csi2-dual-imx219.dtbo k3-am68-sk-base-board-pcie1-ep-dtbs :=3D k3-am68-sk-base-board.dtb \ @@ -318,6 +321,7 @@ dtb- +=3D k3-am625-beagleplay-csi2-ov5640.dtb \ k3-am642-phyboard-electra-x27-gpio1-spi1-uart3.dtb \ k3-am642-tqma64xxl-mbax4xxl-sdcard.dtb \ k3-am642-tqma64xxl-mbax4xxl-wlan.dtb \ + k3-am67a-beagley-ai-csi0-imx219.dtb \ k3-am68-phyboard-izar-lvds-ph128800t006.dtb \ k3-am68-phyboard-izar-peb-av-15.dtb \ k3-am68-sk-base-board-csi2-dual-imx219.dtb \ diff --git a/arch/arm64/boot/dts/ti/k3-am67a-beagley-ai-csi0-imx219.dtso b/= arch/arm64/boot/dts/ti/k3-am67a-beagley-ai-csi0-imx219.dtso new file mode 100644 index 000000000000..1b1c68f23cc3 --- /dev/null +++ b/arch/arm64/boot/dts/ti/k3-am67a-beagley-ai-csi0-imx219.dtso @@ -0,0 +1,118 @@ +// SPDX-License-Identifier: GPL-2.0-only OR MIT +/* + * RPi Camera V2.1 on BeagleY AI CSI0 port + * + * Copyright (C) 2026 Ideas On Board Oy + */ + +/dts-v1/; +/plugin/; + +#include +#include "k3-pinctrl.h" + +&{/} { + clk_imx219_csi0: imx219-csi0-xclk { + compatible =3D "fixed-clock"; + #clock-cells =3D <0>; + clock-frequency =3D <24000000>; + }; + + reg_2p8v_csi0: regulator-2p8v-csi0 { + compatible =3D "regulator-fixed"; + regulator-name =3D "2P8V_CSI0"; + regulator-min-microvolt =3D <2800000>; + regulator-max-microvolt =3D <2800000>; + vin-supply =3D <&vdd_3v3>; + regulator-always-on; + }; + + reg_1p8v_csi0: regulator-1p8v-csi0 { + compatible =3D "regulator-fixed"; + regulator-name =3D "1P8V_CSI0"; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1800000>; + vin-supply =3D <&vdd_3v3>; + regulator-always-on; + }; + + reg_1p2v_csi0: regulator-1p2v-csi0 { + compatible =3D "regulator-fixed"; + regulator-name =3D "1P2V_CSI0"; + regulator-min-microvolt =3D <1200000>; + regulator-max-microvolt =3D <1200000>; + vin-supply =3D <&vdd_3v3>; + regulator-always-on; + }; +}; + +&mcu_pmx0 { + cam0_reset_pins_default: cam0-default-reset-pins { + pinctrl-single,pins =3D < + J722S_MCU_IOPAD(0x003c, PIN_OUTPUT, 7) /* (C1) MCU_MCAN1_TX.MCU_GPIO0_1= 5 */ + >; + }; +}; + +&mcu_gpio0 { + status =3D "okay"; +}; + +&main_i2c2 { + #address-cells =3D <1>; + #size-cells =3D <0>; + + status =3D "okay"; + + imx219_0: sensor@10 { + compatible =3D "sony,imx219"; + reg =3D <0x10>; + + clocks =3D <&clk_imx219_csi0>; + + VANA-supply =3D <®_2p8v_csi0>; + VDIG-supply =3D <®_1p8v_csi0>; + VDDL-supply =3D <®_1p2v_csi0>; + + pinctrl-names =3D "default"; + pinctrl-0 =3D <&cam0_reset_pins_default>; + + reset-gpios =3D <&mcu_gpio0 15 GPIO_ACTIVE_HIGH>; + + port { + csi2_cam0: endpoint { + remote-endpoint =3D <&csi2rx0_in_sensor>; + link-frequencies =3D /bits/ 64 <456000000>; + clock-lanes =3D <0>; + data-lanes =3D <1 2>; + }; + }; + }; +}; + +&cdns_csi2rx0 { + ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + csi0_port0: port@0 { + reg =3D <0>; + status =3D "okay"; + + csi2rx0_in_sensor: endpoint { + remote-endpoint =3D <&csi2_cam0>; + bus-type =3D <4>; /* CSI2 DPHY. */ + clock-lanes =3D <0>; + data-lanes =3D <1 2>; + }; + }; + }; +}; + +&ti_csi2rx0 { + status =3D "okay"; +}; + +&dphy0 { + status =3D "okay"; +}; --=20 2.54.0 From nobody Mon Jun 8 04:25:58 2026 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) (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 BC3473DE430; Tue, 2 Jun 2026 13:01:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=213.167.242.64 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780405284; cv=none; b=CoIv00Dx4gX9H9S7kB5BB5wNUHz6gNK+i+Gi2hoC87BC8mfi/h+wXCYAcKz35feUOyYi+T6zjM7UUuV4ivYUiqTV/wbznLhrvP0xhGf0vexd2M0ptpsN9WT9YvFhrVBbTyCdgQa/tPx99fB6lNVad62CsJnM16Bg8CZwO60cFC4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780405284; c=relaxed/simple; bh=GT4w4gtqjY0VcKrqe3C/0fAMkIWcAPHxwpTVBPjzcFk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=mZjZGgEcQK0ODB/r69ibSNWxgHeOB9iBnf6OmFiwmhCnlRXSXzGCieSkfpCdmtji808XsnCctYP3j0cN4GH+4yU0lPwzLUIddpOWqFeca61fLjIA+jyT/hjKLmtCRFqtYijSOCE5kg/8HwHh0IxXC4ScQz+tawTEKYbOzNc16FQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com; spf=pass smtp.mailfrom=ideasonboard.com; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b=BZ1bk+L5; arc=none smtp.client-ip=213.167.242.64 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="BZ1bk+L5" Received: from mail.ideasonboard.com (unknown [IPv6:2401:4900:1c66:476d:c684:fe78:389f:7375]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id EF5E1103F; Tue, 2 Jun 2026 15:00:57 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1780405258; bh=GT4w4gtqjY0VcKrqe3C/0fAMkIWcAPHxwpTVBPjzcFk=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=BZ1bk+L5g++f6XN/GdgcDpbdkMt3+UDubkBAyMBUhopJIC6wB+YDXk4GNod6PHxOx B+SPQqiWRWFVbXLx3rj8YUf4B+ZpZ5oee0PdDgtC1Bp1unLFgWd1MppUl4/eVhncC8 2kahMMTkpPnlX3iWezrCWXt7SeNmaQ207wG7Ej8g= From: Jai Luthra Date: Tue, 02 Jun 2026 18:29:30 +0530 Subject: [PATCH v3 4/4] arm64: dts: ti: k3-am67a-beagley-ai: Add overlay for IMX219 on CSI1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260602-beagley-cameras-v3-4-fe6ae35b7eda@ideasonboard.com> References: <20260602-beagley-cameras-v3-0-fe6ae35b7eda@ideasonboard.com> In-Reply-To: <20260602-beagley-cameras-v3-0-fe6ae35b7eda@ideasonboard.com> To: Nishanth Menon , Vignesh Raghavendra , Tero Kristo , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Robert Nelson , Andrew Davis , Devarsh Thakkar , Tomi Valkeinen , Rishikesh Donadkar , Yemike Abhilash Chandra , linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Jai Luthra X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=5227; i=jai.luthra@ideasonboard.com; h=from:subject:message-id; bh=GT4w4gtqjY0VcKrqe3C/0fAMkIWcAPHxwpTVBPjzcFk=; b=owEBbQKS/ZANAwAKAUPekfkkmnFFAcsmYgBqHtQF+YigSfKXhmo/zTgVNURHOJLZRcBFCEobz iUQLVMzBqCJAjMEAAEKAB0WIQRN4NgY5dV16NRar8VD3pH5JJpxRQUCah7UBQAKCRBD3pH5JJpx RVfUD/0QcIz4oS625+mHXIKUYRDlZBuUfPmyKToyu/5xjsI5v5+hnL0XzxeEjaqc5oQSxZ3DwSk QC6894WggPjApQH8sInFdtpaBnKEVoR7c5ZbrJ9WLhxV+z1pu4QhRIflk1qlfI0ueTy7nw54T8Y lqlnSS1pF8OWUtPVUbIrlF+2rYO/IWzqQk7c+5FaCXNyimpngFW1zUWZpQ5iCzTBqWCJFoU/jgL Ycmsz1bg2/M9fWIRfReZcBawF1s/KRELHPMB/zRSSuV/28scptanXoSI+qF+At9yWnSIgFvsNsn peQeOivC8QC1+L5CYuVd3IikIqZg8+Dw3NGbiAUrkWfMnljOW0Zw4niUR9r0aCZdje1S2TPM66s P5t8cWKF8eoYakgc0vOOnFAkG6k/Vomzo7Ub8ldefChXqOl4fMsiuACP8ileuaIDVt4zMPVU92M 5ioZqL/QSa5ljUSk/ZnySVqir3/1peFJ22CvIcy8EO/cO5f/Oc5ZYEjav7iP+ZsdoR0FqzjxBtF 6jQQ45L4lSNMC+1TGyCl9ZrBG6GU00DxTzv7wGuTRhuFXetZ+x3L6ARQyjYIfZfjUSaNZqYbr4F a13fl4cDpepEQPYw4+VOEQA+UxF4n57PKGMz9YX11ZSaj46W6OmZ7deGMTE06swWUvDHZSVik9U j7cbhA9F+/MN9pQ== X-Developer-Key: i=jai.luthra@ideasonboard.com; a=openpgp; fpr=4DE0D818E5D575E8D45AAFC543DE91F9249A7145 RPi v2 Camera (IMX219) is an 8MP camera that can be used with BeagleY AI through the 22-pin CSI-RX connectors. Add a DT overlay to enable use of this camera sensor through the CSI1 connector. The CSI1 connector is muxed with DSI0, so ensure that we route it to CSI1 (DSI_CSI_OE=3D0 and DSI_CSI_SEL=3D1). Link: https://pip.raspberrypi.com/categories/1205-drawings-and-schematics Link: https://docs.beagle.cc/boards/beagley/ai/03-design.html#id60 Signed-off-by: Jai Luthra --- Changes in v3: - Now that I2C node is defined by the board DTS, only set status =3D okay here - Add schematic links for the v2 camera module and BeagleY CSI connector --- arch/arm64/boot/dts/ti/Makefile | 4 + .../dts/ti/k3-am67a-beagley-ai-csi1-imx219.dtso | 118 +++++++++++++++++= ++++ 2 files changed, 122 insertions(+) diff --git a/arch/arm64/boot/dts/ti/Makefile b/arch/arm64/boot/dts/ti/Makef= ile index 68a82e161c20..51e74f26c803 100644 --- a/arch/arm64/boot/dts/ti/Makefile +++ b/arch/arm64/boot/dts/ti/Makefile @@ -153,6 +153,7 @@ dtb-$(CONFIG_ARCH_K3) +=3D k3-j721s2-evm-usb0-type-a.dt= bo # Boards with J722s SoC dtb-$(CONFIG_ARCH_K3) +=3D k3-am67a-beagley-ai.dtb dtb-$(CONFIG_ARCH_K3) +=3D k3-am67a-beagley-ai-csi0-imx219.dtbo +dtb-$(CONFIG_ARCH_K3) +=3D k3-am67a-beagley-ai-csi1-imx219.dtbo dtb-$(CONFIG_ARCH_K3) +=3D k3-j722s-evm.dtb dtb-$(CONFIG_ARCH_K3) +=3D k3-j722s-evm-csi2-quad-rpi-cam-imx219.dtbo dtb-$(CONFIG_ARCH_K3) +=3D k3-j722s-evm-csi2-quad-tevi-ov5640.dtbo @@ -248,6 +249,8 @@ k3-am642-tqma64xxl-mbax4xxl-wlan-dtbs :=3D \ k3-am642-tqma64xxl-mbax4xxl.dtb k3-am64-tqma64xxl-mbax4xxl-wlan.dtbo k3-am67a-beagley-ai-csi0-imx219-dtbs :=3D k3-am67a-beagley-ai.dtb \ k3-am67a-beagley-ai-csi0-imx219.dtbo +k3-am67a-beagley-ai-csi1-imx219-dtbs :=3D k3-am67a-beagley-ai.dtb \ + k3-am67a-beagley-ai-csi1-imx219.dtbo k3-am68-sk-base-board-csi2-dual-imx219-dtbs :=3D k3-am68-sk-base-board.dtb= \ k3-j721e-sk-csi2-dual-imx219.dtbo k3-am68-sk-base-board-pcie1-ep-dtbs :=3D k3-am68-sk-base-board.dtb \ @@ -322,6 +325,7 @@ dtb- +=3D k3-am625-beagleplay-csi2-ov5640.dtb \ k3-am642-tqma64xxl-mbax4xxl-sdcard.dtb \ k3-am642-tqma64xxl-mbax4xxl-wlan.dtb \ k3-am67a-beagley-ai-csi0-imx219.dtb \ + k3-am67a-beagley-ai-csi1-imx219.dtb \ k3-am68-phyboard-izar-lvds-ph128800t006.dtb \ k3-am68-phyboard-izar-peb-av-15.dtb \ k3-am68-sk-base-board-csi2-dual-imx219.dtb \ diff --git a/arch/arm64/boot/dts/ti/k3-am67a-beagley-ai-csi1-imx219.dtso b/= arch/arm64/boot/dts/ti/k3-am67a-beagley-ai-csi1-imx219.dtso new file mode 100644 index 000000000000..cf3729f5ae60 --- /dev/null +++ b/arch/arm64/boot/dts/ti/k3-am67a-beagley-ai-csi1-imx219.dtso @@ -0,0 +1,118 @@ +// SPDX-License-Identifier: GPL-2.0-only OR MIT +/* + * RPi Camera V2.1 on BeagleY AI CSI1 port + * + * Copyright (C) 2026 Ideas On Board Oy + */ + +/dts-v1/; +/plugin/; + +#include +#include "k3-pinctrl.h" + +&{/} { + clk_imx219_csi1: imx219-csi1-xclk { + compatible =3D "fixed-clock"; + #clock-cells =3D <0>; + clock-frequency =3D <24000000>; + }; + + reg_2p8v_csi1: regulator-2p8v-csi1 { + compatible =3D "regulator-fixed"; + regulator-name =3D "2P8V_CSI1"; + regulator-min-microvolt =3D <2800000>; + regulator-max-microvolt =3D <2800000>; + vin-supply =3D <&vdd_3v3>; + regulator-always-on; + }; + + reg_1p8v_csi1: regulator-1p8v-csi1 { + compatible =3D "regulator-fixed"; + regulator-name =3D "1P8V_CSI1"; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1800000>; + vin-supply =3D <&vdd_3v3>; + regulator-always-on; + }; + + reg_1p2v_csi1: regulator-1p2v-csi1 { + compatible =3D "regulator-fixed"; + regulator-name =3D "1P2V_CSI1"; + regulator-min-microvolt =3D <1200000>; + regulator-max-microvolt =3D <1200000>; + vin-supply =3D <&vdd_3v3>; + regulator-always-on; + }; +}; + +&main_pmx0 { + cam1_reset_pins_default: cam1-default-reset-pins { + pinctrl-single,pins =3D < + J722S_IOPAD(0x01d8, PIN_OUTPUT, 7) /* (D22) MCAN0_TX.GPIO1_24 */ + >; + }; +}; + +&dsi_csi_mux { + idle-state =3D <1>; +}; + +&main_i2c0 { + #address-cells =3D <1>; + #size-cells =3D <0>; + + status =3D "okay"; + + imx219_1: sensor@10 { + compatible =3D "sony,imx219"; + reg =3D <0x10>; + + clocks =3D <&clk_imx219_csi1>; + + VANA-supply =3D <®_2p8v_csi1>; + VDIG-supply =3D <®_1p8v_csi1>; + VDDL-supply =3D <®_1p2v_csi1>; + + pinctrl-names =3D "default"; + pinctrl-0 =3D <&cam1_reset_pins_default>; + + reset-gpios =3D <&main_gpio1 24 GPIO_ACTIVE_HIGH>; + + port { + csi2_cam1: endpoint { + remote-endpoint =3D <&csi2rx1_in_sensor>; + link-frequencies =3D /bits/ 64 <456000000>; + clock-lanes =3D <0>; + data-lanes =3D <1 2>; + }; + }; + }; +}; + +&cdns_csi2rx1 { + ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + csi1_port0: port@0 { + reg =3D <0>; + status =3D "okay"; + + csi2rx1_in_sensor: endpoint { + remote-endpoint =3D <&csi2_cam1>; + bus-type =3D <4>; /* CSI2 DPHY. */ + clock-lanes =3D <0>; + data-lanes =3D <1 2>; + }; + }; + }; +}; + +&ti_csi2rx1 { + status =3D "okay"; +}; + +&dphy1 { + status =3D "okay"; +}; --=20 2.54.0