usb-switch.yaml 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/usb/usb-switch.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: USB Orientation and Mode Switches Common Properties
  7. maintainers:
  8. - Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  9. description:
  10. Common properties for devices handling USB mode and orientation switching.
  11. properties:
  12. mode-switch:
  13. description: Possible handler of altmode switching
  14. type: boolean
  15. orientation-switch:
  16. description: Possible handler of orientation switching
  17. type: boolean
  18. retimer-switch:
  19. description: Possible handler of SuperSpeed signals retiming
  20. type: boolean
  21. port:
  22. $ref: /schemas/graph.yaml#/properties/port
  23. description:
  24. A port node to link the device to a TypeC controller for the purpose of
  25. handling altmode muxing and orientation switching.
  26. ports:
  27. $ref: /schemas/graph.yaml#/properties/ports
  28. properties:
  29. port@0:
  30. $ref: /schemas/graph.yaml#/properties/port
  31. description:
  32. Super Speed (SS) Output endpoint to the Type-C connector
  33. port@1:
  34. $ref: /schemas/graph.yaml#/$defs/port-base
  35. description:
  36. Super Speed (SS) Input endpoint from the Super-Speed PHY
  37. unevaluatedProperties: false
  38. properties:
  39. endpoint:
  40. $ref: /schemas/graph.yaml#/$defs/endpoint-base
  41. unevaluatedProperties: false
  42. properties:
  43. data-lanes:
  44. $ref: /schemas/types.yaml#/definitions/uint32-array
  45. minItems: 1
  46. maxItems: 8
  47. uniqueItems: true
  48. items:
  49. maximum: 8
  50. oneOf:
  51. - required:
  52. - port
  53. - required:
  54. - ports
  55. additionalProperties: true