From: "Luca Weiss" <luca.weiss@fairphone.com>
To: "Krzysztof Kozlowski" <krzysztof.kozlowski@linaro.org>,
"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
"Rob Herring" <robh+dt@kernel.org>,
"Krzysztof Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
"Conor Dooley" <conor+dt@kernel.org>,
"Bjorn Andersson" <andersson@kernel.org>,
"Konrad Dybcio" <konrad.dybcio@linaro.org>,
"Neil Armstrong" <neil.armstrong@linaro.org>,
<linux-usb@vger.kernel.org>, <devicetree@vger.kernel.org>,
<linux-kernel@vger.kernel.org>, <linux-arm-msm@vger.kernel.org>
Subject: Re: [PATCH v2] dt-bindings: usb: add common Type-C USB Switch schema
Date: Thu, 11 Apr 2024 09:35:32 +0200 [thread overview]
Message-ID: <D0H4CHG4KSRF.10Z6DOI8PORI8@fairphone.com> (raw)
In-Reply-To: <051c6e44-4844-48b9-846d-cf9b81611415@linaro.org>
On Thu Apr 11, 2024 at 9:25 AM CEST, Krzysztof Kozlowski wrote:
> On 11/04/2024 09:13, Luca Weiss wrote:
> > On Mon Jan 22, 2024 at 10:44 AM CET, Krzysztof Kozlowski wrote:
> >> Several bindings implement parts of Type-C USB orientation and mode
> >> switching, and retiming. Keep definition of such properties in one
> >> place, new usb-switch schema, to avoid duplicate defines.
> >>
> >> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> >>
> >> ---
> >>
> >> Changes in v2:
> >> 1. Fix language typos handle->handler (Luca)
> >> 2. Drop debugging left-over (Luca)
> >> ---
> >> .../devicetree/bindings/usb/fcs,fsa4480.yaml | 12 ++--
> >> .../devicetree/bindings/usb/gpio-sbu-mux.yaml | 12 ++--
> >> .../devicetree/bindings/usb/nxp,ptn36502.yaml | 12 ++--
> >> .../bindings/usb/onnn,nb7vpq904m.yaml | 13 ++--
> >> .../bindings/usb/qcom,wcd939x-usbss.yaml | 12 ++--
> >> .../devicetree/bindings/usb/usb-switch.yaml | 67 +++++++++++++++++++
> >> 6 files changed, 92 insertions(+), 36 deletions(-)
> >> create mode 100644 Documentation/devicetree/bindings/usb/usb-switch.yaml
> >>
> >> diff --git a/Documentation/devicetree/bindings/usb/fcs,fsa4480.yaml b/Documentation/devicetree/bindings/usb/fcs,fsa4480.yaml
> >> index f9410eb76a62..8b25b9a01ced 100644
> >> --- a/Documentation/devicetree/bindings/usb/fcs,fsa4480.yaml
> >> +++ b/Documentation/devicetree/bindings/usb/fcs,fsa4480.yaml
> >> @@ -27,13 +27,8 @@ properties:
> >> vcc-supply:
> >> description: power supply (2.7V-5.5V)
> >>
> >> - mode-switch:
> >> - description: Flag the port as possible handle of altmode switching
> >> - type: boolean
> >> -
> >> - orientation-switch:
> >> - description: Flag the port as possible handler of orientation switching
> >> - type: boolean
> >> + mode-switch: true
> >> + orientation-switch: true
> >>
> >> port:
> >> $ref: /schemas/graph.yaml#/$defs/port-base
> >> @@ -79,6 +74,9 @@ required:
> >> - reg
> >> - port
> >>
> >> +allOf:
> >> + - $ref: usb-switch.yaml#
> >> +
> >> additionalProperties: false
> >>
> >> examples:
> >
> > Hi Krzysztof,
> >
> > This patch seems to break validation for fsa4480 if data-lanes is set in
> > the endpoint like the following
> >
> > diff --git a/Documentation/devicetree/bindings/usb/fcs,fsa4480.yaml b/Documentation/devicetree/bindings/usb/fcs,fsa4480.yaml
> > index f9410eb76a62..3aa03fd65556 100644
> > --- a/Documentation/devicetree/bindings/usb/fcs,fsa4480.yaml
> > +++ b/Documentation/devicetree/bindings/usb/fcs,fsa4480.yaml
> > @@ -102,6 +102,7 @@ examples:
> > port {
> > fsa4480_ept: endpoint {
> > remote-endpoint = <&typec_controller>;
> > + data-lanes = <0 1>;
> > };
> > };
> > };
> >
> > Similar to how it's already used on qcom/qcm6490-fairphone-fp5.dts
> >
> > I'm guessing the 'port' definition in the common schema somehow
> > disallows the fsa4480 schema from describing it further?
>
> There is no such code in qcm6490-fairphone-fp5.dts. There was no such
> code in the example of fsa4480 when I was testing my changes (and
> examples should be complete), so this did not pop up.
Right, I'm sorry this is just out-of-tree for now, I've forgotten this.
There's some dependency chain with some unsupported DSC configuration in
DPU for now that blocks upstreaming this.
My tree with these patches is here if you want to take a look:
https://github.com/sc7280-mainline/linux/blob/sc7280-6.8.y/arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts#L628
>
> You right, new schema does not allow extending the port. However the
> true question is, why muxing happens on the port to the SoC controller?
> The graph in commit msg fad89aa14 shows it happens on the side of the
> connector.
>
> Looks like fsa4480 mixes connector with the controller.
Could be honestly.. I trust you with knowing better how the ports are
supposed to work.
The property is for telling the fsa4480 driver that essentially the
hardware is wired up the reverse way. So with this info the driver can
handle the orientation switching correctly.
There's another layer to this as explained in the patches there that the
OCP96011 essentially works reversed compared to FSA4480, that's why it's
all a bit of a mess.
Regards
Luca
>
> Best regards,
> Krzysztof
next prev parent reply other threads:[~2024-04-11 7:35 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-01-22 9:44 [PATCH v2] dt-bindings: usb: add common Type-C USB Switch schema Krzysztof Kozlowski
2024-04-11 7:13 ` Luca Weiss
2024-04-11 7:25 ` Krzysztof Kozlowski
2024-04-11 7:35 ` Luca Weiss [this message]
2024-04-13 11:31 ` Krzysztof Kozlowski
2024-04-14 0:47 ` Dmitry Baryshkov
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=D0H4CHG4KSRF.10Z6DOI8PORI8@fairphone.com \
--to=luca.weiss@fairphone.com \
--cc=andersson@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=konrad.dybcio@linaro.org \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=krzysztof.kozlowski@linaro.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=neil.armstrong@linaro.org \
--cc=robh+dt@kernel.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