Zephyr Project API 3.7.0
A Scalable Open Source RTOS
|
USB-C Device APIs. More...
#include <zephyr/types.h>
#include <zephyr/device.h>
#include <zephyr/drivers/usb_c/usbc_tcpc.h>
#include <zephyr/drivers/usb_c/usbc_vbus.h>
Go to the source code of this file.
Macros | |
#define | FIXED_5V_100MA_RDO 0x1100280a |
This Request Data Object (RDO) value can be returned from the policy_cb_get_rdo if 5V@100mA with the following options are sufficient for the Sink to operate. | |
Typedefs | |
typedef int(* | policy_cb_get_snk_cap_t) (const struct device *dev, uint32_t **pdos, int *num_pdos) |
Callback type used to get the Sink Capabilities. | |
typedef void(* | policy_cb_set_src_cap_t) (const struct device *dev, const uint32_t *pdos, const int num_pdos) |
Callback type used to report the received Port Partner's Source Capabilities. | |
typedef bool(* | policy_cb_check_t) (const struct device *dev, const enum usbc_policy_check_t policy_check) |
Callback type used to check a policy. | |
typedef bool(* | policy_cb_wait_notify_t) (const struct device *dev, const enum usbc_policy_wait_t wait_notify) |
Callback type used to notify Device Policy Manager of WAIT message reception. | |
typedef void(* | policy_cb_notify_t) (const struct device *dev, const enum usbc_policy_notify_t policy_notify) |
Callback type used to notify Device Policy Manager of a policy change. | |
typedef uint32_t(* | policy_cb_get_rdo_t) (const struct device *dev) |
Callback type used to get the Request Data Object (RDO) | |
typedef bool(* | policy_cb_is_snk_at_default_t) (const struct device *dev) |
Callback type used to check if the sink power supply is at the default level. | |
typedef int(* | policy_cb_get_src_caps_t) (const struct device *dev, const uint32_t **pdos, uint32_t *num_pdos) |
Callback type used to get the Source Capabilities from the Device Policy Manager. | |
typedef enum usbc_snk_req_reply_t(* | policy_cb_check_sink_request_t) (const struct device *dev, const uint32_t request_msg) |
Callback type used to check if Sink request is valid. | |
typedef bool(* | policy_cb_is_ps_ready_t) (const struct device *dev) |
Callback type used to check if Source Power Supply is ready. | |
typedef bool(* | policy_cb_present_contract_is_valid_t) (const struct device *dev, const uint32_t present_contract) |
Callback type used to check if present Contract is still valid. | |
typedef bool(* | policy_cb_change_src_caps_t) (const struct device *dev) |
Callback type used to request that a different set of Source Caps be sent to the Sink. | |
typedef void(* | policy_cb_set_port_partner_snk_cap_t) (const struct device *dev, const uint32_t *pdos, const int num_pdos) |
Callback type used to report the Capabilities received from a Sink Port Partner. | |
typedef int(* | policy_cb_get_src_rp_t) (const struct device *dev, enum tc_rp_value *rp) |
Callback type used to get the Rp value that should be placed on the CC lines. | |
typedef int(* | policy_cb_src_en_t) (const struct device *dev, bool en) |
Callback type used to enable VBUS. | |
Functions | |
int | usbc_start (const struct device *dev) |
Start the USB-C Subsystem. | |
int | usbc_suspend (const struct device *dev) |
Suspend the USB-C Subsystem. | |
int | usbc_request (const struct device *dev, const enum usbc_policy_request_t req) |
Make a request of the USB-C Subsystem. | |
void | usbc_bypass_next_sleep (const struct device *dev) |
void | usbc_set_dpm_data (const struct device *dev, void *dpm_data) |
Set pointer to Device Policy Manager (DPM) data. | |
void * | usbc_get_dpm_data (const struct device *dev) |
Get pointer to Device Policy Manager (DPM) data. | |
void | usbc_set_vconn_control_cb (const struct device *dev, const tcpc_vconn_control_cb_t cb) |
Set the callback used to set VCONN control. | |
void | usbc_set_vconn_discharge_cb (const struct device *dev, const tcpc_vconn_discharge_cb_t cb) |
Set the callback used to discharge VCONN. | |
void | usbc_set_policy_cb_check (const struct device *dev, const policy_cb_check_t cb) |
Set the callback used to check a policy. | |
void | usbc_set_policy_cb_notify (const struct device *dev, const policy_cb_notify_t cb) |
Set the callback used to notify Device Policy Manager of a policy change. | |
void | usbc_set_policy_cb_wait_notify (const struct device *dev, const policy_cb_wait_notify_t cb) |
Set the callback used to notify Device Policy Manager of WAIT message reception. | |
void | usbc_set_policy_cb_get_snk_cap (const struct device *dev, const policy_cb_get_snk_cap_t cb) |
Set the callback used to get the Sink Capabilities. | |
void | usbc_set_policy_cb_set_src_cap (const struct device *dev, const policy_cb_set_src_cap_t cb) |
Set the callback used to store the received Port Partner's Source Capabilities. | |
void | usbc_set_policy_cb_get_rdo (const struct device *dev, const policy_cb_get_rdo_t cb) |
Set the callback used to get the Request Data Object (RDO) | |
void | usbc_set_policy_cb_is_snk_at_default (const struct device *dev, const policy_cb_is_snk_at_default_t cb) |
Set the callback used to check if the sink power supply is at the default level. | |
void | usbc_set_policy_cb_get_src_rp (const struct device *dev, const policy_cb_get_src_rp_t cb) |
Set the callback used to get the Rp value that should be placed on the CC lines. | |
void | usbc_set_policy_cb_src_en (const struct device *dev, const policy_cb_src_en_t cb) |
Set the callback used to enable VBUS. | |
void | usbc_set_policy_cb_get_src_caps (const struct device *dev, const policy_cb_get_src_caps_t cb) |
Set the callback used to get the Source Capabilities from the Device Policy Manager. | |
void | usbc_set_policy_cb_check_sink_request (const struct device *dev, const policy_cb_check_sink_request_t cb) |
Set the callback used to check if Sink request is valid. | |
void | usbc_set_policy_cb_is_ps_ready (const struct device *dev, const policy_cb_is_ps_ready_t cb) |
Set the callback used to check if Source Power Supply is ready. | |
void | usbc_set_policy_cb_present_contract_is_valid (const struct device *dev, const policy_cb_present_contract_is_valid_t cb) |
Set the callback to check if present Contract is still valid. | |
void | usbc_set_policy_cb_change_src_caps (const struct device *dev, const policy_cb_change_src_caps_t cb) |
Set the callback used to request that a different set of Source Caps be sent to the Sink. | |
void | usbc_set_policy_cb_set_port_partner_snk_cap (const struct device *dev, const policy_cb_set_port_partner_snk_cap_t cb) |
Set the callback used to store the Capabilities received from a Sink Port Partner. | |
USB-C Device APIs.
This file contains the USB-C Device APIs.