1# Copyright (c) 2024 Nuvoton Technology Corporation 2# SPDX-License-Identifier: Apache-2.0 3 4description: Nuvoton NuMaker USB Type-C port controller 5 6compatible: "nuvoton,numaker-tcpc" 7 8include: [base.yaml, reset-device.yaml, pinctrl-device.yaml] 9 10properties: 11 reg: 12 required: true 13 14 interrupts: 15 required: true 16 17 resets: 18 required: true 19 20 clocks: 21 required: true 22 23 vconn-overcurrent-event-polarity: 24 type: string 25 description: | 26 Polarity of VCONN overcurrent event 27 enum: 28 - "low-active" 29 - "high-active" 30 31 vconn-discharge-polarity: 32 type: string 33 description: | 34 Polarity of VCONN discharge 35 enum: 36 - "low-active" 37 - "high-active" 38 39 vconn-enable-polarity: 40 type: string 41 description: | 42 Polarity of VCONN enable 43 enum: 44 - "low-active" 45 - "high-active" 46 47 vbus-overcurrent-event-polarity: 48 type: string 49 description: | 50 Polarity of VBUS overcurrent event 51 enum: 52 - "low-active" 53 - "high-active" 54 55 vbus-forceoff-event-polarity: 56 type: string 57 description: | 58 Polarity of VBUS force-off event 59 enum: 60 - "low-active" 61 - "high-active" 62 63 frs-tx-polarity: 64 type: string 65 description: | 66 Polarity of fast role swap tx 67 enum: 68 - "low-active" 69 - "high-active" 70 71 vbus-discharge-enable-polarity: 72 type: string 73 description: | 74 Polarity of VBUS discharge enable 75 enum: 76 - "low-active" 77 - "high-active" 78 79 vbus-sink-enable-polarity: 80 type: string 81 description: | 82 Polarity of VBUS sink enable 83 enum: 84 - "low-active" 85 - "high-active" 86 87 vbus-source-enable-polarity: 88 type: string 89 description: | 90 Polarity of VBUS source enable 91 enum: 92 - "low-active" 93 - "high-active" 94 95 vbus-divide: 96 type: string 97 required: true 98 description: | 99 VBUS measurement divider: 100 "divide-20": External VBUS voltage divider circuit should be 1/20 101 for EPR application. The divided voltage compares with 102 200mV to set or clean VBUS Present bit. 103 "divide-10": External VBUS voltage divider circuit should be 1/10 104 for SPR application. The divided voltage compares with 105 400mV to set or clean VBUS Present bit. 106 enum: 107 - "divide-20" 108 - "divide-10" 109 110 dead-battery: 111 type: boolean 112 description: | 113 Determine if USB-C Dead Battery pull-down resistor should be 114 applied to the CC lines. 115 116 pinctrl-0: 117 required: true 118 119 pinctrl-names: 120 required: true 121 122 gpios: 123 type: phandle-array 124 required: true 125 126 gpio-names: 127 type: string-array 128 required: true 129 description: | 130 Valid names of GPIO: 131 "vbus-detect": GPIO for VBUS detect (must) 132 "vbus-discharge": GPIO for VBUS discharge (option) 133 "vconn-discharge": GPIO for VCONN discharge (option) 134 135 io-channels: 136 type: phandle-array 137 description: | 138 EADC channels for measuring VBUS/VCONN voltage 139 140 io-channel-names: 141 type: string-array 142 description: | 143 Valid names of EADC channels: 144 "chn-vbus": EADC channel for measuring VBUS voltage (option) 145 "chn-vconn": EADC channel for measuring VCONN voltage (option) 146 147 adc-measure-timer-trigger-rate: 148 type: int 149 description: | 150 Rate of timer-triggered EADC measurement (Hz). 151 This is ignored when none of above is specified. 152 The default is chosen by following BSP sample, 153 and is to update UTCPD in a proper rate. 154 default: 100 155