This is the bulk of GPIO changes for the v4.11 cycle

Core changes:

- Augment fwnode_get_named_gpiod() to configure the GPIO pin
  immediately after requesting it like all other APIs do.
  This is a treewide change also updating all users.

- Pass a GPIO label down to gpiod_request() from
  fwnode_get_named_gpiod(). This makes debugfs and the userspace
  ABI correctly reflect the current in-kernel consumer of a pin
  taken using this abstraction. This is a treewide change also
  updating all users.

- Rename devm_get_gpiod_from_child() to
  devm_fwnode_get_gpiod_from_child() to reflect the fact that this
  function is operating on a fwnode object. This is a treewide
  change also updating all users.

- Make it possible to take multiple GPIOs in a single hog of device
  tree hogs.

- The refactorings switching GPIO chips to use the .set_config()
  callback using standard pin control properties and providing
  a backend into the pin control subsystem that were also merged
  into the pin control tree naturally appear here too.

Testing instrumentation:

- A whole slew of cleanups and improvements to the mockup GPIO
  driver. We now have an extended userspace test exercising the
  subsystem, and we can inject interrupts etc from userspace
  to fully test the core GPIO functionality.

New drivers:

- New driver for the Cortina Systems Gemini GPIO controller.

- New driver for the Exar XR17V352/354/358 chips.

- New driver for the ACCES PCI-IDIO-16 PCI GPIO card.

Driver changes:

- RCAR: set the irqchip parent device, add fine-grained runtime
  PM support.

- pca953x: support optional RESET control line on the chip.

- DaVinci: cleanups and simplifications. Add support for multiple
  instances.

- .set_multiple() and naming of lines on more or less all of the
  ISA/PCI GPIO controllers.

- mcp23s08: refactored to use regmap as a first step to further
  rewrites and modernizations.
gpio: reintroduce devm_get_gpiod_from_child()

We need to keep this API around for the merge window to avoid
nasty build problems in the merges.

Cc: Lee Jones <lee.jones@linaro.org>
Suggested-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
1 file changed