All of lore.kernel.org
 help / color / mirror / Atom feed
From: Prashant Malani <pmalani@chromium.org>
To: Rob Herring <robh@kernel.org>
Cc: "Stephen Boyd" <swboyd@chromium.org>,
	"Pin-yen Lin" <treapking@chromium.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"Linux USB List" <linux-usb@vger.kernel.org>,
	"Benson Leung" <bleung@chromium.org>,
	"Heikki Krogerus" <heikki.krogerus@linux.intel.com>,
	"Krzysztof Kozlowski" <krzysztof.kozlowski@linaro.org>,
	"AngeloGioacchino Del Regno"
	<angelogioacchino.delregno@collabora.com>,
	"Nícolas F . R . A . Prado" <nfraprado@collabora.com>,
	"Allen Chen" <allen.chen@ite.com.tw>,
	"Andrzej Hajda" <andrzej.hajda@intel.com>,
	"Daniel Vetter" <daniel@ffwll.ch>,
	"David Airlie" <airlied@linux.ie>,
	devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org,
	"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
	"Hsin-Yi Wang" <hsinyi@chromium.org>,
	"Jernej Skrabec" <jernej.skrabec@gmail.com>,
	"Jonas Karlman" <jonas@kwiboo.se>,
	"José Expósito" <jose.exposito89@gmail.com>,
	"Krzysztof Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
	"Laurent Pinchart" <Laurent.pinchart@ideasonboard.com>,
	"Maxime Ripard" <maxime@cerno.tech>,
	"Neil Armstrong" <narmstrong@baylibre.com>,
	"Robert Foss" <robert.foss@linaro.org>,
	"Sam Ravnborg" <sam@ravnborg.org>,
	"Thomas Zimmermann" <tzimmermann@suse.de>,
	"Xin Ji" <xji@analogixsemi.com>,
	"Bjorn Andersson" <bjorn.andersson@linaro.org>
Subject: Re: [PATCH v5 1/9] dt-bindings: usb: Add Type-C switch binding
Date: Wed, 13 Jul 2022 14:58:05 -0700	[thread overview]
Message-ID: <CACeCKafRuzk3nWbkgjM1kz9aUhcnttaVq9P1q9M8Pfba-hBpvQ@mail.gmail.com> (raw)
In-Reply-To: <20220712174551.GG1823936-robh@kernel.org>

On Tue, Jul 12, 2022 at 10:45 AM Rob Herring <robh@kernel.org> wrote:
>
> > I agree with you; I'm saying my interpretation of the comments of this
> > thread are that it's not the intended usage of the it6505 part, so the driver
> > shouldn't be updated to support that.
>
> That's not the right interpretation. There should not be some Type-C
> specific child mux/switch node because the device has no such h/w within
> it. Assuming all the possibilities Stephen outlined are valid, it's
> clear this lane selection has nothing to do with Type-C. It does have an
> output port for its DP output already and using that to describe the
> connection to DP connector(s) and/or Type-C connector(s) should be
> handled.

Got it. Thanks for the clarification.

>
> Whether the driver is type-C aware is a separate question from the
> binding. I would think the driver just needs to be told (or it can ask)
> which endpoint should be active and it just enables output on the
> corresponding lanes for that endpoint.

Is it acceptable to tag the end-points with a "mode-switch" /
"orientation-switch"
property? Something like the following:

```
        dp-bridge@5c {
            compatible = "ite,it6505";
            ...
            port {
                #adderss-cells = <1>;
                #size-cells = <0>;

                ite_typec0: endpoint@0 {
                    reg = <0>;
                    mode-switch;
                    remote-endpoint = <&typec_connector0>;
                };
                ite_typec1: endpoint@1 {
                    reg = <1>;
                    mode-switch;
                    remote-endpoint = <&typec_connector1>;
                };
            };
        };
```
Or should the DRM bridge device binding not have those properties in
the end-points either?
The reasons those are required are:
- The Type-C matching code looks for the "mode-switch" identifier in
the fwnode while performing the switch matching [1]
- While we can look up whether the remote-endpoint is a
"usb-c-connector" in the bridge driver the
"mode-switch"/"orientation-switch" property tells the bridge driver
whether to register just a mode-switch, an orientation switch or both.

Best regards,

- Prashant

[1] https://elixir.bootlin.com/linux/v5.19-rc6/source/drivers/usb/typec/mux.c#L347

WARNING: multiple messages have this Message-ID (diff)
From: Prashant Malani <pmalani@chromium.org>
To: Rob Herring <robh@kernel.org>
Cc: "Heikki Krogerus" <heikki.krogerus@linux.intel.com>,
	"Andrzej Hajda" <andrzej.hajda@intel.com>,
	"Neil Armstrong" <narmstrong@baylibre.com>,
	"David Airlie" <airlied@linux.ie>,
	dri-devel@lists.freedesktop.org,
	"Bjorn Andersson" <bjorn.andersson@linaro.org>,
	"Laurent Pinchart" <Laurent.pinchart@ideasonboard.com>,
	"Krzysztof Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
	"Sam Ravnborg" <sam@ravnborg.org>,
	"Jernej Skrabec" <jernej.skrabec@gmail.com>,
	devicetree@vger.kernel.org,
	"Thomas Zimmermann" <tzimmermann@suse.de>,
	"Nícolas F . R . A . Prado" <nfraprado@collabora.com>,
	"Jonas Karlman" <jonas@kwiboo.se>,
	"Allen Chen" <allen.chen@ite.com.tw>,
	"Stephen Boyd" <swboyd@chromium.org>,
	"Pin-yen Lin" <treapking@chromium.org>,
	"Maxime Ripard" <maxime@cerno.tech>,
	"Hsin-Yi Wang" <hsinyi@chromium.org>,
	"Xin Ji" <xji@analogixsemi.com>,
	"AngeloGioacchino Del Regno"
	<angelogioacchino.delregno@collabora.com>,
	"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
	"Linux USB List" <linux-usb@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"Robert Foss" <robert.foss@linaro.org>,
	"Krzysztof Kozlowski" <krzysztof.kozlowski@linaro.org>,
	"José Expósito" <jose.exposito89@gmail.com>
Subject: Re: [PATCH v5 1/9] dt-bindings: usb: Add Type-C switch binding
Date: Wed, 13 Jul 2022 14:58:05 -0700	[thread overview]
Message-ID: <CACeCKafRuzk3nWbkgjM1kz9aUhcnttaVq9P1q9M8Pfba-hBpvQ@mail.gmail.com> (raw)
In-Reply-To: <20220712174551.GG1823936-robh@kernel.org>

On Tue, Jul 12, 2022 at 10:45 AM Rob Herring <robh@kernel.org> wrote:
>
> > I agree with you; I'm saying my interpretation of the comments of this
> > thread are that it's not the intended usage of the it6505 part, so the driver
> > shouldn't be updated to support that.
>
> That's not the right interpretation. There should not be some Type-C
> specific child mux/switch node because the device has no such h/w within
> it. Assuming all the possibilities Stephen outlined are valid, it's
> clear this lane selection has nothing to do with Type-C. It does have an
> output port for its DP output already and using that to describe the
> connection to DP connector(s) and/or Type-C connector(s) should be
> handled.

Got it. Thanks for the clarification.

>
> Whether the driver is type-C aware is a separate question from the
> binding. I would think the driver just needs to be told (or it can ask)
> which endpoint should be active and it just enables output on the
> corresponding lanes for that endpoint.

Is it acceptable to tag the end-points with a "mode-switch" /
"orientation-switch"
property? Something like the following:

```
        dp-bridge@5c {
            compatible = "ite,it6505";
            ...
            port {
                #adderss-cells = <1>;
                #size-cells = <0>;

                ite_typec0: endpoint@0 {
                    reg = <0>;
                    mode-switch;
                    remote-endpoint = <&typec_connector0>;
                };
                ite_typec1: endpoint@1 {
                    reg = <1>;
                    mode-switch;
                    remote-endpoint = <&typec_connector1>;
                };
            };
        };
```
Or should the DRM bridge device binding not have those properties in
the end-points either?
The reasons those are required are:
- The Type-C matching code looks for the "mode-switch" identifier in
the fwnode while performing the switch matching [1]
- While we can look up whether the remote-endpoint is a
"usb-c-connector" in the bridge driver the
"mode-switch"/"orientation-switch" property tells the bridge driver
whether to register just a mode-switch, an orientation switch or both.

Best regards,

- Prashant

[1] https://elixir.bootlin.com/linux/v5.19-rc6/source/drivers/usb/typec/mux.c#L347

  reply	other threads:[~2022-07-13 21:58 UTC|newest]

Thread overview: 100+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-22 17:34 [PATCH v5 0/9] usb: typec: Introduce typec-switch binding Prashant Malani
2022-06-22 17:34 ` Prashant Malani
2022-06-22 17:34 ` [PATCH v5 1/9] dt-bindings: usb: Add Type-C switch binding Prashant Malani
2022-06-22 17:34   ` Prashant Malani
2022-06-23 18:30   ` Stephen Boyd
2022-06-23 18:30     ` Stephen Boyd
2022-06-23 19:08     ` Prashant Malani
2022-06-23 19:08       ` Prashant Malani
2022-06-23 23:14       ` Stephen Boyd
2022-06-23 23:14         ` Stephen Boyd
2022-06-24  0:35         ` Prashant Malani
2022-06-24  0:35           ` Prashant Malani
2022-06-24  1:24           ` Prashant Malani
2022-06-24  1:24             ` Prashant Malani
2022-06-24  2:13           ` Stephen Boyd
2022-06-24  2:13             ` Stephen Boyd
2022-06-24  2:48             ` Prashant Malani
2022-06-24  2:48               ` Prashant Malani
2022-06-24 19:50               ` Stephen Boyd
2022-06-24 19:50                 ` Stephen Boyd
2022-06-24 21:41                 ` Prashant Malani
2022-06-24 21:41                   ` Prashant Malani
2022-06-25  1:21                   ` Stephen Boyd
2022-06-25  1:21                     ` Stephen Boyd
2022-06-25 20:13                   ` Krzysztof Kozlowski
2022-06-25 20:13                     ` Krzysztof Kozlowski
2022-06-27 21:04   ` Rob Herring
2022-06-27 21:04     ` Rob Herring
2022-06-27 21:43     ` Prashant Malani
2022-06-27 21:43       ` Prashant Malani
2022-06-28 18:23       ` Rob Herring
2022-06-28 18:23         ` Rob Herring
2022-06-29 14:33         ` Pin-yen Lin
2022-06-29 14:33           ` Pin-yen Lin
2022-06-29 15:00           ` Pin-yen Lin
2022-06-29 15:00             ` Pin-yen Lin
2022-06-29 17:58             ` Rob Herring
2022-06-29 17:58               ` Rob Herring
2022-06-29 21:58               ` Stephen Boyd
2022-06-29 21:58                 ` Stephen Boyd
2022-06-29 22:55                 ` Prashant Malani
2022-06-29 22:55                   ` Prashant Malani
2022-06-29 23:55                   ` Stephen Boyd
2022-06-29 23:55                     ` Stephen Boyd
2022-06-30 17:10                     ` Prashant Malani
2022-06-30 17:10                       ` Prashant Malani
2022-07-12 17:45                       ` Rob Herring
2022-07-12 17:45                         ` Rob Herring
2022-07-13 21:58                         ` Prashant Malani [this message]
2022-07-13 21:58                           ` Prashant Malani
2022-09-02  7:41                         ` Prashant Malani
2022-09-02  7:41                           ` Prashant Malani
2022-09-16 18:21                           ` Prashant Malani
2022-09-16 18:21                             ` Prashant Malani
2022-10-03  3:42                             ` Pin-yen Lin
2022-10-03  3:42                               ` Pin-yen Lin
2022-06-22 17:34 ` [PATCH v5 2/9] dt-bindings: drm/bridge: anx7625: Add mode-switch support Prashant Malani
2022-06-22 17:34   ` Prashant Malani
2022-06-22 17:34 ` [PATCH v5 3/9] drm/bridge: anx7625: Register number of Type C switches Prashant Malani
2022-06-22 17:34   ` Prashant Malani
2022-06-22 17:34 ` [PATCH v5 4/9] drm/bridge: anx7625: Register Type-C mode switches Prashant Malani
2022-06-22 17:34   ` Prashant Malani
2022-06-22 17:34 ` [PATCH v5 5/9] drm/bridge: anx7625: Add typec_mux_set callback function Prashant Malani
2022-06-22 17:34   ` Prashant Malani
2022-06-28 19:25   ` Stephen Boyd
2022-06-28 19:25     ` Stephen Boyd
2022-06-28 19:48     ` Prashant Malani
2022-06-28 19:48       ` Prashant Malani
2022-06-28 20:40       ` Stephen Boyd
2022-06-28 20:40         ` Stephen Boyd
2022-06-28 20:56         ` Prashant Malani
2022-06-28 20:56           ` Prashant Malani
2022-06-30 23:21           ` Stephen Boyd
2022-06-30 23:21             ` Stephen Boyd
2022-06-30 23:38             ` Prashant Malani
2022-06-30 23:38               ` Prashant Malani
2022-07-06 18:26               ` Prashant Malani
2022-07-06 18:26                 ` Prashant Malani
2022-07-07  0:17                 ` Stephen Boyd
2022-07-07  0:17                   ` Stephen Boyd
2022-07-12 10:22                   ` Pin-yen Lin
2022-07-12 10:22                     ` Pin-yen Lin
2022-06-22 17:34 ` [PATCH v5 6/9] dt/bindings: drm/bridge: it6505: Add mode-switch support Prashant Malani
2022-06-22 17:34   ` Prashant Malani
2022-06-23 18:24   ` Stephen Boyd
2022-06-23 18:24     ` Stephen Boyd
2022-06-23 18:37     ` Prashant Malani
2022-06-23 18:37       ` Prashant Malani
2022-06-23 19:08       ` Stephen Boyd
2022-06-23 19:08         ` Stephen Boyd
2022-06-23 19:15         ` Prashant Malani
2022-06-23 19:15           ` Prashant Malani
2022-06-22 17:34 ` [PATCH v5 7/9] drm/bridge: it6505: Register number of Type C switches Prashant Malani
2022-06-22 17:34   ` Prashant Malani
2022-06-27 21:05   ` Rob Herring
2022-06-27 21:05     ` Rob Herring
2022-06-22 17:34 ` [PATCH v5 8/9] drm/bridge: it6505: Register Type-C mode switches Prashant Malani
2022-06-22 17:34   ` Prashant Malani
2022-06-22 17:34 ` [PATCH v5 9/9] drm/bridge: it6505: Add typec_mux_set callback function Prashant Malani
2022-06-22 17:34   ` Prashant Malani

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=CACeCKafRuzk3nWbkgjM1kz9aUhcnttaVq9P1q9M8Pfba-hBpvQ@mail.gmail.com \
    --to=pmalani@chromium.org \
    --cc=Laurent.pinchart@ideasonboard.com \
    --cc=airlied@linux.ie \
    --cc=allen.chen@ite.com.tw \
    --cc=andrzej.hajda@intel.com \
    --cc=angelogioacchino.delregno@collabora.com \
    --cc=bjorn.andersson@linaro.org \
    --cc=bleung@chromium.org \
    --cc=daniel@ffwll.ch \
    --cc=devicetree@vger.kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=heikki.krogerus@linux.intel.com \
    --cc=hsinyi@chromium.org \
    --cc=jernej.skrabec@gmail.com \
    --cc=jonas@kwiboo.se \
    --cc=jose.exposito89@gmail.com \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=krzysztof.kozlowski@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=maxime@cerno.tech \
    --cc=narmstrong@baylibre.com \
    --cc=nfraprado@collabora.com \
    --cc=robert.foss@linaro.org \
    --cc=robh@kernel.org \
    --cc=sam@ravnborg.org \
    --cc=swboyd@chromium.org \
    --cc=treapking@chromium.org \
    --cc=tzimmermann@suse.de \
    --cc=xji@analogixsemi.com \
    /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.