From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f178.google.com (mail-pl1-f178.google.com [209.85.214.178]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1F3D633CEA7 for ; Thu, 9 Apr 2026 20:18:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.178 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775765933; cv=none; b=V5/vPHWRmcTFsEgA+bqhNWDhxtoau3MZa9xfqeMWI2rBJAdL2J8Ln6GpkF05xGrGUPZlv3a4z72OsPAYKKdkfeEvW4UgSSa9FRYpVaMfoTL3/HDYdTQtGrSyMVL+1mEjKcrDv7EeQdGwCrVmJtvK/Dc4iNNbRrdHtkbKKXoIBt0= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775765933; c=relaxed/simple; bh=CEMFdCdV787AMyGI8dxLrCBGALoi2KygjN6kKW1f9PY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=mCciQ+63mv08AY4VJ/ggeBH1bYU10XEXkNE6N94mdlHxa18Posj7qu9KuxUthmuIGRqM+YNObN4re7o3CR9l3XaS4Mp5tPo8p4HMmJls9VCa95KRoqMLChUZlRsjEvj3G3ltTiL2Rz0QPWDiMVSxVqaJb4S13TyJzyl/s5OVXLI= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=qQxcPmoB; arc=none smtp.client-ip=209.85.214.178 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="qQxcPmoB" Received: by mail-pl1-f178.google.com with SMTP id d9443c01a7336-2b23f90f53aso13078115ad.0 for ; Thu, 09 Apr 2026 13:18:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1775765932; x=1776370732; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Wsop0ED0cxBTgOqfG4UjnGPiOWr01DVPoMWtUinONWQ=; b=qQxcPmoBABwfSz5RgHZpW9kh2PM0/SxfV5/sQzv3xuc2HW5GN6Vz6mb6dIZkyTw0ss n42HvXZ749d8yLV82mcjKxlcF+HT4DuDpr+Z1zQQQWP42l9xau3ZNxio9A2AvO01jrIY HYTL2VkgcGY3G8deTRriHJ4JsDsvGeZQLupOLVQ9kQVnhrOVFPnjzC9Q+RcEnINSCva7 vYkqOOEc+qVBouLEM8v7gWWtejY50H0sPSg4XOS3MfH4LcgECJWS/CKEl0tv6FGIaS9F H870qpVPfhiak3UWjV1Uc4u8//KKlAgfUpfIUKFQRWoJA0bxzA3OwgfaI5iS4rAgo79W vQZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775765932; x=1776370732; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=Wsop0ED0cxBTgOqfG4UjnGPiOWr01DVPoMWtUinONWQ=; b=ooCLhOejV+b6h74uj9Sfrv6wMb386lKyKfsLtoSHxr/b7bIImef2IHFTS2Dn6k6NiH tQEQYLmQLxHxN//UCf9au8c/wahUIpWQBeoCTiagnuTwBsn1ilJqMuGvZgLBAksjC0M/ NiZWVsojb5vzb3jwhPUQFaRMtW6cuNi91YJjD5vnHLdMI2HWwT6P/ukKCaHN5sInzde2 tMhijZ2u9I5u4AGymoRDq//2MZ0YJx8oou40jpeRIC+Gq4wOwY5OR8SinHUIgG+egw7U dV81HJkah8NxduUbfEgGdR5QD8gtTZsIDMU+Ru8ce+Ourm8N/YJUMWvBMGYkyrhMfaBd ApiQ== X-Forwarded-Encrypted: i=1; AJvYcCXqggRAc4cStCQnbyB3uhjo7hn3vIrhiQRFxSQn3LBzAEXvyNRJPHPWK7z7PfmCyf02pI/TKFsnBVKzuXU=@vger.kernel.org X-Gm-Message-State: AOJu0YwGWTRXDaeFVQGVcOgWcsmAm6UW5Q/ND3l/EiHkyVzR6E6i62qd fXpJBd8Lk1n4T0jlRLlIj4KEy9+Q5bELhtuuCz7NXJT/sqUZ7s2wb5/6 X-Gm-Gg: AeBDieuC6z+NofEtqqNNW6umzILJW4U0+xVo7bf0HaM4ouxaN70q6Cc3wUIJY8Uw3uL PlWDhyuSOgWMsCGhSTJ+hyLj75+v0pOCV1+QKQUasQQQJbUWiO6LPrDeAD5bDQJ7zimXGVwG97Z k5e0unQp8m0KUCFd1jnAAOWw2yjzbylYUlWG2sAXXQLz4NGJ4W5QulN4VdUlJGK+6sMvkT3+nSg J9Tz407wbmLiPRvNYdp1GDNwJTUL4FxgB+5V+1rLeS+8IdlceMkQlI3ebu1Fp2XyAqTJSdAraTe OVtWBLzSSeGGTnGHWoosxAMCMVS4CgFI2nZhySPqhzGBfQvzM1MLthtOxAaF7h9J/kSSLPv0tLF Bc/P9yPYMn6if2nkn5FufrSoy8AS7UY5gOMsLrbeXb1e3ZJJ1Y9VG5YAbmH5lz7G77Yb9y1+dHc 8C+DsIQ2VhwliYdxDeCOyPzDLRlkeeX/M+Q3Lu7LTeIN0V84FVkQJHCvoVrIQ= X-Received: by 2002:a17:902:db0c:b0:2b0:5cee:c421 with SMTP id d9443c01a7336-2b2d595b645mr3329935ad.4.1775765931621; Thu, 09 Apr 2026 13:18:51 -0700 (PDT) Received: from tomriddle ([131.203.184.83]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2b2d4f48cfdsm3895425ad.82.2026.04.09.13.18.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 09 Apr 2026 13:18:51 -0700 (PDT) From: Oliver White To: andersson@kernel.org, konradybcio@kernel.org, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org Cc: bod@kernel.org, linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Oliver White Subject: [PATCH v2 2/2] arm64: dts: qcom: x1e80100-microsoft-romulus: enable OV02C10 MIPI CSI-2 camera Date: Fri, 10 Apr 2026 08:17:17 +1200 Message-ID: <20260409201717.108169-3-oliverjwhite07@gmail.com> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20260409201717.108169-1-oliverjwhite07@gmail.com> References: <20260409083609.75341-1-oliverjwhite07@gmail.com> <20260409201717.108169-1-oliverjwhite07@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Enable the front-facing OV02C10 MIPI CSI-2 camera on Microsoft Romulus by enabling CAMSS, CCI1 and CSIPHY4, adding the sensor node and its endpoint, and defining the pinctrl state used by the camera clock and reset lines. Signed-off-by: Oliver White --- .../dts/qcom/x1e80100-microsoft-romulus.dtsi | 75 +++++++++++++++++++ 1 file changed, 75 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/x1e80100-microsoft-romulus.dtsi b/arch/arm64/boot/dts/qcom/x1e80100-microsoft-romulus.dtsi index 4427ecae423f..9e910813fa48 100644 --- a/arch/arm64/boot/dts/qcom/x1e80100-microsoft-romulus.dtsi +++ b/arch/arm64/boot/dts/qcom/x1e80100-microsoft-romulus.dtsi @@ -918,6 +918,65 @@ &gpu_zap_shader { firmware-name = "qcom/x1e80100/microsoft/qcdxkmsuc8380.mbn"; }; +&camss { + status = "okay"; + + ports { + /* + * port0 => csiphy0 + * port1 => csiphy1 + * port2 => csiphy2 + * port3 => csiphy4 + */ + port@3 { + camss_csiphy4_inep0: endpoint@0 { + clock-lanes = <7>; + data-lanes = <0 1>; + remote-endpoint = <&ov02c10_ep>; + }; + }; + }; +}; + +&cci1 { + status = "okay"; +}; + +&cci1_i2c1 { + camera@36 { + compatible = "ovti,ov02c10"; + reg = <0x36>; + + reset-gpios = <&tlmm 237 GPIO_ACTIVE_LOW>; + pinctrl-names = "default"; + pinctrl-0 = <&cam_rgb_default>; + + clocks = <&camcc CAM_CC_MCLK4_CLK>; + assigned-clocks = <&camcc CAM_CC_MCLK4_CLK>; + assigned-clock-rates = <19200000>; + + orientation = <0>; /* front facing */ + + avdd-supply = <&vreg_l5m_2p8>; + dvdd-supply = <&vreg_l1m_1p2>; + dovdd-supply = <&vreg_l3m_1p8>; + + port { + ov02c10_ep: endpoint { + data-lanes = <1 2>; + link-frequencies = /bits/ 64 <400000000>; + remote-endpoint = <&camss_csiphy4_inep0>; + }; + }; + }; +}; + +&csiphy4 { + vdda-0p8-supply = <&vreg_l2c>; + vdda-1p2-supply = <&vreg_l1c>; + + status = "okay"; +}; &i2c0 { clock-frequency = <100000>; @@ -1493,6 +1552,22 @@ wcn_sw_en: wcn-sw-en-state { bias-disable; }; + cam_rgb_default: cam-rgb-default-state { + mclk-pins { + pins = "gpio100"; + function = "cam_aon"; + drive-strength = <16>; + bias-disable; + }; + + reset-n-pins { + pins = "gpio237"; + function = "gpio"; + drive-strength = <2>; + bias-disable; + }; + }; + cam_indicator_en: cam-indicator-en-state { pins = "gpio225"; function = "gpio"; -- 2.51.0