From a2bf8f66baadd17daa0aa89fea9c8868d909ef66 Mon Sep 17 00:00:00 2001 From: Jean-Christophe PLAGNIOL-VILLARD Date: Fri, 21 Dec 2012 14:26:09 +0100 Subject: [PATCH] gpiolib: add command to dump the current gpio status This will allow to known which gpio is requested by what Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Signed-off-by: Sascha Hauer --- drivers/gpio/gpio.c | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/drivers/gpio/gpio.c b/drivers/gpio/gpio.c index ed9f9236e..d37f5a0db 100644 --- a/drivers/gpio/gpio.c +++ b/drivers/gpio/gpio.c @@ -1,4 +1,6 @@ #include +#include +#include #include #include #include @@ -198,3 +200,38 @@ int gpio_get_num(struct device_d *dev, int gpio) return -ENODEV; } + +#ifdef CONFIG_CMD_GPIO +static int do_gpiolib(int argc, char *argv[]) +{ + int i; + + printf("gpiolib: gpio lists\n"); + printf("%*crequested label\n", 11, ' '); + + for (i = 0; i < ARCH_NR_GPIOS; i++) { + struct gpio_info *gi = &gpio_desc[i]; + + if (!gi->chip) + continue; + + printf("gpio %*d: %*s %s\n", 4, + i, 9, gi->requested ? "true" : "false", + gi->label ? gi->label : ""); + } + + return 0; +} + +BAREBOX_CMD_HELP_START(gpiolib) +BAREBOX_CMD_HELP_USAGE("gpiolib\n") +BAREBOX_CMD_HELP_SHORT("dump current registered gpio\n"); +BAREBOX_CMD_HELP_END + +BAREBOX_CMD_START(gpiolib) + .cmd = do_gpiolib, + .usage = "dump current registered gpio", + BAREBOX_CMD_HELP(cmd_gpiolib_help) + BAREBOX_CMD_COMPLETE(empty_complete) +BAREBOX_CMD_END +#endif