|
|
Log in / Subscribe / Register

gpio: add kunit tests for GPIO core

From:  Bartosz Golaszewski <bartosz.golaszewski-AT-oss.qualcomm.com>
To:  Brendan Higgins <brendan.higgins-AT-linux.dev>, David Gow <david-AT-davidgow.net>, Rae Moar <raemoar63-AT-gmail.com>, Linus Walleij <linusw-AT-kernel.org>, Bartosz Golaszewski <brgl-AT-kernel.org>
Subject:  [PATCH v3 0/3] gpio: add kunit tests for GPIO core
Date:  Fri, 22 May 2026 15:42:15 +0200
Message-ID:  <20260522-gpiolib-kunit-v3-0-b15fe6987430@oss.qualcomm.com>
Cc:  linux-kselftest-AT-vger.kernel.org, kunit-dev-AT-googlegroups.com, linux-kernel-AT-vger.kernel.org, linux-gpio-AT-vger.kernel.org, Bartosz Golaszewski <bartosz.golaszewski-AT-oss.qualcomm.com>
Archive-link:  Article

This series adds a first batch of kunit tests for GPIO core. I intend to
gradually add more coverage for functionalities that can't really be
tested from user-space with the existing kernel selftests or libgpiod
tests.

Merging strategy: with an Ack from kunit maintainers, this can go
through the GPIO tree for v7.2.

Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
---
Changes in v3:
- Make kunit_platform_device_unregister() handle both cases of platform
  devices created with kunit_platform_device_alloc() +
  kunit_platform_device_add() and kunit_platform_device_register_full()
  (sashiko)
- Link to v2: https://patch.msgid.link/20260520-gpiolib-kunit-v2-0-cc9d...

Changes in v2:
- Remove cases of kunit killing a thread on test failure with device lock
  taken
- Fix a platform device leak on test failure
- New patch: provide kunit_platform_device_unregister()
- Link to v1: https://patch.msgid.link/20260518-gpiolib-kunit-v1-0-131e...

---
Bartosz Golaszewski (3):
      kunit: provide kunit_platform_device_register_full()
      kunit: provide kunit_platform_device_unregister()
      gpio: add kunit test cases for the GPIO subsystem

 drivers/gpio/Kconfig            |   8 +
 drivers/gpio/Makefile           |   1 +
 drivers/gpio/gpiolib-kunit.c    | 358 ++++++++++++++++++++++++++++++++++++++++
 include/kunit/platform_device.h |   6 +
 lib/kunit/platform.c            |  64 +++++++
 5 files changed, 437 insertions(+)
---
base-commit: 80dd246accce631c328ea43294e53b2b2dd2aa32
change-id: 20260326-gpiolib-kunit-d7f1b5541ffa

Best regards,
-- 
Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>




Copyright © 2026, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds