From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wr1-f53.google.com (mail-wr1-f53.google.com [209.85.221.53]) (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 B460338F22E for ; Wed, 18 Mar 2026 09:26:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.53 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773826000; cv=none; b=nf+iTh6OxSFLbmGnVapYaP+r3o0wuRvDoVTLXgLIIEffEV/UIX54tcogbgQMBjuJhnjN/OJJ4PBhRMerLZUfrMByArN7ATvvP9mlhPRmJxo4x8tsZFM6M6N6XGRyrHbn45W5chVgtzuIrsMssiUiru/Vp1J1FqUSQET7w/3R0VI= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773826000; c=relaxed/simple; bh=2Go0fubIUQbxAVrDjujXpKOsIBbuaNGG7k8nCSyotjg=; h=Message-ID:Date:MIME-Version:From:Subject:To:Cc:References: In-Reply-To:Content-Type; b=qlj/4kPu8McvVhZVLTdHzC0+wnjTTZzJW/O2ET5jQWuyNmV8VtzscoqfCO2prIIuaiggpOK5Z+jJuTj0mv+IBOXk9I1zALJzcBgxSGYC98BO+o3uRt6WNSbk9JbghHA69J9dFNTv6QqePF9R8iJaEiK6+Gk6Gad3N4ma5W9h4+g= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=e/MK5drT; arc=none smtp.client-ip=209.85.221.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="e/MK5drT" Received: by mail-wr1-f53.google.com with SMTP id ffacd0b85a97d-439b94a19fdso6069437f8f.0 for ; Wed, 18 Mar 2026 02:26:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1773825997; x=1774430797; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:organization:autocrypt :content-language:references:cc:to:subject:reply-to:from:user-agent :mime-version:date:message-id:from:to:cc:subject:date:message-id :reply-to; bh=tlmGySGpfP86pFTHgt/qgyQF9vvsUA/8qdDSZS/3krM=; b=e/MK5drTOfGF4yrWVu4Q1GEWbDgWc8RmsHJNKnA5bHusrMuFcdPW3cSmwBPT/UU80a PXku1YSQIct3ox/mrgBNLhxDlNPQfxJt+0ySnG/89WQ/equYgf8X3Grgz7WrNJHk1jJP rhhHko5E+znfDGqsqsnaqxEwByjPc0Y2g5AVAIbIoAawpZ+jDLQrP0ldlehZ1lyp6fYm Wl4uIN2DLEfBpX+ZEAK8GCMNUMoCb0qvd/Yh/aXT6PidbIB05/eO4M/iZcod/4SN2vSF A4kk2yKN9uHyHqwoazAEXckuJ/G4O5bOSWwJqXGD6Gi+yyh/Lnl2fYnkYfafKz4dRYe2 zDVA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773825997; x=1774430797; h=content-transfer-encoding:in-reply-to:organization:autocrypt :content-language:references:cc:to:subject:reply-to:from:user-agent :mime-version:date:message-id:x-gm-gg:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=tlmGySGpfP86pFTHgt/qgyQF9vvsUA/8qdDSZS/3krM=; b=gSyvBrzvZdjzcr7T0AdVrQKngAKRWoHFLmMbZSXFAwSFI5SqqswhP6pj+f6NS//IuS 1aJGbLmd4HS3vI2G+uZ/ZbpFajGGZLujmqU0e7y+T0xRliT2anSHVq8S2DdIHY+WNHCR cqecL32Bgvw0TyzNZF4qZRMJMQ+5ySBHcS8rL3HXj+urUw2TQtVrO9isDjcxA3CL5DkJ OkDNoHGsFs4mgp6yi50OMe4rCFOt2QeufFhioQas19HH0Wh1JXGMt+jcRBG4l1PgKX9J ufPK5F2y3ofP2gw+4KSxViszn6/oCUMezt9mLTzgf0o3jL0kQKdvg0zsqsSpNehpRuYE pcWw== X-Forwarded-Encrypted: i=1; AJvYcCV7ZSAKcgxLtuuEdQNqzKqg2akzwrxnqfljub8Rn01tYtZ5qjqCKK/TALPleeJxY0URiAhW8GqL6htM0ms=@vger.kernel.org X-Gm-Message-State: AOJu0YyoZOVBrYZAAs//YGse3nIPqVdP5vqm7dU5qzjx5rG9iU+ds8RS KZjmPx4j6QUx/xzIFWUeRMfPi94piC0N88mbw/yfEyk1cvR9wbCz94kgonyfnme87/4= X-Gm-Gg: ATEYQzyO+O1/vtaHPVZV2/9yXrM6s6Y2yxE9M3OJibnEoU2alSFdtvjwgnP2SLkfSyd JS0rEghHs06w1o2IhYR/s8klQSOVDKzWFx/whxMJ+OJZ0XUUt1HZPVQ0CFwPGOAsHg4mJKT5zwx 3xMowikWvehoYrRYAgUNF57of/77qXcCnS3Ox9LbmKw8918AClEF4H2hOEmoOZB9YjhNOpdQeVw rfNMcwqK9G8+ycIef0BLBhfb8bCxuCBeY45/aN3rwdh1urw7RP1OGrejpTnLSS8kP44rqf88NQQ oUUOIlMjA9Ft4zvrI4xcKLEM93dOcCKyy83GEccTFEgRmiobwuTKZ7zOKsZ6AEQQJU8PMHkSTMZ j5WYD/lo6f4HJ6KpddXIZ4R00D/GqVBTEdFQeffuOPjB3aExNACXoiHyPUJDTrXqtvqTeJVGPGK yt1T4H7h1PdTIs+ffxOQSqlNl20ykDGRiA9CLmwuGMhxPW9SXaCP1LQq+wXjw4S4C6rSk+hdTMe cT8+hU= X-Received: by 2002:a05:6000:4203:b0:43b:45f5:efc with SMTP id ffacd0b85a97d-43b527a4a9fmr4229623f8f.4.1773825996924; Wed, 18 Mar 2026 02:26:36 -0700 (PDT) Received: from ?IPV6:2a01:e0a:106d:1080:ac75:790f:ef3c:2eb0? ([2a01:e0a:106d:1080:ac75:790f:ef3c:2eb0]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-43b518a3e3csm5821720f8f.35.2026.03.18.02.26.35 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 18 Mar 2026 02:26:36 -0700 (PDT) Message-ID: <85483caa-5e62-4c66-b3a9-23ff7fc16f98@linaro.org> Date: Wed, 18 Mar 2026 10:26:35 +0100 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird From: Neil Armstrong Reply-To: Neil Armstrong Subject: Re: [PATCH v2 10/11] arm64: dts: qcom: x1e80100-lenovo-yoga-slim7x: Add ov02c10 RGB sensor on CSIPHY4 To: Bryan O'Donoghue , Bjorn Andersson , Konrad Dybcio , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org References: <20260316-x1e-camss-csi2-phy-dtsi-v2-0-859f3fa55790@linaro.org> <20260316-x1e-camss-csi2-phy-dtsi-v2-10-859f3fa55790@linaro.org> Content-Language: en-US, fr Autocrypt: addr=neil.armstrong@linaro.org; keydata= xsBNBE1ZBs8BCAD78xVLsXPwV/2qQx2FaO/7mhWL0Qodw8UcQJnkrWmgTFRobtTWxuRx8WWP GTjuhvbleoQ5Cxjr+v+1ARGCH46MxFP5DwauzPekwJUD5QKZlaw/bURTLmS2id5wWi3lqVH4 BVF2WzvGyyeV1o4RTCYDnZ9VLLylJ9bneEaIs/7cjCEbipGGFlfIML3sfqnIvMAxIMZrvcl9 qPV2k+KQ7q+aXavU5W+yLNn7QtXUB530Zlk/d2ETgzQ5FLYYnUDAaRl+8JUTjc0CNOTpCeik 80TZcE6f8M76Xa6yU8VcNko94Ck7iB4vj70q76P/J7kt98hklrr85/3NU3oti3nrIHmHABEB AAHNKk5laWwgQXJtc3Ryb25nIDxuZWlsLmFybXN0cm9uZ0BsaW5hcm8ub3JnPsLAkQQTAQoA OwIbIwULCQgHAwUVCgkICwUWAgMBAAIeAQIXgBYhBInsPQWERiF0UPIoSBaat7Gkz/iuBQJk Q5wSAhkBAAoJEBaat7Gkz/iuyhMIANiD94qDtUTJRfEW6GwXmtKWwl/mvqQtaTtZID2dos04 YqBbshiJbejgVJjy+HODcNUIKBB3PSLaln4ltdsV73SBcwUNdzebfKspAQunCM22Mn6FBIxQ GizsMLcP/0FX4en9NaKGfK6ZdKK6kN1GR9YffMJd2P08EO8mHowmSRe/ExAODhAs9W7XXExw UNCY4pVJyRPpEhv373vvff60bHxc1k/FF9WaPscMt7hlkbFLUs85kHtQAmr8pV5Hy9ezsSRa GzJmiVclkPc2BY592IGBXRDQ38urXeM4nfhhvqA50b/nAEXc6FzqgXqDkEIwR66/Gbp0t3+r yQzpKRyQif3OwE0ETVkGzwEIALyKDN/OGURaHBVzwjgYq+ZtifvekdrSNl8TIDH8g1xicBYp QTbPn6bbSZbdvfeQPNCcD4/EhXZuhQXMcoJsQQQnO4vwVULmPGgtGf8PVc7dxKOeta+qUh6+ SRh3vIcAUFHDT3f/Zdspz+e2E0hPV2hiSvICLk11qO6cyJE13zeNFoeY3ggrKY+IzbFomIZY 4yG6xI99NIPEVE9lNBXBKIlewIyVlkOaYvJWSV+p5gdJXOvScNN1epm5YHmf9aE2ZjnqZGoM Mtsyw18YoX9BqMFInxqYQQ3j/HpVgTSvmo5ea5qQDDUaCsaTf8UeDcwYOtgI8iL4oHcsGtUX oUk33HEAEQEAAcLAXwQYAQIACQUCTVkGzwIbDAAKCRAWmrexpM/4rrXiB/sGbkQ6itMrAIfn M7IbRuiSZS1unlySUVYu3SD6YBYnNi3G5EpbwfBNuT3H8//rVvtOFK4OD8cRYkxXRQmTvqa3 3eDIHu/zr1HMKErm+2SD6PO9umRef8V82o2oaCLvf4WeIssFjwB0b6a12opuRP7yo3E3gTCS KmbUuLv1CtxKQF+fUV1cVaTPMyT25Od+RC1K+iOR0F54oUJvJeq7fUzbn/KdlhA8XPGzwGRy 4zcsPWvwnXgfe5tk680fEKZVwOZKIEuJC3v+/yZpQzDvGYJvbyix0lHnrCzq43WefRHI5XTT QbM0WUIBIcGmq38+OgUsMYu4NzLu7uZFAcmp6h8g Organization: Linaro In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 3/16/26 12:46, Bryan O'Donoghue wrote: > On 16/03/2026 08:28, Neil Armstrong wrote: >>> +    ports { >>> +        /* >>> +         * port0 => csiphy0 >>> +         * port1 => csiphy1 >>> +         * port2 => csiphy2 >>> +         * port3 => csiphy4 >>> +         */ > > Hi. > > Thanks for the review. > > I think the above comment probably isn't making this very clear. > > port0 => csiphy0 => msm_csiphy0 in the media-graph. > >>> +        port@3 { >>> +            camss_csiphy4_inep0: endpoint@0 { >>> +                clock-lanes = <7>; >>> +                data-lanes = <0 1>; >>> +                remote-endpoint = <&ov02c10_ep>; >> >> This is quite wrong, with the PHY in a separate node, the lanes layout has nothing >> to do in the "controller" ports since the sensor is connected to the the PHY which >> configures the lanes functions. >> >> The PHY should be a media element in a port/endpoint chain to properly describe the >> data flow from the sensor to the controller. > > If I am reading your comment right, we are already defining the data-lanes where you've said they should be msm_csiphyX below port@X here maps to msm_csiphyX in the media graph. > > So for example here is how we configure this before and after the changes in this series > > media-ctl -v -d /dev/media0 -V '"ov08x40 '2-0036'":0[fmt:SGRBG10/3856x2416 field:none]' > media-ctl -V '"msm_csiphy4":0[fmt:SGRBG10/3856x2416]' > media-ctl -V '"msm_csid0":0[fmt:SGRBG10/3856x2416]' > media-ctl -V '"msm_vfe0_rdi0":0[fmt:SGRBG10/3856x2416]' > media-ctl -l '"msm_csiphy4":1->"msm_csid0":0[1]' > media-ctl -l '"msm_csid0":1->"msm_vfe0_rdi0":0[1]' > media-ctl -d /dev/media0 -p So a csiphy is a media element here, so why implement it as a PHY ? and there's a data link with CSID with should represented with a port/endpoint relationship... > > Its a NOP change from user-space's perspective. CAMSS has historically used port@ to map to msm_csiphyX - taking logical elements and configuring pieces of the CSIPHY and CSID based on that mapping. > > Other examples of this upstream: > > /* Cadence CSI2RX */ > /* Sensor */ > camera@10 { >     port { >         csi2_cam0: endpoint { >             remote-endpoint = <&csi2rx0_in_sensor>; >             data-lanes = <1 2>; >         }; >     }; > }; > > /* CSI bridge — NOT the PHY */ > &cdns_csi2rx0 { >     phys = <&dphy0>; >     port@0 { >         csi2rx0_in_sensor: endpoint { >             remote-endpoint = <&csi2_cam0>; >             data-lanes = <1 2>; >         }; >     }; > }; Yeah this is totally unrelated... Neil > > --- > bod