Messages in this thread | | | Subject | Re: [RESEND PATCH v3 1/4] dt-bindings: connector: add power-opmode optional property to usb-connector | From | Amelie DELAUNAY <> | Date | Fri, 30 Oct 2020 16:27:14 +0100 |
| |
On 10/30/20 3:29 PM, Rob Herring wrote: > On Thu, Oct 29, 2020 at 11:49 AM Amelie DELAUNAY <amelie.delaunay@st.com> wrote: >> >> >> >> On 10/29/20 4:40 PM, Rob Herring wrote: >>> On Thu, Oct 29, 2020 at 10:58:03AM +0100, Amelie Delaunay wrote: >>>> Power operation mode may depends on hardware design, so, add the optional >>>> property power-opmode for usb-c connector to select the power operation >>>> mode capability. >>>> >>>> Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com> >>>> --- >>>> .../bindings/connector/usb-connector.yaml | 18 ++++++++++++++++++ >>>> 1 file changed, 18 insertions(+) >>>> >>>> diff --git a/Documentation/devicetree/bindings/connector/usb-connector.yaml b/Documentation/devicetree/bindings/connector/usb-connector.yaml >>>> index 728f82db073d..200d19c60fd5 100644 >>>> --- a/Documentation/devicetree/bindings/connector/usb-connector.yaml >>>> +++ b/Documentation/devicetree/bindings/connector/usb-connector.yaml >>>> @@ -93,6 +93,24 @@ properties: >>>> - device >>>> - dual >>>> >>>> + power-opmode: >>> >>> I've acked this version: >>> >>> https://lore.kernel.org/r/20201020093627.256885-2-badhri@google.com >>> >> >> frs is used for Fast Role Swap defined in USB PD spec. >> I understand it allows to get the same information but I'm wondering why >> the property name is limited to -frs- in this case. What about a >> non-power delivery USB-C connector ? > > I've got no idea. The folks that know USB-C and PD details need to get > together and work all this out. To me, it looks like the same thing... >
It looks but...
The purpose of power-opmode property is to configure the USB-C controllers, especially the non-PD USB-C controllers to determine the power operation mode that the Type C connector will support and will advertise through CC pins when it has no power delivery support, whatever the power role: Sink, Source or Dual The management of the property is the same that data-role and power-role properties, and done by USB Type-C Connector Class.
new-source-frs-typec-current specifies initial current capability of the new source when vSafe5V is applied during PD3.0 Fast Role Swap. So here, this property is not applied at usb-c controller configuration level, but during PD Fast Role Swap, so when the Sink become the Source. Moreover, the related driver code says FRS can only be supported by DRP ports. So new-source-frs-typec-current property, in addition to being specific to PD, is also dedicated to DRP usb-c controller. The property is managed by Type-C Port Controller Manager for PD.
> And it's not just this, but the stream of USB-C additions that trickle in. > >> Moreover, power-opmode property support is already merged in typec class: >> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/drivers/usb/typec/class.c?h=v5.10-rc1&id=12f3467b0d28369d3add7a0deb65fdac9b503c90 >> and stusb160x driver uses it :( >> >> So, do I need to modify stusb160x driver (and bindings) to take into >> account this USB PD specific property? > > If not documented, then it's not an ABI, so yes.
I have tried to document it since months ago v1: https://lkml.org/lkml/2020/6/15/927 v2: https://lkml.org/lkml/2020/7/23/445 integrating your remarks v2 RESENT: https://lkml.org/lkml/2020/9/2/174 v3: https://lkml.org/lkml/2020/9/24/306 integrated Li Jun remarks
Regards, Amelie
| |