[PATCH v2] Add some help using the gpio commands at runtime

Juergen Beisert jbe at pengutronix.de
Fri Oct 22 09:24:00 EDT 2010


From: Juergen Beisert <jbe at pengutronix.de>
Subject: [PATCH] Add some help using the gpio commands at runtime

Last time I used the gpio commands I was somehow confused about the behaviour
of the 'gpio_get_value' command. So, I decided to add some doc for it. Here's
the result.

Signed-off-by: Juergen Beisert <jbe at pengutronix.de>

---
 Documentation/commands.dox |    1 
 commands/gpio.c            |   61 
+++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 62 insertions(+)

Index: barebox-2010.10.0/Documentation/commands.dox
===================================================================
--- barebox-2010.10.0.orig/Documentation/commands.dox
+++ barebox-2010.10.0/Documentation/commands.dox
@@ -10,6 +10,7 @@
 @li @subpage edit_command
 @li @subpage erase_command
 @li @subpage export_command
+ at li @subpage gpio_for_users
 @li @subpage tftp_command
 @li @subpage loadenv_command
 @li @subpage mount_command
Index: barebox-2010.10.0/commands/gpio.c
===================================================================
--- barebox-2010.10.0.orig/commands/gpio.c
+++ barebox-2010.10.0/commands/gpio.c
@@ -120,3 +120,64 @@ BAREBOX_CMD_START(gpio_direction_output)
 	BAREBOX_CMD_HELP(cmd_gpio_direction_output_help)
 BAREBOX_CMD_END
 
+/**
+ at page gpio_for_users Runtime GPIO handling
+
+ at section regular_gpio General usage information
+
+These commands are available if the symbol @b CONFIG_GENERIC_GPIO and
+ at b CONFIG_CMD_GPIO are enabled in the Kconfig.
+
+ at note All gpio related commands take a number to identify the pad. This
+number is architecture dependent. There may be no intuitional correlation
+between available pads and the GPIO numbers to be used in the commands. Due
+to this it's also possible the numbers change between @b barebox releases.
+
+ at section gpio_dir_out Switch a pad into an output GPIO
+ at verbatim
+gpio_direction_output <gpio_no> <initial_value>
+ at endverbatim
+- @b gpio_no Architecture dependent GPIO number
+- @b initial_value Output value the pad should emit
+
+ at note To avoid glitches on the pad's line, the routines will first setting up
+the pad's value and after that switching the pad itself to output (if the
+silicon is able to do so)
+
+ at note If the pad is already configured into a non GPIO mode (if available)
+this command may fail (silently)
+
+ at section gpio_dir_in Switch a pad into an input GPIO
+ at verbatim
+gpio_direction_input <gpio_no>
+ at endverbatim
+- @b gpio_no Architecture dependent GPIO number
+
+ at note If the pad is already configured into a non GPIO mode (if available)
+this command may fail (silently)
+
+ at section gpio_get_value Read in the value of an GPIO input pad
+ at verbatim
+gpio_get_value <gpio_no>
+ at endverbatim
+
+Reads in the current pad's line value from the given GPIO number. It returns
+the value as a shell return code. There is no visible output at stdout. You
+can check the return value by using "echo $?"
+
+ at note If the return code is not '0' or '1' it's meant as an error code.
+
+ at note If the pad is not configured for GPIO mode this command may fail
+(silently) and returns garbage
+
+ at section gpio_set_value Set a new value to a GPIO output pad
+ at verbatim
+gpio_set_value <gpio_no> <value>
+ at endverbatim
+- @b gpio_no Architecture dependent GPIO number
+- @b value Output value the pad should emit
+
+Sets a new output @b value to the pad with GPIO number @b gpio_no
+
+ at note If the pad is not configured for GPIO mode this command may fail 
(silently)
+*/



-- 
Pengutronix e.K.                              | Juergen Beisert             |
Linux Solutions for Science and Industry      | Phone: +49-8766-939 228     |
Vertretung Sued/Muenchen, Germany             | Fax:   +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686              | http://www.pengutronix.de/  |



More information about the barebox mailing list