Skip to content
This is the bulk of GPIO changes for the v4.21 kernel series:

Core changes:

- Some core changes are already in outside of this pull
  request as they came through the regulator tree, most
  notably devm_gpiod_unhinge() that removes devres refcount
  management from a GPIO descriptor. This is needed in
  subsystems such as regulators where the regulator core
  need to take over the reference counting and lifecycle
  management for a GPIO descriptor.

- We dropped devm_gpiochip_remove() and devm_gpio_chip_match()
  as nothing needs it. We can bring it back if need be.

- Add a global TODO so people see where we are going. This
  helps setting the direction now that we are two GPIO
  maintainers.

- Handle the MMC CD/WP properties in the device tree core.
  (The bulk of patches activating this code is already
  merged through the MMC/SD tree.)

- Augment gpiochip_request_own_desc() to pass a flag so
  we as gpiochips can request lines as active low or open
  drain etc even from ourselves.

New drivers:

- New driver for Cadence GPIO blocks.

- New driver for Atmel SAMA5D2 PIOBU GPIO lines.

Driver improvements:

- A major refactoring of the PCA953x driver - this driver has
  been around for ages, and is now modernized to reduce code
  duplication that has stacked up and is using regmap to read
  write and cache registers.

- Intel drivers are now maintained in a separate tree and
  start with a round of cleanups and unifications.