[PATCH v5 0/6] gpiolib: switch to fwnode in the core

Andy Shevchenko
2021-03-08T19:46:28Z

GPIO library uses of_node and fwnode in the core in non-unified way.
The series cleans this up and improves IRQ domain creation for non-OF cases
where currently the names of the domain are 'unknown'.

This has been tested on Intel Galileo Gen 2.

It touches GPIO core parts and it's expected that the series is routed via
GPIO tree.

In v5:
- same as v4 + v3 (patches 1-4/5) in order to route via GPIO tree (Bart)

In v4:
- based on Rafael's bleeding-edge
- split the rest to two patches (Rafael)
- elaborate WARN() deduplication in the commit message (Rafael)

In v3:
- fixed subtle bug in gpiod_count
- made irq_domain_add_simple() static inline (Marc)

In v2:
- added a new patch due to functionality in irq_comain_add_simple() (Linus)
- tagged patches 2-4 (Linus)
- Cc'ed to Rafael

Andy Shevchenko (6):
irqdomain: Introduce irq_domain_create_simple() API
gpiolib: Unify the checks on fwnode type
gpiolib: Move of_node operations to gpiolib-of and correct fwnode use
gpiolib: Introduce acpi_gpio_dev_init() and call it from core
gpiolib: Reuse device's fwnode to create IRQ domain
gpiolib: Fold conditionals into a simple ternary operator

Documentation/core-api/irq/irq-domain.rst | 22 ++++----
drivers/gpio/gpiolib-acpi.c | 7 +++
drivers/gpio/gpiolib-acpi.h | 4 ++
drivers/gpio/gpiolib-of.c | 6 ++-
drivers/gpio/gpiolib.c | 61 +++++++++--------------
include/linux/irqdomain.h | 19 +++++--
kernel/irq/irqdomain.c | 20 ++++----
7 files changed, 75 insertions(+), 64 deletions(-)

--
2.30.1