Geert Uytterhoeven 828546e242 gpio: Add GPIO Aggregator
GPIO controllers are exported to userspace using /dev/gpiochip*
character devices.  Access control to these devices is provided by
standard UNIX file system permissions, on an all-or-nothing basis:
either a GPIO controller is accessible for a user, or it is not.
Currently no mechanism exists to control access to individual GPIOs.

Hence add a GPIO driver to aggregate existing GPIOs, and expose them as
a new gpiochip.

This supports the following use cases:
  - Aggregating GPIOs using Sysfs
    This is useful for implementing access control, and assigning a set
    of GPIOs to a specific user or virtual machine.
  - Generic GPIO Driver
    This is useful for industrial control, where it can provide
    userspace access to a simple GPIO-operated device described in DT,
    cfr. e.g. spidev for SPI-operated devices.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Tested-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Reviewed-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Link: https://lore.kernel.org/r/20200511145257.22970-5-geert+renesas@glider.be
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2020-05-18 10:12:42 +02:00
..
2020-05-18 10:12:42 +02:00
2020-01-23 16:16:05 +01:00
2019-11-07 09:27:48 +01:00
2019-11-07 09:27:48 +01:00
2018-05-16 14:35:24 +02:00
2020-01-15 11:24:19 +01:00
2019-11-07 09:27:48 +01:00
2019-09-03 16:04:19 +02:00
2020-02-20 15:41:05 +01:00
2020-01-17 08:59:29 +01:00
2019-11-07 09:27:48 +01:00
2020-01-17 08:59:29 +01:00
2019-07-23 18:59:05 +03:00
2020-02-20 09:18:54 +01:00
2019-11-07 09:27:48 +01:00
2019-11-07 09:27:48 +01:00
2019-11-07 09:27:48 +01:00
2020-01-15 13:45:01 +01:00
2019-11-07 09:27:48 +01:00
2018-01-09 14:51:00 +01:00
2019-11-07 09:27:48 +01:00
2019-12-09 10:40:18 +01:00
2020-05-18 10:12:42 +02:00
2020-05-18 10:12:42 +02:00
2020-01-09 03:01:33 +01:00