event: Add a command

Add a command to show the available events.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass 2022-03-04 08:43:06 -07:00 committed by Tom Rini
parent 7fe32b3442
commit c81b460c86
5 changed files with 40 additions and 0 deletions

View File

@ -812,6 +812,7 @@ F: scripts/env2string.awk
EVENTS EVENTS
M: Simon Glass <sjg@chromium.org> M: Simon Glass <sjg@chromium.org>
S: Maintained S: Maintained
F: cmd/event.c
F: common/event.c F: common/event.c
F: include/event.h F: include/event.h
F: test/common/event.c F: test/common/event.c

View File

@ -2367,6 +2367,14 @@ config CMD_DIAG
available tests and running either all the tests, or specific tests available tests and running either all the tests, or specific tests
identified by name. identified by name.
config CMD_EVENT
bool "event - Show information about events"
default y if EVENT_DEBUG
help
This enables the 'event' command which provides information about
events and event-handler routines. This can help to device event
hadling.
config CMD_IRQ config CMD_IRQ
bool "irq - Show information about interrupts" bool "irq - Show information about interrupts"
depends on !ARM && !MIPS && !RISCV && !SH depends on !ARM && !MIPS && !RISCV && !SH

View File

@ -53,6 +53,7 @@ obj-$(CONFIG_CMD_DIAG) += diag.o
endif endif
obj-$(CONFIG_CMD_ADTIMG) += adtimg.o obj-$(CONFIG_CMD_ADTIMG) += adtimg.o
obj-$(CONFIG_CMD_ABOOTIMG) += abootimg.o obj-$(CONFIG_CMD_ABOOTIMG) += abootimg.o
obj-$(CONFIG_CMD_EVENT) += event.o
obj-$(CONFIG_CMD_EXTENSION) += extension_board.o obj-$(CONFIG_CMD_EXTENSION) += extension_board.o
obj-$(CONFIG_CMD_ECHO) += echo.o obj-$(CONFIG_CMD_ECHO) += echo.o
obj-$(CONFIG_ENV_IS_IN_EEPROM) += eeprom.o obj-$(CONFIG_ENV_IS_IN_EEPROM) += eeprom.o

27
cmd/event.c Normal file
View File

@ -0,0 +1,27 @@
// SPDX-License-Identifier: GPL-2.0+
/*
* Command-line access to events
*
* Copyright 2021 Google LLC
* Written by Simon Glass <sjg@chromium.org>
*/
#include <common.h>
#include <command.h>
#include <event.h>
static int do_event_list(struct cmd_tbl *cmdtp, int flag, int argc,
char *const argv[])
{
event_show_spy_list();
return 0;
}
#ifdef CONFIG_SYS_LONGHELP
static char event_help_text[] =
"event list - list event spies";
#endif
U_BOOT_CMD_WITH_SUBCMDS(event, "Events", event_help_text,
U_BOOT_SUBCMD_MKENT(list, 1, 1, do_event_list));

View File

@ -141,6 +141,9 @@ static inline const char *event_spy_id(struct evspy_info *spy)
int event_register(const char *id, enum event_t type, event_handler_t func, int event_register(const char *id, enum event_t type, event_handler_t func,
void *ctx); void *ctx);
/** event_show_spy_list( - Show a list of event spies */
void event_show_spy_list(void);
#if CONFIG_IS_ENABLED(EVENT) #if CONFIG_IS_ENABLED(EVENT)
/** /**
* event_notify() - notify spies about an event * event_notify() - notify spies about an event