1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2# Copyright 2023 Realtek Semiconductor Corporation
3%YAML 1.2
4---
5$id: http://devicetree.org/schemas/usb/realtek,rtd-type-c.yaml#
6$schema: http://devicetree.org/meta-schemas/core.yaml#
7
8title: Realtek DHC RTD SoCs USB Type-C Connector detection
9
10maintainers:
11  - Stanley Chang <stanley_chang@realtek.com>
12
13description:
14  Realtek digital home center (DHC) RTD series SoCs include a type c module.
15  This module is able to detect the state of type c connector.
16
17properties:
18  compatible:
19    enum:
20      - realtek,rtd1295-type-c
21      - realtek,rtd1312c-type-c
22      - realtek,rtd1315e-type-c
23      - realtek,rtd1319-type-c
24      - realtek,rtd1319d-type-c
25      - realtek,rtd1395-type-c
26      - realtek,rtd1619-type-c
27      - realtek,rtd1619b-type-c
28
29  reg:
30    maxItems: 1
31
32  interrupts:
33    maxItems: 1
34
35  nvmem-cell-names:
36    items:
37      - const: usb-cal
38
39  nvmem-cells:
40    maxItems: 1
41    description:
42      The phandle to nvmem cell that contains the trimming data.
43      The type c parameter trimming data specified via efuse.
44      If unspecified, default value is used.
45
46  realtek,rd-ctrl-gpios:
47    description: The gpio node to control external Rd on board.
48    maxItems: 1
49
50  connector:
51    $ref: /schemas/connector/usb-connector.yaml#
52    description: Properties for usb c connector.
53    type: object
54
55required:
56  - compatible
57  - reg
58  - interrupts
59
60additionalProperties: false
61
62examples:
63  - |
64    #include <dt-bindings/interrupt-controller/irq.h>
65
66    type-c@7220 {
67        compatible = "realtek,rtd1619b-type-c";
68        reg = <0x7220 0x20>;
69        interrupts = <0 60 IRQ_TYPE_LEVEL_HIGH>;
70
71        pinctrl-names = "default";
72        pinctrl-0 = <&usb_cc1_pins>, <&usb_cc2_pins>;
73        nvmem-cells = <&otp_usb_cal>;
74        nvmem-cell-names = "usb-cal";
75
76        connector {
77            compatible = "usb-c-connector";
78            label = "USB-C";
79            data-role = "dual";
80            power-role = "dual";
81        };
82    };
83