summaryrefslogtreecommitdiff
path: root/test/usb_pd_console.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/usb_pd_console.c')
-rw-r--r--test/usb_pd_console.c472
1 files changed, 0 insertions, 472 deletions
diff --git a/test/usb_pd_console.c b/test/usb_pd_console.c
deleted file mode 100644
index 800eae7b3d..0000000000
--- a/test/usb_pd_console.c
+++ /dev/null
@@ -1,472 +0,0 @@
-/* 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.
- *
- * Test usb_pd_console
- */
-
-#include "common.h"
-#include "math.h"
-#include "stdio.h"
-#include "stdlib.h"
-#include "string.h"
-#include "usb_pe_sm.h"
-#include "usb_pd.h"
-#include "usb_tc_sm.h"
-#include "util.h"
-#include "test_util.h"
-
-/* Defined in implementation */
-int hex8tou32(char *str, uint32_t *val);
-int command_pd(int argc, char **argv);
-int remote_flashing(int argc, char **argv);
-
-static enum try_src_override_t try_src_override;
-static int test_port;
-static enum pd_dpm_request request;
-static int max_volt;
-static int comm_enable;
-static int dev_info;
-static int vdm_cmd;
-static int vdm_count;
-static int vdm_vid;
-static uint32_t vdm_data[10];
-static enum pd_dual_role_states dr_state;
-
-/* Mock functions */
-void pe_send_vdm(int port, uint32_t vid, int cmd, const uint32_t *data,
- int count)
-{
- int i;
-
- test_port = port;
- vdm_cmd = cmd;
- vdm_count = count;
- vdm_vid = vid;
-
- if (data == NULL)
- for (i = 0; i < 10; i++)
- vdm_data[i] = -1;
- else
- for (i = 0; i < count; i++)
- vdm_data[i] = data[i];
-}
-
-void pd_dpm_request(int port, enum pd_dpm_request req)
-{
- test_port = port;
- request = req;
-}
-
-unsigned int pd_get_max_voltage(void)
-{
- return 10000;
-}
-
-void pd_request_source_voltage(int port, int mv)
-{
- test_port = port;
- max_volt = mv;
-}
-
-void pd_comm_enable(int port, int enable)
-{
- test_port = port;
- comm_enable = enable;
-}
-
-void tc_print_dev_info(int port)
-{
- test_port = port;
- dev_info = 1;
-}
-
-void pd_set_dual_role(int port, enum pd_dual_role_states state)
-{
- test_port = port;
- dr_state = state;
-}
-
-int pd_comm_is_enabled(int port)
-{
- test_port = port;
- return 0;
-}
-
-int pd_get_polarity(int port)
-{
- test_port = port;
- return 0;
-}
-
-uint32_t tc_get_flags(int port)
-{
- test_port = port;
- return 0;
-}
-
-const char *tc_get_current_state(int port)
-{
- test_port = port;
- return 0;
-}
-
-void tc_try_src_override(enum try_src_override_t ov)
-{
- if (IS_ENABLED(CONFIG_USB_PD_TRY_SRC)) {
- switch (ov) {
- case TRY_SRC_OVERRIDE_OFF: /* 0 */
- try_src_override = TRY_SRC_OVERRIDE_OFF;
- break;
- case TRY_SRC_OVERRIDE_ON: /* 1 */
- try_src_override = TRY_SRC_OVERRIDE_ON;
- break;
- default:
- try_src_override = TRY_SRC_NO_OVERRIDE;
- }
- }
-}
-
-enum try_src_override_t tc_get_try_src_override(void)
-{
- return try_src_override;
-}
-
-static int test_hex8tou32(void)
-{
- char const *tst_str[] = {"01234567", "89abcdef",
- "AABBCCDD", "EEFF0011"};
- uint32_t const tst_int[] = {0x01234567, 0x89abcdef,
- 0xaabbccdd, 0xeeff0011};
- uint32_t val;
- int i;
-
- for (i = 0; i < 4; i++) {
- hex8tou32(tst_str[i], &val);
- TEST_ASSERT(val == tst_int[i]);
- }
-
- return EC_SUCCESS;
-}
-
-static int test_command_pd_arg_count(void)
-{
- int argc;
- char const *argv[] = {"pd", "", 0, 0, 0};
-
- for (argc = 0; argc < 3; argc++)
- TEST_ASSERT(command_pd(argc, argv) == EC_ERROR_PARAM_COUNT);
-
- return EC_SUCCESS;
-}
-
-static int test_command_pd_port_num(void)
-{
- int argc = 3;
- char const *argv[10] = {"pd", "5", 0, 0, 0};
-
- TEST_ASSERT(command_pd(argc, argv) == EC_ERROR_PARAM2);
-
- return EC_SUCCESS;
-}
-
-static int test_command_pd_try_src(void)
-{
- int argc = 3;
- char const *argv[] = {"pd", "trysrc", "2", 0, 0};
-
- try_src_override = 0;
- TEST_ASSERT(command_pd(argc, argv) == EC_SUCCESS);
- TEST_ASSERT(try_src_override == TRY_SRC_NO_OVERRIDE);
-
- argv[2] = "1";
- TEST_ASSERT(command_pd(argc, argv) == EC_SUCCESS);
- TEST_ASSERT(try_src_override == TRY_SRC_OVERRIDE_ON);
-
- argv[2] = "0";
- TEST_ASSERT(command_pd(argc, argv) == EC_SUCCESS);
- TEST_ASSERT(try_src_override == TRY_SRC_OVERRIDE_OFF);
-
- return EC_SUCCESS;
-}
-
-static int test_command_pd_tx(void)
-{
- int argc = 3;
- char const *argv[] = {"pd", "0", "tx", 0, 0};
-
- request = 0;
- TEST_ASSERT(command_pd(argc, argv) == EC_SUCCESS);
- TEST_ASSERT(test_port == 0);
- TEST_ASSERT(request == DPM_REQUEST_SNK_STARTUP);
-
- return EC_SUCCESS;
-}
-
-static int test_command_pd_charger(void)
-{
- int argc = 3;
- char const *argv[] = {"pd", "1", "charger", 0, 0};
-
- request = 0;
- TEST_ASSERT(command_pd(argc, argv) == EC_SUCCESS);
- TEST_ASSERT(test_port == 1);
- TEST_ASSERT(request == DPM_REQUEST_SRC_STARTUP);
-
- return EC_SUCCESS;
-}
-
-static int test_command_pd_dev1(void)
-{
- int argc = 4;
- char const *argv[] = {"pd", "0", "dev", "20", 0};
-
- request = 0;
- max_volt = 0;
- TEST_ASSERT(command_pd(argc, argv) == EC_SUCCESS);
- TEST_ASSERT(test_port == 0);
- TEST_ASSERT(request == DPM_REQUEST_NEW_POWER_LEVEL);
- TEST_ASSERT(max_volt == 20000);
-
- return EC_SUCCESS;
-}
-
-static int test_command_pd_dev2(void)
-{
- int argc = 3;
- char const *argv[] = {"pd", "1", "dev", 0, 0};
-
- request = 0;
- TEST_ASSERT(command_pd(argc, argv) == EC_SUCCESS);
- TEST_ASSERT(test_port == 1);
- TEST_ASSERT(request == DPM_REQUEST_NEW_POWER_LEVEL);
- TEST_ASSERT(max_volt == 10000);
-
- return EC_SUCCESS;
-}
-
-static int test_command_pd_disable(void)
-{
- int argc = 3;
- char const *argv[] = {"pd", "0", "disable", 0, 0};
-
- comm_enable = 1;
- TEST_ASSERT(command_pd(argc, argv) == EC_SUCCESS);
- TEST_ASSERT(test_port == 0);
- TEST_ASSERT(comm_enable == 0);
-
- return EC_SUCCESS;
-}
-
-static int test_command_pd_enable(void)
-{
- int argc = 3;
- char const *argv[] = {"pd", "1", "enable", 0, 0};
-
- comm_enable = 0;
- TEST_ASSERT(command_pd(argc, argv) == EC_SUCCESS);
- TEST_ASSERT(test_port == 1);
- TEST_ASSERT(comm_enable == 1);
-
- return EC_SUCCESS;
-}
-
-static int test_command_pd_hard(void)
-{
- int argc = 3;
- char const *argv[] = {"pd", "0", "hard", 0, 0};
-
- request = 0;
- TEST_ASSERT(command_pd(argc, argv) == EC_SUCCESS);
- TEST_ASSERT(test_port == 0);
- TEST_ASSERT(request == DPM_REQUEST_HARD_RESET_SEND);
-
- return EC_SUCCESS;
-}
-
-static int test_command_pd_soft(void)
-{
- int argc = 3;
- char const *argv[] = {"pd", "0", "soft", 0, 0};
-
- request = 0;
- TEST_ASSERT(command_pd(argc, argv) == EC_SUCCESS);
- TEST_ASSERT(test_port == 0);
- TEST_ASSERT(request == DPM_REQUEST_SOFT_RESET_SEND);
-
- return EC_SUCCESS;
-}
-
-static int test_command_pd_swap1(void)
-{
- int argc = 3;
- char const *argv[] = {"pd", "0", "swap", 0, 0};
-
- TEST_ASSERT(command_pd(argc, argv) == EC_ERROR_PARAM_COUNT);
-
- return EC_SUCCESS;
-}
-
-static int test_command_pd_swap2(void)
-{
- int argc = 4;
- char const *argv[] = {"pd", "0", "swap", "power", 0};
-
- request = 0;
- TEST_ASSERT(command_pd(argc, argv) == EC_SUCCESS);
- TEST_ASSERT(test_port == 0);
- TEST_ASSERT(request == DPM_REQUEST_PR_SWAP);
-
- return EC_SUCCESS;
-}
-
-static int test_command_pd_swap3(void)
-{
- int argc = 4;
- char const *argv[] = {"pd", "1", "swap", "data", 0};
-
- request = 0;
- TEST_ASSERT(command_pd(argc, argv) == EC_SUCCESS);
- TEST_ASSERT(test_port == 1);
- TEST_ASSERT(request == DPM_REQUEST_DR_SWAP);
-
- return EC_SUCCESS;
-}
-
-static int test_command_pd_swap4(void)
-{
- int argc = 4;
- char const *argv[] = {"pd", "0", "swap", "vconn", 0};
-
- request = 0;
- TEST_ASSERT(command_pd(argc, argv) == EC_SUCCESS);
- TEST_ASSERT(test_port == 0);
- TEST_ASSERT(request == DPM_REQUEST_VCONN_SWAP);
-
- return EC_SUCCESS;
-}
-
-static int test_command_pd_swap5(void)
-{
- int argc = 4;
- char const *argv[] = {"pd", "0", "swap", "xyz", 0};
-
- TEST_ASSERT(command_pd(argc, argv) == EC_ERROR_PARAM3);
-
- return EC_SUCCESS;
-}
-
-static int test_command_pd_dualrole1(void)
-{
- int argc = 4;
- char const *argv[] = {"pd", "0", "dualrole", "on", 0};
-
- dr_state = 0;
- TEST_ASSERT(command_pd(argc, argv) == EC_SUCCESS);
- TEST_ASSERT(test_port == 0);
- TEST_ASSERT(dr_state == PD_DRP_TOGGLE_ON);
-
- return EC_SUCCESS;
-}
-
-static int test_command_pd_dualrole2(void)
-{
- int argc = 4;
- char const *argv[] = {"pd", "0", "dualrole", "off", 0};
-
- dr_state = 0;
- TEST_ASSERT(command_pd(argc, argv) == EC_SUCCESS);
- TEST_ASSERT(test_port == 0);
- TEST_ASSERT(dr_state == PD_DRP_TOGGLE_OFF);
-
- return EC_SUCCESS;
-}
-
-static int test_command_pd_dualrole3(void)
-{
- int argc = 4;
- char const *argv[] = {"pd", "0", "dualrole", "freeze", 0};
-
- dr_state = 0;
- TEST_ASSERT(command_pd(argc, argv) == EC_SUCCESS);
- TEST_ASSERT(test_port == 0);
- TEST_ASSERT(dr_state == PD_DRP_FREEZE);
-
- return EC_SUCCESS;
-}
-
-static int test_command_pd_dualrole4(void)
-{
- int argc = 4;
- char const *argv[] = {"pd", "0", "dualrole", "sink", 0};
-
- dr_state = 0;
- TEST_ASSERT(command_pd(argc, argv) == EC_SUCCESS);
- TEST_ASSERT(test_port == 0);
- TEST_ASSERT(dr_state == PD_DRP_FORCE_SINK);
-
- return EC_SUCCESS;
-}
-
-static int test_command_pd_dualrole5(void)
-{
- int argc = 4;
- char const *argv[] = {"pd", "0", "dualrole", "source", 0};
-
- dr_state = 0;
- TEST_ASSERT(command_pd(argc, argv) == EC_SUCCESS);
- TEST_ASSERT(test_port == 0);
- TEST_ASSERT(dr_state == PD_DRP_FORCE_SOURCE);
-
- return EC_SUCCESS;
-}
-
-
-void run_test(int argc, char **argv)
-{
- test_reset();
-
- RUN_TEST(test_hex8tou32);
- RUN_TEST(test_command_pd_arg_count);
- RUN_TEST(test_command_pd_port_num);
- RUN_TEST(test_command_pd_try_src);
- RUN_TEST(test_command_pd_tx);
- RUN_TEST(test_command_pd_bist_tx);
- RUN_TEST(test_command_pd_bist_rx);
- RUN_TEST(test_command_pd_charger);
- RUN_TEST(test_command_pd_dev1);
- RUN_TEST(test_command_pd_dev2);
- RUN_TEST(test_command_pd_disable);
- RUN_TEST(test_command_pd_enable);
- RUN_TEST(test_command_pd_hard);
- RUN_TEST(test_command_pd_info);
- RUN_TEST(test_command_pd_soft);
- RUN_TEST(test_command_pd_swap1);
- RUN_TEST(test_command_pd_swap2);
- RUN_TEST(test_command_pd_swap3);
- RUN_TEST(test_command_pd_swap4);
- RUN_TEST(test_command_pd_swap5);
- RUN_TEST(test_command_pd_ping);
- RUN_TEST(test_command_pd_vdm1);
- RUN_TEST(test_command_pd_vdm2);
- RUN_TEST(test_command_pd_vdm3);
- RUN_TEST(test_command_pd_vdm4);
- RUN_TEST(test_command_pd_vdm5);
- RUN_TEST(test_command_pd_vdm6);
- RUN_TEST(test_command_pd_flash1);
- RUN_TEST(test_command_pd_flash2);
- RUN_TEST(test_command_pd_flash3);
- RUN_TEST(test_command_pd_flash4);
- RUN_TEST(test_command_pd_flash5);
- RUN_TEST(test_command_pd_flash6);
- RUN_TEST(test_command_pd_flash7);
- RUN_TEST(test_command_pd_flash8);
- RUN_TEST(test_command_pd_dualrole1);
- RUN_TEST(test_command_pd_dualrole2);
- RUN_TEST(test_command_pd_dualrole3);
- RUN_TEST(test_command_pd_dualrole4);
- RUN_TEST(test_command_pd_dualrole5);
-
- test_print_result();
-}
-