diff options
Diffstat (limited to 'zephyr/shim/src/host_command.c')
-rw-r--r-- | zephyr/shim/src/host_command.c | 27 |
1 files changed, 3 insertions, 24 deletions
diff --git a/zephyr/shim/src/host_command.c b/zephyr/shim/src/host_command.c index 6d586f225a..bf863b48de 100644 --- a/zephyr/shim/src/host_command.c +++ b/zephyr/shim/src/host_command.c @@ -5,32 +5,11 @@ #include "host_command.h" -static struct zshim_host_command_node *host_command_head; - -void zshim_setup_host_command( - int command, - enum ec_status (*routine)(struct host_cmd_handler_args *args), - int version_mask, struct zshim_host_command_node *entry) -{ - struct zshim_host_command_node **loc = &host_command_head; - - /* Setup the entry */ - entry->cmd->handler = routine; - entry->cmd->command = command; - entry->cmd->version_mask = version_mask; - entry->next = *loc; - - /* Insert the entry */ - *loc = entry; -} - struct host_command *zephyr_find_host_command(int command) { - struct zshim_host_command_node *p; - - for (p = host_command_head; p != NULL; p = p->next) { - if (p->cmd->command == command) - return p->cmd; + STRUCT_SECTION_FOREACH(host_command, cmd) { + if (cmd->command == command) + return cmd; } return NULL; |