summaryrefslogtreecommitdiff
path: root/ec_console.h
diff options
context:
space:
mode:
Diffstat (limited to 'ec_console.h')
-rw-r--r--ec_console.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/ec_console.h b/ec_console.h
new file mode 100644
index 0000000000..64e38eda09
--- /dev/null
+++ b/ec_console.h
@@ -0,0 +1,34 @@
+/* ec_console.h - Debug console for Chrome EC
+ *
+ * (Chromium license) */
+
+#ifndef __CROS_EC_CONSOLE_H
+#define __CROS_EC_CONSOLE_H
+
+#include "ec_common.h"
+
+/* Console command */
+typedef struct EcConsoleCommand {
+ /* Command name. Case-insensitive. */
+ const char* name;
+ /* Handler for the command. argv[0] will be the command name. */
+ EcError (*handler)(int argc, char** argv);
+} EcConsoleCommand;
+
+
+/* Console command group */
+typedef struct EcConsoleCommandGroup {
+ const char* group_name; /* Name of the command group */
+ const EcConsoleCommand* commands; /* List of commands */
+ int command_count; /* Number of commands in list */
+} EcConsoleCommandGroup;
+
+
+/* Initializes the console module. */
+EcError ConsoleInit(void);
+
+
+/* Registers a group of console commands. */
+EcError ConsoleRegisterCommands(const EcConsoleCommandGroup* group);
+
+#endif /* __CROS_EC_CONSOLE_H */