summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAbe Levkoy <alevkoy@chromium.org>2023-02-17 15:46:18 -0700
committerChromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com>2023-02-24 01:35:50 +0000
commit689394b3906cb4b1c3a18af04383fd2ed57b130e (patch)
tree38ce2c9d09a15a9084fca922c94d297bce2286dc
parent2fe92248668777a7ed7194c4614af8819dadbed1 (diff)
downloadchrome-ec-689394b3906cb4b1c3a18af04383fd2ed57b130e.tar.gz
TCPMV2: Remove EC_CMD_USB_PD_DEV_INFO
Restrict the implementation of EC_CMD_USB_PD_DEV_INFO to TCPMv1. Remove code and storage to support it from TCPMv2. Remove a test covering it in TCPMv2. BUG=b:250015035 TEST=twister -T zephyr/test/drivers BRANCH=none LOW_COVERAGE_REASON=TCPMv1 is not supported Change-Id: If86e79eab739f8100fb677d7f2fc9c81ea5b45ef Signed-off-by: Abe Levkoy <alevkoy@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4265367 Reviewed-by: Diana Z <dzigterman@chromium.org>
-rw-r--r--common/usb_pd_host_cmd.c22
-rw-r--r--common/usb_pd_policy.c25
-rw-r--r--common/usbc/usb_pe_drp_sm.c35
-rw-r--r--zephyr/test/drivers/CMakeLists.txt1
-rw-r--r--zephyr/test/drivers/Kconfig6
-rw-r--r--zephyr/test/drivers/common/include/test/drivers/utils.h10
-rw-r--r--zephyr/test/drivers/common/src/utils.c12
-rw-r--r--zephyr/test/drivers/testcase.yaml3
-rw-r--r--zephyr/test/drivers/usbc_legacy/CMakeLists.txt6
-rw-r--r--zephyr/test/drivers/usbc_legacy/src/ec_pd_dev_ops.c35
10 files changed, 25 insertions, 130 deletions
diff --git a/common/usb_pd_host_cmd.c b/common/usb_pd_host_cmd.c
index 89f7a80848..b6508c5e1e 100644
--- a/common/usb_pd_host_cmd.c
+++ b/common/usb_pd_host_cmd.c
@@ -126,28 +126,6 @@ DECLARE_HOST_COMMAND(EC_CMD_USB_PD_DISCOVERY, hc_remote_pd_discovery,
#endif /* CONFIG_USB_PD_ALT_MODE_DFP */
#ifdef CONFIG_COMMON_RUNTIME
-static enum ec_status hc_remote_pd_dev_info(struct host_cmd_handler_args *args)
-{
- const struct ec_params_usb_pd_info_request *p = args->params;
- struct ec_params_usb_pd_rw_hash_entry *r = args->response;
- uint16_t dev_id;
- uint32_t current_image;
-
- if (p->port >= board_get_usb_pd_port_count())
- return EC_RES_INVALID_PARAM;
-
- pd_dev_get_rw_hash(p->port, &dev_id, r->dev_rw_hash, &current_image);
-
- r->dev_id = dev_id;
- r->current_image = current_image;
-
- args->response_size = sizeof(*r);
-
- return EC_RES_SUCCESS;
-}
-DECLARE_HOST_COMMAND(EC_CMD_USB_PD_DEV_INFO, hc_remote_pd_dev_info,
- EC_VER_MASK(0));
-
static const enum pd_dual_role_states dual_role_map[USB_PD_CTRL_ROLE_COUNT] = {
[USB_PD_CTRL_ROLE_TOGGLE_ON] = PD_DRP_TOGGLE_ON,
[USB_PD_CTRL_ROLE_TOGGLE_OFF] = PD_DRP_TOGGLE_OFF,
diff --git a/common/usb_pd_policy.c b/common/usb_pd_policy.c
index 28d3d4f5d3..98299968f7 100644
--- a/common/usb_pd_policy.c
+++ b/common/usb_pd_policy.c
@@ -1240,4 +1240,29 @@ static int command_mfallow(int argc, const char **argv)
DECLARE_CONSOLE_COMMAND(mfallow, command_mfallow, "port [true | false]",
"Controls Multifunction choice during DP Altmode.");
#endif /* CONFIG_CMD_MFALLOW */
+
+#ifdef CONFIG_COMMON_RUNTIME
+static enum ec_status hc_remote_pd_dev_info(struct host_cmd_handler_args *args)
+{
+ const struct ec_params_usb_pd_info_request *p = args->params;
+ struct ec_params_usb_pd_rw_hash_entry *r = args->response;
+ uint16_t dev_id;
+ uint32_t current_image;
+
+ if (p->port >= board_get_usb_pd_port_count())
+ return EC_RES_INVALID_PARAM;
+
+ pd_dev_get_rw_hash(p->port, &dev_id, r->dev_rw_hash, &current_image);
+
+ r->dev_id = dev_id;
+ r->current_image = current_image;
+
+ args->response_size = sizeof(*r);
+
+ return EC_RES_SUCCESS;
+}
+DECLARE_HOST_COMMAND(EC_CMD_USB_PD_DEV_INFO, hc_remote_pd_dev_info,
+ EC_VER_MASK(0));
+#endif /* CONFIG_COMMON_RUNTIME */
+
#endif /* CONFIG_USB_PD_ALT_MODE_DFP */
diff --git a/common/usbc/usb_pe_drp_sm.c b/common/usbc/usb_pe_drp_sm.c
index 749407b773..3a94287094 100644
--- a/common/usbc/usb_pe_drp_sm.c
+++ b/common/usbc/usb_pe_drp_sm.c
@@ -657,11 +657,6 @@ static struct policy_engine {
/* Last received Revision Message Data Object (RMDO) from the partner */
struct rmdo partner_rmdo;
-
- /* Attached ChromeOS device id, RW hash, and current RO / RW image */
- uint16_t dev_id;
- uint32_t dev_rw_hash[PD_RW_HASH_SIZE / 4];
- enum ec_image current_image;
} pe[CONFIG_USB_PD_PORT_MAX_COUNT];
test_export_static enum usb_pe_state get_state_pe(const int port);
@@ -2031,36 +2026,6 @@ bool pd_setup_vdm_request(int port, enum tcpci_msg_type tx_type, uint32_t *vdm,
return true;
}
-int pd_dev_store_rw_hash(int port, uint16_t dev_id, uint32_t *rw_hash,
- uint32_t current_image)
-{
- pe[port].dev_id = dev_id;
- memcpy(pe[port].dev_rw_hash, rw_hash, PD_RW_HASH_SIZE);
- pe[port].current_image = current_image;
-
- if (IS_ENABLED(CONFIG_USB_PD_HOST_CMD)) {
- int i;
-
- /* Search table for matching device / hash */
- for (i = 0; i < RW_HASH_ENTRIES; i++)
- if (dev_id == rw_hash_table[i].dev_id)
- return !memcmp(rw_hash,
- rw_hash_table[i].dev_rw_hash,
- PD_RW_HASH_SIZE);
- }
-
- return 0;
-}
-
-void pd_dev_get_rw_hash(int port, uint16_t *dev_id, uint8_t *rw_hash,
- uint32_t *current_image)
-{
- *dev_id = pe[port].dev_id;
- *current_image = pe[port].current_image;
- if (*dev_id)
- memcpy(rw_hash, pe[port].dev_rw_hash, PD_RW_HASH_SIZE);
-}
-
/*
* This function must only be called from the PE_SNK_READY entry and
* PE_SRC_READY entry State.
diff --git a/zephyr/test/drivers/CMakeLists.txt b/zephyr/test/drivers/CMakeLists.txt
index d21912cce3..8cdecc2d70 100644
--- a/zephyr/test/drivers/CMakeLists.txt
+++ b/zephyr/test/drivers/CMakeLists.txt
@@ -50,7 +50,6 @@ add_subdirectory_ifdef(CONFIG_LINK_TEST_SUITE_USBC_SVDM_DFP_ONLY usbc_svdm_dfp_o
add_subdirectory_ifdef(CONFIG_LINK_TEST_SUITE_USBC_TBT_MODE usbc_tbt_mode)
add_subdirectory_ifdef(CONFIG_LINK_TEST_SUITE_USBC_USB4_MODE usbc_usb4_mode)
add_subdirectory_ifdef(CONFIG_LINK_TEST_SUITE_USBC_VCONN_SWAP usbc_vconn_swap)
-add_subdirectory_ifdef(CONFIG_LINK_TEST_SUITE_USBC_LEGACY usbc_legacy)
add_subdirectory_ifdef(CONFIG_LINK_TEST_SUITE_USBC_OCP usbc_ocp)
add_subdirectory_ifdef(CONFIG_LINK_TEST_SUITE_USBC_PPC usbc_ppc)
add_subdirectory_ifdef(CONFIG_LINK_TEST_SUITE_HOST_COMMANDS host_cmd)
diff --git a/zephyr/test/drivers/Kconfig b/zephyr/test/drivers/Kconfig
index 9bbe66e687..551aaf6418 100644
--- a/zephyr/test/drivers/Kconfig
+++ b/zephyr/test/drivers/Kconfig
@@ -143,12 +143,6 @@ config LINK_TEST_SUITE_USBC_FRS
select LOG
select PLATFORM_EC_USB_PD_FRS
-config LINK_TEST_SUITE_USBC_LEGACY
- bool "Link tests for common USBC legacy code"
- help
- Include test coverage for legacy USB-C code. This is typically
- for obsolete functionality or unsupported hardware.
-
config LINK_TEST_SUITE_USBC_OCP
bool "Link tests for common USBC OCP code"
diff --git a/zephyr/test/drivers/common/include/test/drivers/utils.h b/zephyr/test/drivers/common/include/test/drivers/utils.h
index 8f7c7773f3..c42c07f994 100644
--- a/zephyr/test/drivers/common/include/test/drivers/utils.h
+++ b/zephyr/test/drivers/common/include/test/drivers/utils.h
@@ -482,16 +482,6 @@ void host_cmd_typec_discovery(int port, enum typec_partner_type partner_type,
void *response, size_t response_size);
/**
- * @brief Run the host command to get the PD chip information.
- *
- * @param port The USB-C port number
- * @param response Destination for command response.
- * @return The result code from the host command
- */
-int host_cmd_usb_pd_dev_info(uint8_t port,
- struct ec_params_usb_pd_rw_hash_entry *response);
-
-/**
* Run the host command to control PD port behavior, with the sub-command of
* TYPEC_CONTROL_COMMAND_ENTER_MODE
*
diff --git a/zephyr/test/drivers/common/src/utils.c b/zephyr/test/drivers/common/src/utils.c
index 1651b26546..03d280cb68 100644
--- a/zephyr/test/drivers/common/src/utils.c
+++ b/zephyr/test/drivers/common/src/utils.c
@@ -570,18 +570,6 @@ struct ec_response_typec_vdm_response host_cmd_typec_vdm_response(int port)
return response;
}
-int host_cmd_usb_pd_dev_info(uint8_t port,
- struct ec_params_usb_pd_rw_hash_entry *response)
-{
- struct ec_params_usb_pd_info_request params = {
- .port = port,
- };
- struct host_cmd_handler_args args = BUILD_HOST_COMMAND(
- EC_CMD_USB_PD_DEV_INFO, 0, *response, params);
-
- return host_command_process(&args);
-}
-
void host_events_save(struct host_events_ctx *host_events_ctx)
{
host_events_ctx->lpc_host_events = lpc_get_host_events();
diff --git a/zephyr/test/drivers/testcase.yaml b/zephyr/test/drivers/testcase.yaml
index d7bfeceddf..e6099ad255 100644
--- a/zephyr/test/drivers/testcase.yaml
+++ b/zephyr/test/drivers/testcase.yaml
@@ -300,9 +300,6 @@ tests:
extra_configs:
- CONFIG_LINK_TEST_SUITE_USBC_FRS=y
- CONFIG_PLATFORM_EC_USB_PD_FRS_TCPC=y
- drivers.usbc_legacy:
- extra_configs:
- - CONFIG_LINK_TEST_SUITE_USBC_LEGACY=y
drivers.usbc_ocp:
extra_configs:
- CONFIG_LINK_TEST_SUITE_USBC_OCP=y
diff --git a/zephyr/test/drivers/usbc_legacy/CMakeLists.txt b/zephyr/test/drivers/usbc_legacy/CMakeLists.txt
deleted file mode 100644
index b438cea943..0000000000
--- a/zephyr/test/drivers/usbc_legacy/CMakeLists.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-# Copyright 2023 The ChromiumOS Authors
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# Add source files
-target_sources(app PRIVATE src/ec_pd_dev_ops.c)
diff --git a/zephyr/test/drivers/usbc_legacy/src/ec_pd_dev_ops.c b/zephyr/test/drivers/usbc_legacy/src/ec_pd_dev_ops.c
deleted file mode 100644
index e2e84d8926..0000000000
--- a/zephyr/test/drivers/usbc_legacy/src/ec_pd_dev_ops.c
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Copyright 2023 The ChromiumOS Authors
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-/*
- * Tests for operations related to PD chips based on chrome EC
- * source. Modern devices do not use this. These tests are primarily for
- * code coverage purposes.
- */
-
-#include "config.h"
-#include "ec_commands.h"
-#include "host_command.h"
-#include "test/drivers/test_state.h"
-#include "test/drivers/utils.h"
-
-#include <zephyr/ztest.h>
-
-#define TEST_PORT 0
-#define INVALID_TEST_PORT 99
-
-ZTEST(ec_pd_dev_ops, dev_info)
-{
- struct ec_params_usb_pd_rw_hash_entry response;
-
- zassert_equal(EC_RES_INVALID_PARAM,
- host_cmd_usb_pd_dev_info(INVALID_TEST_PORT, &response));
-
- zassert_ok(host_cmd_usb_pd_dev_info(TEST_PORT, &response), NULL);
- /* We have not set up a device on the port, so dev_id should be 0. */
- zassert_equal(0, response.dev_id);
-}
-
-ZTEST_SUITE(ec_pd_dev_ops, NULL, NULL, NULL, NULL, NULL);