On 22/03/2024 13:28, Dmitry Baryshkov wrote:
Then the actual usage doesn't match the schema. usb-c-connector
clearly defines HS, SS and SBU ports
Its a bit restrictive IMO, data-role and power-role switching is not limited to HS and in fact can be done with a GPIO for example.
/Looks in Documentation/devicetree/bindings/connector/usb-connector.yaml
Yeah I mean this just doesn't cover all use-cases ..
ports:
$ref: /schemas/graph.yaml#/properties/ports
description: OF graph bindings modeling any data bus to the connector
unless the bus is between parent node and the connector. Since a single
connector can have multiple data buses every bus has an assigned OF graph
port number as described below.
properties:
port@0:
$ref: /schemas/graph.yaml#/properties/port
description: High Speed (HS), present in all connectors.
port@1:
$ref: /schemas/graph.yaml#/properties/port
description: Super Speed (SS), present in SS capable connectors.
port@2:
$ref: /schemas/graph.yaml#/properties/port
description: Sideband Use (SBU), present in USB-C. This describes the
alternate mode connection of which SBU is a part.
TBH I think we should drop this HS, SS stuff from the connector definition - there's nothing to say in a h/w definition anywhere HS must be a port or indeed SS - not all hardware knows or cares about different HS/SS signalling.
Documentation bit-rot
---
bod