]> git.kernelconcepts.de Git - karo-tx-uboot.git/commitdiff
Blackfin: cmd_gpio: document/extend input sub-option
authorMike Frysinger <vapier@gentoo.org>
Fri, 13 Aug 2010 19:48:09 +0000 (15:48 -0400)
committerMike Frysinger <vapier@gentoo.org>
Sat, 2 Oct 2010 20:00:39 +0000 (16:00 -0400)
The input sub command was missing from the help text, and it didn't show
the actual value currently read on the GPIO.  This allows people to read
the value of input pins.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
arch/blackfin/cpu/cmd_gpio.c

index 4430c90d4d760a6d7b6f5b66601d1c65b08cfc23..5988da7917107c11f94794018ab503c0cc055d51 100644 (file)
@@ -90,20 +90,19 @@ int do_gpio(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
        gpio_request(gpio, "cmd_gpio");
 
        /* finally, let's do it: set direction and exec command */
+       ulong value;
        if (sub_cmd == GPIO_INPUT) {
                gpio_direction_input(gpio);
-               printf("gpio: pin %lu on port %c set to input\n", pin, *str_pin);
-               return 0;
-       }
-
-       ulong value;
-       switch (sub_cmd) {
-               case GPIO_SET:    value = 1; break;
-               case GPIO_CLEAR:  value = 0; break;
-               case GPIO_TOGGLE: value = !gpio_get_value(gpio); break;
-               default:          goto show_usage;
+               value = gpio_get_value(gpio);
+       } else {
+               switch (sub_cmd) {
+                       case GPIO_SET:    value = 1; break;
+                       case GPIO_CLEAR:  value = 0; break;
+                       case GPIO_TOGGLE: value = !gpio_get_value(gpio); break;
+                       default:          goto show_usage;
+               }
+               gpio_direction_output(gpio, value);
        }
-       gpio_direction_output(gpio, value);
        printf("gpio: pin %lu on port %c (gpio %lu) value is %lu\n",
                pin, *str_pin, gpio, value);
 
@@ -113,6 +112,6 @@ int do_gpio(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 }
 
 U_BOOT_CMD(gpio, 3, 0, do_gpio,
-       "set/clear/toggle gpio output pins",
-       "<set|clear|toggle> <port><pin>\n"
-       "    - set/clear/toggle the specified pin (e.g. PF10)");
+       "input/set/clear/toggle gpio output pins",
+       "<input|set|clear|toggle> <port><pin>\n"
+       "    - input/set/clear/toggle the specified pin (e.g. PF10)");