summaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
authorJett Rink <jettrink@chromium.org>2019-10-17 07:52:12 -0600
committerCommit Bot <commit-bot@chromium.org>2019-10-24 00:44:34 +0000
commit5f683e3de7f605302ec8af791044cff23b0920ee (patch)
tree13a8448ab03f8ccf31bff8519ecd2dc377854391 /common
parentcb2fa8b437cb14e652f0e6374d3caf8e568a04ac (diff)
downloadchrome-ec-5f683e3de7f605302ec8af791044cff23b0920ee.tar.gz
cleanup: use power and data role enums instead of int
Use first class enums types instead of int for power and data role. BRANCH=none BUG=none TEST=builds and new stack works with single charger on C1 hatch Change-Id: Ied4562e6a148803140cf277bd229b6c3ed801470 Signed-off-by: Jett Rink <jettrink@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1865985 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Edward Hill <ecgh@chromium.org>
Diffstat (limited to 'common')
-rw-r--r--common/usbc/usb_tc_ctvpd_sm.c10
-rw-r--r--common/usbc/usb_tc_drp_acc_trysrc_sm.c20
-rw-r--r--common/usbc/usb_tc_vpd_sm.c10
3 files changed, 22 insertions, 18 deletions
diff --git a/common/usbc/usb_tc_ctvpd_sm.c b/common/usbc/usb_tc_ctvpd_sm.c
index 7d299e686f..de4bcedf66 100644
--- a/common/usbc/usb_tc_ctvpd_sm.c
+++ b/common/usbc/usb_tc_ctvpd_sm.c
@@ -40,9 +40,9 @@ static struct type_c {
/* state machine context */
struct sm_ctx ctx;
/* current port power role (VPD, SOURCE or SINK) */
- uint8_t power_role;
+ enum pd_power_role power_role;
/* current port data role (DFP or UFP) */
- uint8_t data_role;
+ enum pd_data_role data_role;
/* Higher-level power deliver state machines are enabled if true. */
uint8_t pd_enable;
/* port flags, see TC_FLAGS_* */
@@ -141,12 +141,12 @@ static void set_state_tc(const int port, enum usb_tc_state new_state);
/* Public TypeC functions */
-int tc_get_power_role(int port)
+enum pd_power_role tc_get_power_role(int port)
{
return tc[port].power_role;
}
-int tc_get_data_role(int port)
+enum pd_data_role tc_get_data_role(int port)
{
return tc[port].data_role;
}
@@ -162,7 +162,7 @@ uint8_t tc_get_pd_enabled(int port)
return tc[port].pd_enable;
}
-void tc_set_power_role(int port, int role)
+void tc_set_power_role(int port, enum pd_power_role role)
{
tc[port].power_role = role;
}
diff --git a/common/usbc/usb_tc_drp_acc_trysrc_sm.c b/common/usbc/usb_tc_drp_acc_trysrc_sm.c
index 693a489a0f..569579535d 100644
--- a/common/usbc/usb_tc_drp_acc_trysrc_sm.c
+++ b/common/usbc/usb_tc_drp_acc_trysrc_sm.c
@@ -122,9 +122,9 @@ static struct type_c {
/* state machine context */
struct sm_ctx ctx;
/* current port power role (SOURCE or SINK) */
- uint8_t power_role;
+ enum pd_power_role power_role;
/* current port data role (DFP or UFP) */
- uint8_t data_role;
+ enum pd_data_role data_role;
/* Higher-level power deliver state machines are enabled if true. */
uint8_t pd_enable;
#ifdef CONFIG_USB_PE_SM
@@ -668,12 +668,12 @@ void tc_state_init(int port)
restart_tc_sm(port, TC_UNATTACHED_SNK);
}
-int tc_get_power_role(int port)
+enum pd_power_role tc_get_power_role(int port)
{
return tc[port].power_role;
}
-int tc_get_data_role(int port)
+enum pd_data_role tc_get_data_role(int port)
{
return tc[port].data_role;
}
@@ -688,7 +688,7 @@ uint8_t tc_get_pd_enabled(int port)
return tc[port].pd_enable;
}
-void tc_set_power_role(int port, int role)
+void tc_set_power_role(int port, enum pd_power_role role)
{
tc[port].power_role = role;
}
@@ -782,7 +782,7 @@ void tc_event_check(int port, int evt)
* DTS USB-C @ 3 A Rp3A0 RpUSB
*/
-void tc_set_data_role(int port, int role)
+void tc_set_data_role(int port, enum pd_data_role role)
{
tc[port].data_role = role;
@@ -1871,7 +1871,9 @@ static void tc_attached_snk_run(const int port)
TC_CLR_FLAG(port, TC_FLAGS_REQUEST_DR_SWAP);
/* Perform Data Role Swap */
- tc_set_data_role(port, !tc[port].data_role);
+ tc_set_data_role(port,
+ tc[port].data_role == PD_ROLE_UFP ?
+ PD_ROLE_DFP : PD_ROLE_UFP);
}
#ifdef CONFIG_USBC_VCONN
@@ -2302,7 +2304,9 @@ static void tc_attached_src_run(const int port)
TC_CLR_FLAG(port, TC_FLAGS_REQUEST_DR_SWAP);
/* Perform Data Role Swap */
- tc_set_data_role(port, !tc[port].data_role);
+ tc_set_data_role(port,
+ tc[port].data_role == PD_ROLE_DFP ?
+ PD_ROLE_UFP : PD_ROLE_DFP);
}
if (IS_ENABLED(CONFIG_USBC_VCONN)) {
diff --git a/common/usbc/usb_tc_vpd_sm.c b/common/usbc/usb_tc_vpd_sm.c
index 92ce580c53..cb30093be3 100644
--- a/common/usbc/usb_tc_vpd_sm.c
+++ b/common/usbc/usb_tc_vpd_sm.c
@@ -34,9 +34,9 @@ static struct type_c {
/* state machine context */
struct sm_ctx ctx;
/* current port power role (VPD, SOURCE or SINK) */
- uint8_t power_role;
+ enum pd_power_role power_role;
/* current port data role (DFP or UFP) */
- uint8_t data_role;
+ enum pd_data_role data_role;
/* Higher-level power deliver state machines are enabled if true. */
uint8_t pd_enable;
/* port flags, see TC_FLAGS_* */
@@ -99,12 +99,12 @@ void tc_state_init(int port)
}
-int tc_get_power_role(int port)
+enum pd_power_role tc_get_power_role(int port)
{
return tc[port].power_role;
}
-int tc_get_data_role(int port)
+enum pd_data_role tc_get_data_role(int port)
{
return tc[port].data_role;
}
@@ -120,7 +120,7 @@ uint8_t tc_get_pd_enabled(int port)
return tc[port].pd_enable;
}
-void tc_set_power_role(int port, int role)
+void tc_set_power_role(int port, enum pd_power_role role)
{
tc[port].power_role = role;
}