[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20201112085920.GB1367855@google.com>
Date: Thu, 12 Nov 2020 00:59:20 -0800
From: Prashant Malani <pmalani@...omium.org>
To: Pi-Hsun Shih <pihsun@...omium.org>
Cc: Nicolas Boichat <drinkcat@...omium.org>,
Andrzej Hajda <a.hajda@...sung.com>,
Neil Armstrong <narmstrong@...libre.com>,
Laurent Pinchart <Laurent.pinchart@...asonboard.com>,
Jonas Karlman <jonas@...boo.se>,
Jernej Skrabec <jernej.skrabec@...l.net>,
David Airlie <airlied@...ux.ie>,
Daniel Vetter <daniel@...ll.ch>, Xin Ji <xji@...logixsemi.com>,
Sam Ravnborg <sam@...nborg.org>,
"open list:DRM DRIVERS" <dri-devel@...ts.freedesktop.org>,
open list <linux-kernel@...r.kernel.org>,
heikki.krogerus@...ux.intel.com
Subject: Re: [PATCH] drm/bridge: anx7625: Add anx7625 port switching.
Hi Pi-Hsun,
I haven't gone through the code, but did have a high-level comment
(kindly see inline)
On Thu, Nov 12, 2020 at 02:40:40PM +0800, Pi-Hsun Shih wrote:
> When output 2 lanes DP data, anx7625 can output to either TX1/RX1 or
> TX2/RX2. In typical usage, these two TX/RX pairs corresponds to two
> orientations of typec.
>
> On some board one anx7625 is used as DPI to DP converter for two typec
> ports. In this case, the TX1/RX1 and TX2/RX2 are connected to two usb
> muxes, which mux the DP data with the rest of the USB3 data, and
> connects to the two typec ports.
>
> This patch adds option for anx7625 to acts as a usb typec switch and
> switch output lanes based on the typec orientation, or acts as two usb
> typec mux and switch output lanes depending on whether the two ports
> currently has DP enabled.
>
> Signed-off-by: Pi-Hsun Shih <pihsun@...omium.org>
>
> ====================================================================
>
> This is an attempt to use typec framework with how we're using anx7625
> on Chrome OS asurada board.
>
> An example of the dts for the two ports case can be found at
> https://crrev.com/c/2507199/6
Do you plan on submitting DT schemas & bindings documentation for the switch(es)
that are intended to be used?
I would strongly recommend that for usb-c-connector since AFAIK they don't exist, and
I don't believe there is explicit support for them in the Type C connector class framework
(even .
IMO this would be needed to ensure an implementation here doesn't break
in the event of modifications to the connector class framework (or Type
C port drivers like cros-ec-typec) in the future. I think some patches
were floated for this for orientation switch [1] so those might provide
some hints about how to proceed.
I've CC-ed Heikki (Type C maintainer) in case he has additional comments regarding this.
>
> Sending this as a RFC patch since I'm not sure about the best approach
> here. Should the logic of switching output lanes depends on ports be
> coupled inside anx7625 driver, or in another driver, or is there
> any existing way to accomplish this?
Might be good to add [RFC] as a tag instead of [PATCH] in case this
iteration is chiefly to solicit comments.
Best regards,
-Prashant
[1]:
https://lore.kernel.org/linux-usb/1604403610-16577-1-git-send-email-jun.li@nxp.com/
>
Powered by blists - more mailing lists