devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Prashant Malani <pmalani@chromium.org>
To: Stephen Boyd <swboyd@chromium.org>
Cc: linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org,
	bleung@chromium.org, heikki.krogerus@linux.intel.com,
	"Pin-Yen Lin" <treapking@chromium.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>,
	"Rob Herring" <robh+dt@kernel.org>,
	"Sam Ravnborg" <sam@ravnborg.org>,
	"Thomas Zimmermann" <tzimmermann@suse.de>,
	"Xin Ji" <xji@analogixsemi.com>
Subject: Re: [PATCH v5 5/9] drm/bridge: anx7625: Add typec_mux_set callback function
Date: Thu, 30 Jun 2022 16:38:24 -0700	[thread overview]
Message-ID: <CACeCKafQT_RBrkHJNE2ezahSsHLPrbnS69QbfnjxBoUhi6hjwQ@mail.gmail.com> (raw)
In-Reply-To: <CAE-0n50Akd8QikGhaAQgxLkJBhE-7KQf5aJ_P2ajOmCjLk555g@mail.gmail.com>

On Thu, Jun 30, 2022 at 4:21 PM Stephen Boyd <swboyd@chromium.org> wrote:
>
> Quoting Prashant Malani (2022-06-28 13:56:22)
> > On Tue, Jun 28, 2022 at 1:40 PM Stephen Boyd <swboyd@chromium.org> wrote:
> > >
> > > I suppose none of those things matter though as long as there is some
> > > typec switch registered here so that the driver can be informed of the
> > > pin assignment. Is it right that the "mode-switch" property is only
> > > required in DT if this device is going to control the mode of the
> > > connector, i.e. USB+DP, or just DP? Where this device can't do that
> > > because it doesn't support only DP.
> >
> > If the anx7625 is used just to route all lanes from 1 usb-c-connector (i.e
> > the USB+DP case), a mode-switch wouldn't be of much use, since one
> > would also route the CC lines to the built-in PD controller; so it will
> > already have knowledge of what mode the switch is in.
> >
> > The mode-switch is likely only relevant for this hardware configuration(
> > it's "DP only" in the sense that the USB pins to the SoC never go anywhere).
> > One only has 2 SS lanes each (from each usb-c-connector).
> >
> > Since there is no CC-line, the anx7625 needs to know which one has DP
> > enabled on it.
>
> Can the CC line be "captured" and not actually sent to the anx7625?

That's what happens on Chrome OS. The cc line goes to the EC (and is "consumed"
by the TCPM (Type C Port Manager)) and signals are then sent to the AP
over the Host command interface to `cros-ec-typec`. The signals here being all
the PD messages communicated between the peripheral and the port.

> I imagine if that is possible, maybe the CC lines would go to some
> micro-controller or something that did more typec management things and
> then the anx7625 driver would need to do software control of the mode
> and orientation control.

I _guess_ that is possible (though it would seem odd to not use all the PD
control hardware in that configuration)? If an system implements it in
such a way
then:
1. mode-switch: Can be updated to do something when num_typec_switches == 1 (
in the mux_set function imp.l I haven't looked into what registers
need to be configured, since we
don't have this hardware implementation.
2. orientation-switch: This should be registered, and then flip the
lanes when the port
driver tells it the orientation is one way or another.

So, if someone uses it that way, I think the driver needs only minor
updates to support it.

  reply	other threads:[~2022-06-30 23:38 UTC|newest]

Thread overview: 50+ 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 ` [PATCH v5 1/9] dt-bindings: usb: Add Type-C switch binding Prashant Malani
2022-06-23 18:30   ` Stephen Boyd
2022-06-23 19:08     ` Prashant Malani
2022-06-23 23:14       ` Stephen Boyd
2022-06-24  0:35         ` Prashant Malani
2022-06-24  1:24           ` Prashant Malani
2022-06-24  2:13           ` Stephen Boyd
2022-06-24  2:48             ` Prashant Malani
2022-06-24 19:50               ` Stephen Boyd
2022-06-24 21:41                 ` Prashant Malani
2022-06-25  1:21                   ` Stephen Boyd
2022-06-25 20:13                   ` Krzysztof Kozlowski
2022-06-27 21:04   ` Rob Herring
2022-06-27 21:43     ` Prashant Malani
2022-06-28 18:23       ` Rob Herring
2022-06-29 14:33         ` Pin-yen Lin
2022-06-29 15:00           ` Pin-yen Lin
2022-06-29 17:58             ` Rob Herring
2022-06-29 21:58               ` Stephen Boyd
2022-06-29 22:55                 ` Prashant Malani
2022-06-29 23:55                   ` Stephen Boyd
2022-06-30 17:10                     ` Prashant Malani
2022-07-12 17:45                       ` Rob Herring
2022-07-13 21:58                         ` Prashant Malani
2022-09-02  7:41                         ` Prashant Malani
2022-09-16 18:21                           ` Prashant Malani
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 ` [PATCH v5 3/9] drm/bridge: anx7625: Register number of Type C switches 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 ` [PATCH v5 5/9] drm/bridge: anx7625: Add typec_mux_set callback function Prashant Malani
2022-06-28 19:25   ` Stephen Boyd
2022-06-28 19:48     ` Prashant Malani
2022-06-28 20:40       ` Stephen Boyd
2022-06-28 20:56         ` Prashant Malani
2022-06-30 23:21           ` Stephen Boyd
2022-06-30 23:38             ` Prashant Malani [this message]
2022-07-06 18:26               ` Prashant Malani
2022-07-07  0:17                 ` Stephen Boyd
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-23 18:24   ` Stephen Boyd
2022-06-23 18:37     ` Prashant Malani
2022-06-23 19:08       ` Stephen Boyd
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-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 ` [PATCH v5 9/9] drm/bridge: it6505: Add typec_mux_set callback function 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=CACeCKafQT_RBrkHJNE2ezahSsHLPrbnS69QbfnjxBoUhi6hjwQ@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=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=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+dt@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).