diff options
Diffstat (limited to 'ec_console.h')
-rw-r--r-- | ec_console.h | 34 |
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 */ |