summaryrefslogtreecommitdiff
path: root/common/mock/usb_pd_mock.c
diff options
context:
space:
mode:
Diffstat (limited to 'common/mock/usb_pd_mock.c')
-rw-r--r--common/mock/usb_pd_mock.c80
1 files changed, 80 insertions, 0 deletions
diff --git a/common/mock/usb_pd_mock.c b/common/mock/usb_pd_mock.c
new file mode 100644
index 0000000000..2223e9153d
--- /dev/null
+++ b/common/mock/usb_pd_mock.c
@@ -0,0 +1,80 @@
+/* Copyright 2020 The Chromium OS Authors. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+/* Mock USB Type-C PD */
+
+#include "common.h"
+#include "console.h"
+#include "usb_pd.h"
+#include "mock/usb_pd_mock.h"
+#include "memory.h"
+
+struct mock_pd_port_t mock_pd_port[CONFIG_USB_PD_PORT_MAX_COUNT];
+
+enum pd_dual_role_states pd_get_dual_role(int port)
+{
+ return PD_DRP_TOGGLE_ON;
+}
+
+enum pd_data_role pd_get_data_role(int port)
+{
+ return mock_pd_port[port].data_role;
+}
+__overridable void tc_set_data_role(int port, enum pd_data_role role)
+{
+ mock_pd_port[port].data_role = role;
+}
+
+enum pd_power_role pd_get_power_role(int port)
+{
+ return mock_pd_port[port].power_role;
+}
+__overridable void tc_set_power_role(int port, enum pd_power_role role)
+{
+ mock_pd_port[port].power_role = role;
+}
+
+enum pd_cc_states pd_get_task_cc_state(int port)
+{
+ return PD_CC_NONE;
+}
+
+/* TODO remove when usbc_fake is cleaned up */
+#if !defined(CONFIG_USB_DRP_ACC_TRYSRC) && \
+ !defined(CONFIG_USB_CTVPD)
+int pd_is_connected(int port)
+{
+ return 1;
+}
+
+bool pd_is_disconnected(int port)
+{
+ return false;
+}
+#endif /* !CONFIG_USB_DRP_ACC_TRYSRC && !CONFIG_USB_CTVPD */
+
+const uint32_t * const pd_get_src_caps(int port)
+{
+ return NULL;
+}
+
+uint8_t pd_get_src_cap_cnt(int port)
+{
+ return 0;
+}
+
+void pd_set_src_caps(int port, int cnt, uint32_t *src_caps)
+{
+}
+
+bool pd_get_partner_usb_comm_capable(int port)
+{
+ return true;
+}
+
+inline uint8_t board_get_usb_pd_port_count(void)
+{
+ return CONFIG_USB_PD_PORT_MAX_COUNT;
+}