extend documentation for gpiod_set_array() functions
authorRojhalat Ibrahim <imr@rtschenk.de>
Thu, 5 Mar 2015 13:36:36 +0000 (14:36 +0100)
committerLinus Walleij <linus.walleij@linaro.org>
Mon, 9 Mar 2015 16:38:49 +0000 (17:38 +0100)
Extend the documentation for the gpiod_set_array() functions and elaborate
a bit on possible use cases.

Signed-off-by: Rojhalat Ibrahim <imr@rtschenk.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Documentation/gpio/consumer.txt

index d29a9725c9e5273e5ff3e5588cc84effdcd68fc3..c21c1313f09e55bee448fbb62d5efcd93eabe848 100644 (file)
@@ -259,6 +259,26 @@ GPIOs belonging to the same bank or chip simultaneously if supported by the
 corresponding chip driver. In that case a significantly improved performance
 can be expected. If simultaneous setting is not possible the GPIOs will be set
 sequentially.
+
+The gpiod_set_array() functions take three arguments:
+       * array_size    - the number of array elements
+       * desc_array    - an array of GPIO descriptors
+       * value_array   - an array of values to assign to the GPIOs
+
+The descriptor array can be obtained using the gpiod_get_array() function
+or one of its variants. If the group of descriptors returned by that function
+matches the desired group of GPIOs, those GPIOs can be set by simply using
+the struct gpio_descs returned by gpiod_get_array():
+
+       struct gpio_descs *my_gpio_descs = gpiod_get_array(...);
+       gpiod_set_array(my_gpio_descs->ndescs, my_gpio_descs->desc,
+                       my_gpio_values);
+
+It is also possible to set a completely arbitrary array of descriptors. The
+descriptors may be obtained using any combination of gpiod_get() and
+gpiod_get_array(). Afterwards the array of descriptors has to be setup
+manually before it can be used with gpiod_set_array().
+
 Note that for optimal performance GPIOs belonging to the same chip should be
 contiguous within the array of descriptors.