From: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
To: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org>,
Bryan O'Donoghue <bod@kernel.org>, Vinod Koul <vkoul@kernel.org>,
Kishon Vijay Abraham I <kishon@kernel.org>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Neil Armstrong <neil.armstrong@linaro.org>
Cc: linux-arm-msm@vger.kernel.org, linux-phy@lists.infradead.org,
linux-media@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v5 1/2] dt-bindings: phy: qcom: Add CSI2 C-PHY/DPHY schema
Date: Fri, 27 Mar 2026 01:03:24 +0000 [thread overview]
Message-ID: <fedd369d-a0fc-4dbd-9862-3b6e3a403764@linaro.org> (raw)
In-Reply-To: <99287afe-90cb-44d5-91db-14c6b0f729fd@linaro.org>
On 26/03/2026 14:49, Vladimir Zapolskiy wrote:
> Here the description of hardware is done, and my point is that the new
> PHY_QCOM_CSI2_MODE_SPLIT_DPHY phy type is simply not needed, since it's
> possible to give a proper description of hardware without this invention.
Perhaps I'm not understanding you.
If we use PHY_TYPE_DPHY
include/dt-bindings/phy/phy.h:#define PHY_TYPE_DPHY 10
We _must_ then add SPLIT_MODE to phy.h if/when we implement that
support. Which means successfully arguing the toss of weather SPLIT_MODE
is a Qualcommism - a vendor specific mode or not.
<&phy PHY_TYPE_DPHY> committed to an upstream dts will then need to be
supported perpetually.
So for example qrb5615 - kona/rb5 support split mode.
Pretend go with <&phy PHY_TYPE_DPHY>; and retrofit individual PHY
support to this platform.
Grand so far.
The pretend we want to switch from one sensor to a split-mode sensor on
the existing mezzanine.
Then we need a representation of split mode in phy.h to represent that
in DT.
<&phy PHY_TYPE_DPHY_SPLIT_MODE>;
Except split-mode is not an appropriate mode to define in phy.h since it
is vendor specific - even if a few vendors support it, its not a generic
PHY mode.
Hence we would have an enormously difficult time justifying adding that
mode to phy.h and rightly so.
>> https://review.lineageos.org/c/LineageOS/
>> android_kernel_motorola_sm6375/+/423960/1/drivers/cam_sensor_module/
>> cam_csiphy/cam_csiphy_core.c#b285
>>
>> There is disjunction all over this file depending on the mode.
>>
>> https://review.lineageos.org/c/LineageOS/
>> android_kernel_motorola_sm6375/+/423960/1/drivers/cam_sensor_module/
>> cam_csiphy/cam_csiphy_core.c#b767
OTOH
- SPLIT_MODE will certainly require _both_ separate init sequences
and specific logical disjunction for additional configuration steps
lane-assignment and masking, etc.
- That phy.h isn't the right location for SPLIT_MODE as its vendor
specific. Just look at the modes we have for the USB PHYs
same logic => include/dt-bindings/phy/phy-qcom-qmp.h same
raison d'être
- And that specifying PHY_TYPE_DPHY now binds us into an ABI that we
cannot subsequently change - it will not be possible to introduce
include/dt-bindings/phy/phy-qcom-mipi-csi2.h later on with our mode
So therefore include/dt-bindings/phy/phy-qcom-mipi-csi2.h + PHY modes is
the logical outcome.
---
bod
next prev parent reply other threads:[~2026-03-27 1:03 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-26 1:04 [PATCH v5 0/2] phy: qcom-mipi-csi2: Add a CSI2 MIPI DPHY driver Bryan O'Donoghue
2026-03-26 1:04 ` [PATCH v5 1/2] dt-bindings: phy: qcom: Add CSI2 C-PHY/DPHY schema Bryan O'Donoghue
2026-03-26 1:46 ` Vladimir Zapolskiy
2026-03-26 2:03 ` Bryan O'Donoghue
2026-03-26 10:28 ` Vladimir Zapolskiy
2026-03-26 14:42 ` Bryan O'Donoghue
2026-03-26 14:49 ` Vladimir Zapolskiy
2026-03-27 1:03 ` Bryan O'Donoghue [this message]
2026-03-27 7:54 ` Vladimir Zapolskiy
2026-03-27 20:51 ` Dmitry Baryshkov
2026-03-27 22:29 ` Bryan O'Donoghue
2026-03-27 23:12 ` Vladimir Zapolskiy
2026-03-27 23:23 ` Dmitry Baryshkov
2026-03-27 23:40 ` Bryan O'Donoghue
2026-03-29 10:54 ` Dmitry Baryshkov
2026-03-30 9:46 ` Konrad Dybcio
2026-03-28 0:41 ` Vladimir Zapolskiy
2026-03-26 2:31 ` Rob Herring (Arm)
2026-03-27 10:07 ` Konrad Dybcio
2026-03-27 10:10 ` Konrad Dybcio
2026-03-27 14:38 ` Bryan O'Donoghue
2026-03-27 15:28 ` Neil Armstrong
2026-03-27 17:42 ` Bryan O'Donoghue
2026-03-30 7:49 ` Neil Armstrong
2026-03-30 9:02 ` Bryan O'Donoghue
2026-03-30 9:17 ` Neil Armstrong
2026-03-30 9:25 ` Bryan O'Donoghue
2026-03-30 11:34 ` Konrad Dybcio
2026-03-30 11:41 ` Bryan O'Donoghue
2026-04-15 9:41 ` Konrad Dybcio
2026-03-30 11:49 ` Dmitry Baryshkov
2026-03-30 12:03 ` Bryan O'Donoghue
2026-03-30 10:39 ` Vladimir Zapolskiy
2026-03-26 1:04 ` [PATCH v5 2/2] phy: qcom-mipi-csi2: Add a CSI2 MIPI DPHY driver Bryan O'Donoghue
2026-03-27 2:23 ` Hangxiang Ma
2026-03-27 10:07 ` Konrad Dybcio
2026-03-27 20:57 ` Dmitry Baryshkov
2026-03-27 20:54 ` Dmitry Baryshkov
2026-03-27 22:11 ` Bryan O'Donoghue
2026-03-27 22:30 ` Dmitry Baryshkov
2026-04-02 2:22 ` Vijay Kumar Tumati
2026-04-06 14:28 ` Abel Vesa
2026-04-06 15:37 ` Bryan O'Donoghue
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=fedd369d-a0fc-4dbd-9862-3b6e3a403764@linaro.org \
--to=bryan.odonoghue@linaro.org \
--cc=bod@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=kishon@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-phy@lists.infradead.org \
--cc=neil.armstrong@linaro.org \
--cc=robh@kernel.org \
--cc=vkoul@kernel.org \
--cc=vladimir.zapolskiy@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox