linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/23] gpio: mockup: support dynamically created and removed chips
@ 2020-09-04 15:45 Bartosz Golaszewski
  2020-09-04 15:45 ` [PATCH 01/23] lib: cmdline: export next_arg() Bartosz Golaszewski
                   ` (22 more replies)
  0 siblings, 23 replies; 74+ messages in thread
From: Bartosz Golaszewski @ 2020-09-04 15:45 UTC (permalink / raw)
  To: Linus Walleij, Jonathan Corbet, Mika Westerberg, Andy Shevchenko,
	Kent Gibson
  Cc: linux-gpio, linux-doc, linux-kernel, linux-acpi, Bartosz Golaszewski

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

We're about to merge w V2 user API for GPIO. In user-space we're using the
gpio-mockup driver for testing but it's quite cumbersome (needs unloading
and reloading to change chip configuration) and not very extensible (config
is passed over module params).

This series proposes to extend the debugfs interface to support dynamic
creation and removal of dummy chips, with extensible options.

First 3 patches add some lib functionality we'll use later on. Next 3 contain
general gpiolib refactoring and can be picked up independently.

Next we refactor gpio-mockup and finally add the delete_device and new_device
attributes. Last patch adds documentation for gpio-mockup so I'm not going into
detail on how the new interface works - the doc describes it pretty well.

Bartosz Golaszewski (23):
  lib: cmdline: export next_arg()
  lib: string_helpers: provide kfree_strarray()
  lib: uaccess: provide getline_from_user()
  gpiolib: generalize devprop_gpiochip_set_names() for device properties
  gpiolib: unexport devprop_gpiochip_set_names()
  gpiolib: switch to simpler IDA interface
  gpio: mockup: drop unneeded includes
  gpio: mockup: use pr_fmt()
  gpio: mockup: use KBUILD_MODNAME
  gpio: mockup: fix resource leak in error path
  gpio: mockup: remove the limit on number of dummy chips
  gpio: mockup: define a constant for chip label size
  gpio: mockup: pass the chip label as device property
  gpio: mockup: use the generic 'gpio-line-names' property
  gpio: mockup: use dynamic device IDs
  gpio: mockup: refactor the module init function
  gpio: mockup: rename and move around debugfs callbacks
  gpio: mockup: require debugfs to build
  gpio: mockup: add a symlink for the per-chip debugfs directory
  gpio: mockup: add a lock for dummy device list
  gpio: mockup: provide a way to delete dummy chips
  gpio: mockup: provide a way to create new dummy chips
  Documentation: gpio: add documentation for gpio-mockup

 .../admin-guide/gpio/gpio-mockup.rst          |  87 +++
 drivers/gpio/Kconfig                          |   1 +
 drivers/gpio/Makefile                         |   1 -
 drivers/gpio/gpio-mockup.c                    | 614 ++++++++++++++----
 drivers/gpio/gpiolib-acpi.c                   |   3 -
 drivers/gpio/gpiolib-devprop.c                |  63 --
 drivers/gpio/gpiolib-of.c                     |   5 -
 drivers/gpio/gpiolib.c                        |  62 +-
 include/linux/gpio/driver.h                   |   3 -
 include/linux/string_helpers.h                |   2 +
 include/linux/uaccess.h                       |   3 +
 lib/cmdline.c                                 |   1 +
 lib/string_helpers.c                          |  22 +
 lib/usercopy.c                                |  37 ++
 14 files changed, 705 insertions(+), 199 deletions(-)
 create mode 100644 Documentation/admin-guide/gpio/gpio-mockup.rst
 delete mode 100644 drivers/gpio/gpiolib-devprop.c

-- 
2.26.1


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

end of thread, other threads:[~2020-09-11 14:36 UTC | newest]

Thread overview: 74+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-04 15:45 [PATCH 00/23] gpio: mockup: support dynamically created and removed chips Bartosz Golaszewski
2020-09-04 15:45 ` [PATCH 01/23] lib: cmdline: export next_arg() Bartosz Golaszewski
2020-09-04 15:45 ` [PATCH 02/23] lib: string_helpers: provide kfree_strarray() Bartosz Golaszewski
2020-09-04 16:33   ` Andy Shevchenko
2020-09-04 15:45 ` [PATCH 03/23] lib: uaccess: provide getline_from_user() Bartosz Golaszewski
2020-09-04 16:35   ` Andy Shevchenko
2020-09-07 10:02     ` Bartosz Golaszewski
2020-09-07 10:18       ` Andy Shevchenko
2020-09-07 10:28         ` Bartosz Golaszewski
2020-09-07 11:45           ` Andy Shevchenko
2020-09-07 11:57             ` Bartosz Golaszewski
2020-09-04 15:45 ` [PATCH 04/23] gpiolib: generalize devprop_gpiochip_set_names() for device properties Bartosz Golaszewski
2020-09-04 16:38   ` Andy Shevchenko
2020-09-07 10:56     ` Bartosz Golaszewski
2020-09-04 15:45 ` [PATCH 05/23] gpiolib: unexport devprop_gpiochip_set_names() Bartosz Golaszewski
2020-09-04 16:40   ` Andy Shevchenko
2020-09-07 10:53     ` Bartosz Golaszewski
2020-09-04 15:45 ` [PATCH 06/23] gpiolib: switch to simpler IDA interface Bartosz Golaszewski
2020-09-04 16:41   ` Andy Shevchenko
2020-09-07 10:50     ` Bartosz Golaszewski
2020-09-04 15:45 ` [PATCH 07/23] gpio: mockup: drop unneeded includes Bartosz Golaszewski
2020-09-04 15:45 ` [PATCH 08/23] gpio: mockup: use pr_fmt() Bartosz Golaszewski
2020-09-04 16:29   ` Andy Shevchenko
2020-09-04 15:45 ` [PATCH 09/23] gpio: mockup: use KBUILD_MODNAME Bartosz Golaszewski
2020-09-04 16:30   ` Andy Shevchenko
2020-09-04 15:45 ` [PATCH 10/23] gpio: mockup: fix resource leak in error path Bartosz Golaszewski
2020-09-04 17:00   ` Andy Shevchenko
2020-09-07 11:04     ` Bartosz Golaszewski
2020-09-07 11:47       ` Andy Shevchenko
2020-09-04 15:45 ` [PATCH 11/23] gpio: mockup: remove the limit on number of dummy chips Bartosz Golaszewski
2020-09-04 15:45 ` [PATCH 12/23] gpio: mockup: define a constant for chip label size Bartosz Golaszewski
2020-09-04 15:45 ` [PATCH 13/23] gpio: mockup: pass the chip label as device property Bartosz Golaszewski
2020-09-04 16:48   ` Andy Shevchenko
2020-09-07 11:01     ` Bartosz Golaszewski
2020-09-07 11:48       ` Andy Shevchenko
2020-09-04 15:45 ` [PATCH 14/23] gpio: mockup: use the generic 'gpio-line-names' property Bartosz Golaszewski
2020-09-04 16:46   ` Andy Shevchenko
2020-09-07 10:58     ` Bartosz Golaszewski
2020-09-04 15:45 ` [PATCH 15/23] gpio: mockup: use dynamic device IDs Bartosz Golaszewski
2020-09-04 16:49   ` Andy Shevchenko
2020-09-07 11:04     ` Bartosz Golaszewski
2020-09-07 11:50       ` Andy Shevchenko
2020-09-07 11:59         ` Bartosz Golaszewski
2020-09-04 15:45 ` [PATCH 16/23] gpio: mockup: refactor the module init function Bartosz Golaszewski
2020-09-04 16:50   ` Andy Shevchenko
2020-09-07 11:05     ` Bartosz Golaszewski
2020-09-07 11:51       ` Andy Shevchenko
2020-09-04 15:45 ` [PATCH 17/23] gpio: mockup: rename and move around debugfs callbacks Bartosz Golaszewski
2020-09-04 15:45 ` [PATCH 18/23] gpio: mockup: require debugfs to build Bartosz Golaszewski
2020-09-04 15:45 ` [PATCH 19/23] gpio: mockup: add a symlink for the per-chip debugfs directory Bartosz Golaszewski
2020-09-04 15:45 ` [PATCH 20/23] gpio: mockup: add a lock for dummy device list Bartosz Golaszewski
2020-09-04 15:45 ` [PATCH 21/23] gpio: mockup: provide a way to delete dummy chips Bartosz Golaszewski
2020-09-04 16:56   ` Andy Shevchenko
2020-09-04 15:45 ` [PATCH 22/23] gpio: mockup: provide a way to create new " Bartosz Golaszewski
2020-09-04 15:45 ` [PATCH 23/23] Documentation: gpio: add documentation for gpio-mockup Bartosz Golaszewski
2020-09-04 16:58   ` Andy Shevchenko
2020-09-05  3:15   ` Randy Dunlap
2020-09-07  9:59     ` Andy Shevchenko
2020-09-07 10:26       ` Bartosz Golaszewski
2020-09-07 11:53         ` Andy Shevchenko
2020-09-07 12:06           ` Bartosz Golaszewski
2020-09-07 12:22             ` Greg Kroah-Hartman
2020-09-07 13:49               ` Bartosz Golaszewski
2020-09-07 14:08                 ` Andy Shevchenko
2020-09-07 15:14                   ` Bartosz Golaszewski
2020-09-07 15:23                   ` Geert Uytterhoeven
2020-09-07 16:08                     ` Bartosz Golaszewski
2020-09-08 17:03               ` Bartosz Golaszewski
2020-09-11 12:56                 ` Greg Kroah-Hartman
2020-09-11 13:07                   ` Bartosz Golaszewski
2020-09-07 12:38             ` Andy Shevchenko
2020-09-07 12:57               ` Bartosz Golaszewski
2020-09-07 13:52                 ` Andy Shevchenko
2020-09-07 10:45     ` Bartosz Golaszewski

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).