/Zephyr-latest/drivers/usb_c/tcpc/ |
D | Kconfig | 1 # USBC TCPC configuration options 7 bool "USB-C TCPC drivers" 9 Enable USB TypeC Port Controller (TCPC) drivers 14 int "USB-C TCPC driver init priority" 23 bool "Shell commands for TCPC subsystem" 25 Enable support for TCPC shell commands that helps with USB-C diagnostics. 28 source "drivers/usb_c/tcpc/Kconfig.tcpc_stm32" 29 source "drivers/usb_c/tcpc/Kconfig.tcpc_numaker" 30 source "drivers/usb_c/tcpc/Kconfig.tcpc_tcpci" 31 source "drivers/usb_c/tcpc/Kconfig.tcpc_ps8xxx"
|
D | Kconfig.tcpc_ps8xxx | 1 # USB-C PS8xxx TCPC configuration options 7 bool "USB-C TCPC device controller driver" 12 Enable USB-C TCPC support for the Parade PS8xxx chip family 20 Delay between each try of the TCPC initialization
|
D | shell.c | 11 /** Macro used to call the dump_std_reg function from the TCPC device pointer */ 15 #define TCPC_DUMP_CONN_NODE(node) TCPC_DUMP_DEV(DEVICE_DT_GET(DT_PROP(node, tcpc))) 28 /** Macro used to call the get_chip function from the TCPC device pointer */ 40 #define TCPC_GET_CHIP_CONN_NODE(node) TCPC_GET_CHIP_DEV(DEVICE_DT_GET(DT_PROP(node, tcpc))) 144 "Dump TCPC registers\n" 145 "Usage: tcpc dump [<tcpc device>]", 149 "Usage: tcpc vbus [<vbus device>]", 153 "Usage: tcpc chip [<tcpc device>]", 157 SHELL_CMD_REGISTER(tcpc, &sub_tcpc_cmds, "TCPC (USB-C PD) diagnostics", NULL);
|
D | Kconfig.tcpc_numaker | 1 # Nuvoton NuMaker USB-C TCPC device configuration options 7 bool "Nuvoton NuMaker USB-C TCPC device controller driver" 14 Enable USB-C TCPC support for Nuvoton NuMaker chip with UTCPD.
|
D | Kconfig.tcpc_stm32 | 1 # USB-C STM32 TCPC device configuration options 7 bool "USB-C TCPC device controller driver" 13 Enable USB-C TCPC support on the STM32 G0, G4, L5, and U5 family of
|
D | ucpd_numaker.h | 13 /* TCPC exported for PPC */ 26 /* TCPC exported for VBUS */
|
/Zephyr-latest/doc/hardware/peripherals/ |
D | tcpc.rst | 3 USB Type-C Port Controller (TCPC) 9 `TCPC <tcpc-specification_>`_ (USB Type-C Port Controller) 10 The TCPC is a device used to simplify the implementation of a USB-C system 14 The TCPC may provide a Source device, the mechanism to control VBUS sourcing, 19 The TCPC implements logic for controlling the CC pin pull-up and pull-down 24 The TCPC sends and receives messages constructed in the TCPM and places them 29 TCPC API 32 The TCPC device driver functions as the liaison between the TCPC device and the 34 device driver that's used to communicate with and control the TCPC device.
|
/Zephyr-latest/subsys/usb/usb_c/ |
D | usbc_tc_common.c | 40 const struct device *tcpc = data->tcpc; in tc_run() local 82 if (tcpc_get_cc(tcpc, &tc->cc1, &tc->cc2) != 0) { in tc_run() 83 /* If this function fails, it may mean that the TCPC is in sleep mode or in tc_run() 84 * the communication with TCPC has failed, so we can assume that the CC in tc_run() 127 const struct device *tcpc = data->tcpc; in tc_init() local 141 /* Initialize the TCPC */ in tc_init() 142 ret = tcpc_init(tcpc); in tc_init() 144 LOG_ERR("TCPC initialization failed: %d", ret); in tc_init() 149 /* Stop sourcing VBUS by policy callback and/or TCPC */ in tc_init() 150 ret = usbc_policy_src_en(dev, tcpc, false); in tc_init() [all …]
|
D | usbc_tc_src_states.c | 76 const struct device *tcpc = data->tcpc; in tc_unattached_wait_src_entry() local 81 tcpc_vconn_discharge(tcpc, true); in tc_unattached_wait_src_entry() 103 const struct device *tcpc = data->tcpc; in tc_unattached_wait_src_exit() local 106 tcpc_vconn_discharge(tcpc, false); in tc_unattached_wait_src_exit() 225 const struct device *tcpc = data->tcpc; in tc_attached_src_entry() local 231 tcpc_set_roles(tcpc, TC_ROLE_SOURCE, TC_ROLE_DFP); in tc_attached_src_entry() 234 ret = tcpc_set_cc_polarity(tcpc, tc->cc_polarity); in tc_attached_src_entry() 242 if (usbc_policy_src_en(dev, tcpc, true) == 0) { in tc_attached_src_entry() 245 if (tcpc_set_vconn(tcpc, true) == 0) { in tc_attached_src_entry() 304 const struct device *tcpc = data->tcpc; in tc_attached_src_exit() local [all …]
|
D | usbc_stack.c | 81 .tcpc = DEVICE_DT_GET(DT_INST_PROP(inst, tcpc)), \ 320 const struct device *tcpc = data->tcpc; in usbc_set_vconn_control_cb() local 322 tcpc_set_vconn_cb(tcpc, cb); in usbc_set_vconn_control_cb() 333 const struct device *tcpc = data->tcpc; in usbc_set_vconn_discharge() local 335 tcpc_set_vconn_discharge_cb(tcpc, cb); in usbc_set_vconn_discharge() 378 const struct device *tcpc = data->tcpc; in usbc_subsys_init() local 380 /* Make sure TCPC is ready */ in usbc_subsys_init() 381 if (!device_is_ready(tcpc)) { in usbc_subsys_init() 382 LOG_ERR("TCPC NOT READY"); in usbc_subsys_init()
|
D | usbc_stack.h | 101 const struct device *tcpc; member 221 * @brief Function that enables the source path either using callback or by the TCPC. 222 * If source and sink paths are controlled by the TCPC, this callback doesn't have to be set. 225 * @param tcpc Type-C Port Controller device 227 * @return int 0 if success, -ENOSYS if both callback and TCPC function are not implemented. 230 static inline int usbc_policy_src_en(const struct device *dev, const struct device *tcpc, bool en) in usbc_policy_src_en() argument 243 ret_tcpc = tcpc_set_src_ctrl(tcpc, en); in usbc_policy_src_en()
|
D | usbc_prl.c | 47 * cleared when the message is sent to the TCPC layer. 312 tcpc_set_rx_enable(data->tcpc, false); in prl_run() 363 * @brief Alert Handler called by the TCPC driver 365 static void alert_handler(const struct device *tcpc, void *port_dev, enum tcpc_alert alert) in alert_handler() argument 475 const struct device *tcpc = data->tcpc; in prl_tx_construct_message() local 498 tcpc_transmit_data(tcpc, &prl_tx->emsg); in prl_tx_construct_message() 508 const struct device *tcpc = data->tcpc; in prl_hr_send_msg_to_phy() local 522 tcpc_transmit_data(tcpc, &prl_tx->emsg); in prl_hr_send_msg_to_phy() 542 * Set TCPC alert handler so we are notified when messages in prl_init() 545 tcpc_set_alert_handler_cb(data->tcpc, alert_handler, (void *)dev); in prl_init() [all …]
|
/Zephyr-latest/dts/bindings/tcpc/ |
D | parade,ps8xxx.yaml | 5 Parade PS8xxx series TCPC chip 18 Alert pin from the TCPC triggering interrupt 24 Maximum number of packet retransmissions done by TCPC. Valid values are <0, 3>.
|
/Zephyr-latest/drivers/usb_c/vbus/ |
D | usbc_vbus_numaker.c | 22 #include "../tcpc/ucpd_numaker.h" 24 /* Implementation notes on NuMaker TCPC/PPC/VBUS 26 * PPC and VBUS rely on TCPC/UTCPD and are just pseudo. They are completely 27 * implemented in TCPC/UTCPD. 41 * @retval -ENODEV if dependent TCPC device is not ready 48 /* Rely on TCPC */ in numaker_vbus_init() 50 LOG_ERR("TCPC device not ready"); in numaker_vbus_init()
|
/Zephyr-latest/dts/bindings/gpio/ |
D | richtek,rt1718s.yaml | 5 Richtek RT1718S TCPC chip 7 The Richtek RT1718S chip is TCPC, but also has 3 pins, which can be used as 9 address. Feature-specific(GPIO, TCPC) properties should be placed in a child
|
D | richtek,rt1718s-gpio-port.yaml | 5 Richtek RT1718S TCPC chip GPIO port 7 "richtek,rt1718s-gpio-port" node handles GPIO feature of the RT1718S TCPC
|
/Zephyr-latest/include/zephyr/usb_c/ |
D | tcpci.h | 14 * registry values. They may be used by all TCPC drivers compliant to the TCPCI specification. 25 /** Register address - version of TCPC */ 178 /** Register address - TCPC control */ 253 * If set, the TCPC will deliver at least the power indicated in the vconn power supported in 263 /** Bit for active looking for a connection by TCPC, both DRP and sink/source only */ 299 /** Bit for sinking vbus. If set, the TCPC is sinking vbus to the system load. */ 323 /** Bit for vbus at vSafe0V. Set when the TCPC detects that VBUS is below 0.8V. */ 362 * Send FRS if TCPC is source with FRS enabled in power control register 365 /** Value for reset transmit buffer - TCPC resets the pointer of transmit buffer to offset 1 */ 379 /** Bit for vbus over current reporting - if set, vbus over current is reported by TCPC */ [all …]
|
/Zephyr-latest/dts/bindings/mfd/ |
D | nuvoton,nct38xx.yaml | 7 The NCT38xx provides a TCPC and an I/O Expander capabilities. 9 The TCPC and I/O expander drivers are added to the devicetree
|
/Zephyr-latest/include/zephyr/drivers/usb_c/ |
D | usbc_tcpc.h | 39 * @brief TCPC Alert bits 65 /** TCPC RX buffer has overflowed */ 67 /** The TCPC in Attached.SNK state has detected a sink disconnect */ 83 * @brief TCPC Status register 101 * @brief TCPC Chip Information 226 * @brief Initializes the TCPC 327 * @brief Sets a callback that can enable or disable VCONN if the TCPC is 329 * the VCONN control capabilities of the TCPC 346 * @brief Sets a callback that can enable or discharge VCONN if the TCPC is 348 * the VCONN control capabilities of the TCPC [all …]
|
/Zephyr-latest/drivers/gpio/ |
D | Kconfig.rt1718s | 7 bool "RT1718S I2C-based TCPC chip with GPIOs" 11 Enable driver GPIO for RT1718S I2C-based TCPC chip.
|
/Zephyr-latest/drivers/usb_c/ppc/ |
D | usbc_ppc_numaker.c | 22 #include "../tcpc/ucpd_numaker.h" 24 /* Implementation notes on NuMaker TCPC/PPC/VBUS 26 * PPC and VBUS rely on TCPC/UTCPD and are just pseudo. They are completely 27 * implemented in TCPC/UTCPD. 41 * @retval -ENODEV if dependent TCPC device is not ready 48 /* Rely on TCPC */ in numaker_ppc_init() 50 LOG_ERR("TCPC device not ready"); in numaker_ppc_init()
|
/Zephyr-latest/drivers/usb_c/ |
D | CMakeLists.txt | 3 add_subdirectory_ifdef(CONFIG_USBC_TCPC_DRIVER tcpc)
|
/Zephyr-latest/samples/subsys/usb_c/source/ |
D | sample.yaml | 5 depends_on: tcpc
|
/Zephyr-latest/samples/subsys/usb_c/sink/ |
D | sample.yaml | 5 depends_on: tcpc
|
/Zephyr-latest/boards/st/stm32g071b_disco/ |
D | stm32g071b_disco.yaml | 16 - tcpc
|