summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--driver/mcdp28x0.c38
-rw-r--r--include/config.h1
2 files changed, 33 insertions, 6 deletions
diff --git a/driver/mcdp28x0.c b/driver/mcdp28x0.c
index a3a2043619..ded08975fb 100644
--- a/driver/mcdp28x0.c
+++ b/driver/mcdp28x0.c
@@ -158,11 +158,37 @@ int mcdp_get_info(struct mcdp_info *info)
memcpy(info, &inbuf[2], MCDP_LEN_GETINFO);
-#ifdef MCDP_DEBUG
- CPRINTF("family:%04x chipid:%04x irom:%d.%d.%d fw:%d.%d.%d\n",
- MCDP_FAMILY(info->family), MCDP_CHIPID(info->chipid),
- info->irom.major, info->irom.minor, info->irom.build,
- info->fw.major, info->fw.minor, info->fw.build);
-#endif
return EC_SUCCESS;
}
+
+#ifdef CONFIG_CMD_MCDP
+int command_mcdp(int argc, char **argv)
+{
+ int rv = EC_SUCCESS;
+ if (argc < 2)
+ return EC_ERROR_PARAM_COUNT;
+
+ mcdp_enable();
+ if (!strncasecmp(argv[1], "info", 4)) {
+ struct mcdp_info info;
+ rv = mcdp_get_info(&info);
+ if (!rv)
+ ccprintf("family:%04x chipid:%04x irom:%d.%d.%d "
+ "fw:%d.%d.%d\n",
+ MCDP_FAMILY(info.family),
+ MCDP_CHIPID(info.chipid),
+ info.irom.major, info.irom.minor,
+ info.irom.build,
+ info.fw.major, info.fw.minor, info.fw.build);
+ } else {
+ rv = EC_ERROR_PARAM1;
+ }
+
+ mcdp_disable();
+ return rv;
+}
+DECLARE_CONSOLE_COMMAND(mcdp, command_mcdp,
+ "info",
+ "USB PD",
+ NULL);
+#endif /* CONFIG_CMD_MCDP */
diff --git a/include/config.h b/include/config.h
index 5acc7d57ea..a824744896 100644
--- a/include/config.h
+++ b/include/config.h
@@ -374,6 +374,7 @@
#define CONFIG_CMD_IDLE_STATS
#undef CONFIG_CMD_ILIM
#undef CONFIG_CMD_JUMPTAGS
+#undef CONFIG_CMD_MCDP
#define CONFIG_CMD_PD
#undef CONFIG_CMD_PD_DEV_DUMP_INFO
#undef CONFIG_CMD_PD_FLASH