All of lore.kernel.org
 help / color / mirror / Atom feed
From: Frank Li <Frank.li@oss.nxp.com>
To: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org>
Cc: Bryan O'Donoghue <bryan.odonoghue@linaro.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>,
	Bryan O'Donoghue <bod@kernel.org>,
	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,
	Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Subject: Re: [PATCH v13 1/2] dt-bindings: phy: qcom: Add CSI2 C-PHY/DPHY schema
Date: Tue, 21 Jul 2026 20:17:29 -0500	[thread overview]
Message-ID: <amAaKalbD749uZuK@SMW015318> (raw)
In-Reply-To: <b974f1be-b802-40a3-a54c-f7e3c8fbbece@linaro.org>

On Wed, Jul 22, 2026 at 12:49:05AM +0300, Vladimir Zapolskiy wrote:
> Hi Frank.
>
> On 7/21/26 21:57, Frank Li wrote:
> > On Mon, Jul 20, 2026 at 02:11:34AM +0100, Bryan O'Donoghue wrote:
> > > Add a base schema for the MIPI CSI2 PHYs on Qualcomm SoCs. This PHY
> > > supports both DPHY and CPHY operation. A special mode of DPHY operation -
> > > called variously split-mode or combo-mode also allows for two sensors to be
> > > connected to one PHY.
> > >
> > > The submitted binding here describes the DPHY modes of operation only. CPHY
> > > is left to future work.
> > >
> > > Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
> > > Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
> > > ---
> > >   .../bindings/phy/qcom,x1e80100-csi2-phy.yaml       | 195 +++++++++++++++++++++
> > >   1 file changed, 195 insertions(+)
> > >
> > > diff --git a/Documentation/devicetree/bindings/phy/qcom,x1e80100-csi2-phy.yaml b/Documentation/devicetree/bindings/phy/qcom,x1e80100-csi2-phy.yaml
> > > new file mode 100644
> > > index 0000000000000..880fe602945cb
> > > --- /dev/null
> > > +++ b/Documentation/devicetree/bindings/phy/qcom,x1e80100-csi2-phy.yaml
> > > @@ -0,0 +1,195 @@
> > > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> > > +%YAML 1.2
> > > +---
> > > +$id: http://devicetree.org/schemas/phy/qcom,x1e80100-csi2-phy.yaml#
> > > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > > +
> > > +title: Qualcomm X1E80100 SoC CSI2 PHY
> > > +
> > > +maintainers:
> > > +  - Bryan O'Donoghue <bod@kernel.org>
> > > +
> > > +description:
> > > +  Qualcomm MIPI CSI2 C-PHY/D-PHY combination PHY. Connects MIPI CSI2 sensors
> > > +  to Qualcomm's Camera CSI Decoder. The PHY supports both C-PHY and D-PHY
> > > +  modes.
> > > +
> > > +properties:
> > > +  compatible:
> > > +    const: qcom,x1e80100-csi2-phy
> > > +
> > > +  reg:
> > > +    maxItems: 1
> > > +
> > > +  "#phy-cells":
> > > +    const: 1
> > > +    description:
> > > +      The single cell specifies the PHY operating mode.
> > > +
> > > +  clocks:
> > > +    maxItems: 3
> > > +
> > > +  clock-names:
> > > +    items:
> > > +      - const: core
> > > +      - const: timer
> > > +      - const: ahb
> > > +
> > > +  interrupts:
> > > +    maxItems: 1
> > > +
> > > +  operating-points-v2: true
> > > +
> > > +  opp-table:
> > > +    type: object
> > > +
> > > +  power-domains:
> > > +    items:
> > > +      - description: Titan Top GDSC - Titan ISP Block, Global Distributed Switch Controller.
> > > +      - description: MMCX voltage rail
> > > +      - description: MXC or MXA voltage rail
> > > +
> > > +  power-domain-names:
> > > +    items:
> > > +      - const: top
> > > +      - const: mmcx
> > > +      - const: mx
> > > +
> > > +  vdda-0p9-supply:
> > > +    description: Phandle to a 0.9V regulator supply to a PHY.
> > > +
> > > +  vdda-1p2-supply:
> > > +    description: Phandle to 1.2V regulator supply to a PHY.
> > > +
> > > +  ports:
> > > +    $ref: /schemas/graph.yaml#/properties/ports
> > > +
> > > +    properties:
> > > +      port@0:
> > > +        $ref: /schemas/graph.yaml#/$defs/port-base
> > > +        description:
> > > +          Sensor input. Always present. A single sensor is described by a
> > > +          single endpoint with one to four data lanes. DPHY split mode,
> > > +          where two independent sensors share the same PHY, is described
> > > +          by two endpoints; endpoint@0 with exactly two data-lanes and
> > > +          endpoint@1 with exactly one data-lane.
> >
> > Sorry, jump in so late. I have questions about this design
> >
> > why not model each lane as sperated phys.
> >
> > csi1 {
> > 	...
> > 	phys = <&phy 0>, <&phy 1>; // use lane 0 and 1, connect sensor 1
> > };
> >
> > csi2 {
> > 	...
> > 	phys = <&phy 2>; // use lan 2, connect sensor 2.
> > };
> >
>
> Such design has a number of flaws and in general it looks overly
> complicated. From the beginning it's unclear how to distinguish
> a clock lane from a data lane, how to specify lane frequencies etc.

Thanks, but phy-cell support more than one argument. like

	<&phy 0 mode_cphy link_freq>

I ask these because simiar other phys may connect to display panel, some
phys combine csi and dsi together.

Frank

>
> --
> Best wishes,
> Vladimir

WARNING: multiple messages have this Message-ID (diff)
From: Frank Li <Frank.li@oss.nxp.com>
To: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org>
Cc: Bryan O'Donoghue <bryan.odonoghue@linaro.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>,
	Bryan O'Donoghue <bod@kernel.org>,
	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,
	Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Subject: Re: [PATCH v13 1/2] dt-bindings: phy: qcom: Add CSI2 C-PHY/DPHY schema
Date: Tue, 21 Jul 2026 20:17:29 -0500	[thread overview]
Message-ID: <amAaKalbD749uZuK@SMW015318> (raw)
In-Reply-To: <b974f1be-b802-40a3-a54c-f7e3c8fbbece@linaro.org>

On Wed, Jul 22, 2026 at 12:49:05AM +0300, Vladimir Zapolskiy wrote:
> Hi Frank.
>
> On 7/21/26 21:57, Frank Li wrote:
> > On Mon, Jul 20, 2026 at 02:11:34AM +0100, Bryan O'Donoghue wrote:
> > > Add a base schema for the MIPI CSI2 PHYs on Qualcomm SoCs. This PHY
> > > supports both DPHY and CPHY operation. A special mode of DPHY operation -
> > > called variously split-mode or combo-mode also allows for two sensors to be
> > > connected to one PHY.
> > >
> > > The submitted binding here describes the DPHY modes of operation only. CPHY
> > > is left to future work.
> > >
> > > Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
> > > Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
> > > ---
> > >   .../bindings/phy/qcom,x1e80100-csi2-phy.yaml       | 195 +++++++++++++++++++++
> > >   1 file changed, 195 insertions(+)
> > >
> > > diff --git a/Documentation/devicetree/bindings/phy/qcom,x1e80100-csi2-phy.yaml b/Documentation/devicetree/bindings/phy/qcom,x1e80100-csi2-phy.yaml
> > > new file mode 100644
> > > index 0000000000000..880fe602945cb
> > > --- /dev/null
> > > +++ b/Documentation/devicetree/bindings/phy/qcom,x1e80100-csi2-phy.yaml
> > > @@ -0,0 +1,195 @@
> > > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> > > +%YAML 1.2
> > > +---
> > > +$id: http://devicetree.org/schemas/phy/qcom,x1e80100-csi2-phy.yaml#
> > > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > > +
> > > +title: Qualcomm X1E80100 SoC CSI2 PHY
> > > +
> > > +maintainers:
> > > +  - Bryan O'Donoghue <bod@kernel.org>
> > > +
> > > +description:
> > > +  Qualcomm MIPI CSI2 C-PHY/D-PHY combination PHY. Connects MIPI CSI2 sensors
> > > +  to Qualcomm's Camera CSI Decoder. The PHY supports both C-PHY and D-PHY
> > > +  modes.
> > > +
> > > +properties:
> > > +  compatible:
> > > +    const: qcom,x1e80100-csi2-phy
> > > +
> > > +  reg:
> > > +    maxItems: 1
> > > +
> > > +  "#phy-cells":
> > > +    const: 1
> > > +    description:
> > > +      The single cell specifies the PHY operating mode.
> > > +
> > > +  clocks:
> > > +    maxItems: 3
> > > +
> > > +  clock-names:
> > > +    items:
> > > +      - const: core
> > > +      - const: timer
> > > +      - const: ahb
> > > +
> > > +  interrupts:
> > > +    maxItems: 1
> > > +
> > > +  operating-points-v2: true
> > > +
> > > +  opp-table:
> > > +    type: object
> > > +
> > > +  power-domains:
> > > +    items:
> > > +      - description: Titan Top GDSC - Titan ISP Block, Global Distributed Switch Controller.
> > > +      - description: MMCX voltage rail
> > > +      - description: MXC or MXA voltage rail
> > > +
> > > +  power-domain-names:
> > > +    items:
> > > +      - const: top
> > > +      - const: mmcx
> > > +      - const: mx
> > > +
> > > +  vdda-0p9-supply:
> > > +    description: Phandle to a 0.9V regulator supply to a PHY.
> > > +
> > > +  vdda-1p2-supply:
> > > +    description: Phandle to 1.2V regulator supply to a PHY.
> > > +
> > > +  ports:
> > > +    $ref: /schemas/graph.yaml#/properties/ports
> > > +
> > > +    properties:
> > > +      port@0:
> > > +        $ref: /schemas/graph.yaml#/$defs/port-base
> > > +        description:
> > > +          Sensor input. Always present. A single sensor is described by a
> > > +          single endpoint with one to four data lanes. DPHY split mode,
> > > +          where two independent sensors share the same PHY, is described
> > > +          by two endpoints; endpoint@0 with exactly two data-lanes and
> > > +          endpoint@1 with exactly one data-lane.
> >
> > Sorry, jump in so late. I have questions about this design
> >
> > why not model each lane as sperated phys.
> >
> > csi1 {
> > 	...
> > 	phys = <&phy 0>, <&phy 1>; // use lane 0 and 1, connect sensor 1
> > };
> >
> > csi2 {
> > 	...
> > 	phys = <&phy 2>; // use lan 2, connect sensor 2.
> > };
> >
>
> Such design has a number of flaws and in general it looks overly
> complicated. From the beginning it's unclear how to distinguish
> a clock lane from a data lane, how to specify lane frequencies etc.

Thanks, but phy-cell support more than one argument. like

	<&phy 0 mode_cphy link_freq>

I ask these because simiar other phys may connect to display panel, some
phys combine csi and dsi together.

Frank

>
> --
> Best wishes,
> Vladimir

-- 
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy

  reply	other threads:[~2026-07-22  1:17 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-07-20  1:11 [PATCH v13 0/2] phy: qcom-mipi-csi2: Add a CSI2 MIPI DPHY driver Bryan O'Donoghue
2026-07-20  1:11 ` Bryan O'Donoghue
2026-07-20  1:11 ` [PATCH v13 1/2] dt-bindings: phy: qcom: Add CSI2 C-PHY/DPHY schema Bryan O'Donoghue
2026-07-20  1:11   ` Bryan O'Donoghue
2026-07-20  1:20   ` sashiko-bot
2026-07-20  1:20     ` sashiko-bot
2026-07-21  8:15   ` Neil Armstrong
2026-07-21  8:15     ` Neil Armstrong
2026-07-21  8:17   ` Vladimir Zapolskiy
2026-07-21  8:17     ` Vladimir Zapolskiy
2026-07-21  9:39     ` Bryan O'Donoghue
2026-07-21  9:39       ` Bryan O'Donoghue
2026-07-21  9:56       ` Vladimir Zapolskiy
2026-07-21  9:56         ` Vladimir Zapolskiy
2026-07-21 10:47         ` Bryan O'Donoghue
2026-07-21 10:47           ` Bryan O'Donoghue
2026-07-21 11:05           ` Vladimir Zapolskiy
2026-07-21 11:05             ` Vladimir Zapolskiy
2026-07-21 11:24             ` Bryan O'Donoghue
2026-07-21 11:24               ` Bryan O'Donoghue
2026-07-21 13:19               ` Bryan O'Donoghue
2026-07-21 13:19                 ` Bryan O'Donoghue
2026-07-21 13:35                 ` Vladimir Zapolskiy
2026-07-21 13:35                   ` Vladimir Zapolskiy
2026-07-21 14:06                   ` Bryan O'Donoghue
2026-07-21 14:06                     ` Bryan O'Donoghue
2026-07-21 19:24                   ` Bryan O'Donoghue
2026-07-21 19:24                     ` Bryan O'Donoghue
2026-07-21 18:57   ` Frank Li
2026-07-21 18:57     ` Frank Li
2026-07-21 21:49     ` Vladimir Zapolskiy
2026-07-21 21:49       ` Vladimir Zapolskiy
2026-07-22  1:17       ` Frank Li [this message]
2026-07-22  1:17         ` Frank Li
2026-07-22  1:53         ` Bryan O'Donoghue
2026-07-22  1:53           ` Bryan O'Donoghue
2026-07-20  1:11 ` [PATCH v13 2/2] phy: qcom-mipi-csi2: Add a CSI2 MIPI DPHY driver Bryan O'Donoghue
2026-07-20  1:11   ` Bryan O'Donoghue
2026-07-20  1:26   ` sashiko-bot
2026-07-20  1:26     ` sashiko-bot
2026-07-20  3:23   ` Wenmeng Liu
2026-07-20  3:23     ` Wenmeng Liu
2026-07-20  8:21   ` Loic Poulain
2026-07-20  8:21     ` Loic Poulain
2026-07-21 11:30   ` Vladimir Zapolskiy
2026-07-21 11:30     ` Vladimir Zapolskiy

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=amAaKalbD749uZuK@SMW015318 \
    --to=frank.li@oss.nxp.com \
    --cc=bod@kernel.org \
    --cc=bryan.odonoghue@linaro.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=kishon@kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=krzysztof.kozlowski@oss.qualcomm.com \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.