linux-gpio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 00/10] Introduce configfs-based interface for gpio-aggregator
@ 2025-02-03  3:12 Koichiro Den
  2025-02-03  3:12 ` [PATCH v2 01/10] gpio: aggregator: reorder functions to prepare for configfs introduction Koichiro Den
                   ` (10 more replies)
  0 siblings, 11 replies; 41+ messages in thread
From: Koichiro Den @ 2025-02-03  3:12 UTC (permalink / raw)
  To: linux-gpio
  Cc: brgl, geert+renesas, linus.walleij, maciej.borzecki, linux-kernel

This patch series introduces a configfs-based interface to gpio-aggregator
to address limitations in the existing 'new_device' interface.

The existing 'new_device' interface has several limitations:

  #1. No way to determine when GPIO aggregator creation is complete.
  #2. No way to retrieve errors when creating a GPIO aggregator.
  #3. No way to trace a GPIO line of an aggregator back to its
      corresponding physical device.
  #4. The 'new_device' echo does not indicate which virtual gpiochip<N>
      was created.
  #5. No way to assign names to GPIO lines exported through an aggregator.

Although Issue#1 to #3 could technically be resolved easily without
configfs, using configfs offers a streamlined, modern, and extensible
approach, especially since gpio-sim and gpio-virtuser already utilize
configfs.

This v2 patch series includes 10 patches:

  Patch#1:   Preparation for Patch#2.
  Patch#2:   Introduce minimal configfs interface.
             Addresses Issue#1 to Issue#3.
  Patch#3:   Addresses Issue#4.
  Patch#4:   Preparation for Patch#5.
  Patch#5:   Addresses Issue#5.
  Patch#6-7: Prepare for Patch#8.
  Patch#8:   Expose devices create with sysfs to configfs.
  Patch#9:   Suppress deferred probe for purely configfs-based aggregators.
  Patch#10:  Documentation.

Changes for v2:
  - Addressed feedback from Bartosz:
    * Expose devices created with sysfs to configfs.
    * Drop 'num_lines' attribute.
    * Fix bugs and crashes.
    * Organize internal symbol prefixes more cleanly.
  - Split diffs for improved reviewability.
  - Update kernel doc to reflect the changes.

RFC (v1): https://lore.kernel.org/linux-gpio/20250129155525.663780-1-koichiro.den@canonical.com/T/#u

Koichiro Den (10):
  gpio: aggregator: reorder functions to prepare for configfs
    introduction
  gpio: aggregator: introduce basic configfs interface
  gpio: aggregator: add read-only 'dev_name' configfs attribute
  gpio: aggregator: add read-write 'name' attribute
  gpio: aggregator: expose custom line names to forwarder gpio_chip
  gpio: aggregator: rename 'name' to 'key' in aggr_parse()
  gpio: aggregator: clean up gpio_aggregator_free()
  gpio: aggregator: expoose aggregator created via legacy sysfs to
    configfs
  gpio: aggregator: cancel deferred probe for devices created via
    configfs
  Documentation: gpio: document configfs interface for gpio-aggregator

 .../admin-guide/gpio/gpio-aggregator.rst      |   93 ++
 drivers/gpio/gpio-aggregator.c                | 1194 ++++++++++++++---
 2 files changed, 1103 insertions(+), 184 deletions(-)

-- 
2.45.2


^ permalink raw reply	[flat|nested] 41+ messages in thread

end of thread, other threads:[~2025-02-17 12:52 UTC | newest]

Thread overview: 41+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-02-03  3:12 [PATCH v2 00/10] Introduce configfs-based interface for gpio-aggregator Koichiro Den
2025-02-03  3:12 ` [PATCH v2 01/10] gpio: aggregator: reorder functions to prepare for configfs introduction Koichiro Den
2025-02-11 15:48   ` Geert Uytterhoeven
2025-02-03  3:12 ` [PATCH v2 02/10] gpio: aggregator: introduce basic configfs interface Koichiro Den
2025-02-04 12:48   ` Bartosz Golaszewski
2025-02-04 14:41     ` Koichiro Den
2025-02-05 13:39       ` Koichiro Den
2025-02-12 13:48   ` Geert Uytterhoeven
2025-02-13 14:12     ` Koichiro Den
2025-02-13 14:31       ` Geert Uytterhoeven
2025-02-03  3:12 ` [PATCH v2 03/10] gpio: aggregator: add read-only 'dev_name' configfs attribute Koichiro Den
2025-02-04 12:49   ` Bartosz Golaszewski
2025-02-04 14:44     ` Koichiro Den
2025-02-12 14:20   ` Geert Uytterhoeven
2025-02-13 14:13     ` Koichiro Den
2025-02-03  3:12 ` [PATCH v2 04/10] gpio: aggregator: add read-write 'name' attribute Koichiro Den
2025-02-12 14:27   ` Geert Uytterhoeven
2025-02-13 14:13     ` Koichiro Den
2025-02-03  3:12 ` [PATCH v2 05/10] gpio: aggregator: expose custom line names to forwarder gpio_chip Koichiro Den
2025-02-12 14:44   ` Geert Uytterhoeven
2025-02-13 14:13     ` Koichiro Den
2025-02-03  3:12 ` [PATCH v2 06/10] gpio: aggregator: rename 'name' to 'key' in aggr_parse() Koichiro Den
2025-02-12 14:45   ` Geert Uytterhoeven
2025-02-03  3:12 ` [PATCH v2 07/10] gpio: aggregator: clean up gpio_aggregator_free() Koichiro Den
2025-02-12 14:47   ` Geert Uytterhoeven
2025-02-03  3:12 ` [PATCH v2 08/10] gpio: aggregator: expoose aggregator created via legacy sysfs to configfs Koichiro Den
2025-02-04 13:12   ` Bartosz Golaszewski
2025-02-04 14:47     ` Koichiro Den
2025-02-12 15:36   ` Geert Uytterhoeven
2025-02-13 14:15     ` Koichiro Den
2025-02-03  3:12 ` [PATCH v2 09/10] gpio: aggregator: cancel deferred probe for devices created via configfs Koichiro Den
2025-02-04 13:14   ` Bartosz Golaszewski
2025-02-12 15:49     ` Geert Uytterhoeven
2025-02-16 13:15       ` Koichiro Den
2025-02-16 15:58         ` Bartosz Golaszewski
2025-02-17 12:52           ` Koichiro Den
2025-02-03  3:12 ` [PATCH v2 10/10] Documentation: gpio: document configfs interface for gpio-aggregator Koichiro Den
2025-02-12 15:55   ` Geert Uytterhoeven
2025-02-13 14:17     ` Koichiro Den
2025-02-12 13:14 ` [PATCH v2 00/10] Introduce configfs-based " Geert Uytterhoeven
2025-02-13 14:09   ` Koichiro Den

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).