This is the bulk of GPIO changes for the v3.18 development
cycle:

- Increase the default ARCH_NR_GPIO from 256 to 512. This
  was done to avoid having a custom <asm/gpio.h> header for
  the x86 architecture - GPIO is custom and complicated
  enough as it is already! We want to move to a radix to
  store the descriptors going forward, and finally get rid
  of this fixed array size altogether.

- Endgame patching of the gpio_remove() semantics initiated
  by Abdoulaye Berthe. It is not accepted by the system that
  the removal of a GPIO chip fails during e.g. reboot or
  shutdown, and therefore the return value has now painfully
  been refactored away. For special cases like GPIO expanders
  on a hot-pluggable bus like USB, we may later add some
  gpiochip_try_remove() call, but for the cases we have now,
  return values are moot.

- Some incremental refactoring of the gpiolib core and ACPI
  GPIO library for more descriptor usage.

- Refactor the chained IRQ handler set-up method to handle
  also threaded, nested interrupts and set up the parent IRQ
  correctly. Switch STMPE and TC3589x drivers to use this
  registration method.

- Add a .irq_not_threaded flag to the struct gpio_chip, so
  that also GPIO expanders that block but are still not
  using threaded IRQ handlers.

- New drivers for the ARM64 X-Gene SoC GPIO controller.

- The syscon GPIO driver has been improved to handle the
  "DSP GPIO" found on the TI Keystone 2 SoC:s.

- ADNP driver switched to use gpiolib irqchip helpers.

- Refactor the DWAPB driver to support being instantiated
  from and MFD cell (platform device).

- Incremental feature improvement in the Zynq, MCP23S08,
  DWAPB, OMAP, Xilinx and Crystalcove drivers.

- Various minor fixes.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQIcBAABAgAGBQJUNOr0AAoJEEEQszewGV1z9toP/2ISXRnsi3+jlqVmEGm/y6EA
PPwJOiYnOhZR2/fTCHIF0PNbIi9pw7xKnzxttYCu4uCz7geHX+FfTwUZ2/KWMfqi
ZJ9kEoOVVKzKjmL/m2a2tO4IRSBHqJ8dF3yvaNjS3AL7EDfG6F5STErQurdLEynK
SeJZ2OwM/vRFCac6F7oDlqAUTu3xYGbVD8+zI0H0V/ReocosFlEwcbl2S8ctDWUd
h98M+gY+A8rxkvVMnmQ/k7rUTme/glDQ3z5xVx+uHbS2/a5M1jSM/71cXE6YnSrR
it0CK7CHomq2RzHsKf7oH7GD4kFkukMwFKeMoqz75JWz3352VZPTF53chCIqRSgO
hrgGwZ7WF6pUUUhsn1ZdZsnBPA2Fou2uwslyLSAiE+OYEH2/NSVIOUcorjQcWqU/
0Kix5yb8X1ZzRMhR+TVrTD5V0jguqp2buXq+0P2XlU6MoO2vy7iNf2eXvPg8sF8C
anjTCKgmkzy7eyT2uzfDaNZAyfSBKb1TiKiR9zA0SRChJkCi1ErJEXDGeHiptvSA
+D2k68Ils2LqsvdrnEd2XvVFMllh0iq7b+16o7D+Els0WRbnHpfYCaqfOuF5F4U0
SmeyI0ruawNDc5e9EBKXstt0/R9AMOetyTcTu29U2ZVo90zGaT1ofT8+R1jJ0kGa
bPARJZrgecgv1E9Qnnnd
=8InA
-----END PGP SIGNATURE-----
gpio: pch: Build context save/restore only for PM

The pch_gpio_save_reg_conf() and pch_gpio_restore_reg_conf() functions
are only used in pch_gpio_suspend() and pch_gpio_resume(), respectively.
Since the latter are only built if PM is enabled, make the former build
under the same conditions.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
1 file changed