linux-gpio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: William Breathitt Gray <william.gray@linaro.org>
To: linus.walleij@linaro.org, brgl@bgdev.pl
Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org,
	William Breathitt Gray <william.gray@linaro.org>,
	John Hentges <jhentges@accesio.com>,
	Jay Dolan <jay.dolan@accesio.com>,
	Fred Eckert <Frede@cmslaser.com>,
	Paul Demetrotion <pdemetrotion@winsystems.com>,
	techsupport@winsystems.com
Subject: [PATCH v2 0/6] gpio: Implement and utilize register structures for ISA drivers
Date: Thu,  7 Jul 2022 14:10:02 -0400	[thread overview]
Message-ID: <cover.1657216200.git.william.gray@linaro.org> (raw)

Changes in v2:
 - Implement support for the Intel 8255 interface as a new gpio-i8255
   module; common code among gpio-104-dio-48e, gpio-104-idi-48, and
   gpio-gpio-mm are consolidated in the gpio-i8255 module
 - Refactor the gpio-104-dio-48e, gpio-104-idi-48, and gpio-gpio-mm to
   utilize the new gpio-i8255 functions; this greatly simplifies the
   changes for these drivers

The PC104/ISA drivers were updated to use I/O memory accessor calls such
as ioread8()/iowrite8() in a previous patch series [1]. This
patchset is a continuation of the effort to improve the code readability
and reduce magic numbers by implementing and utilizing named register
data structures.

One of the benefits is that we can now observe more easily similarities
in devices that share similar interfaces; such as the i8255 interfaces
used by the 104-DIO-48E, 104-IDI-48, and GPIO-MM drivers -- as well as
the similar interface used by the 104-IDIO-16 and PCI-IDIO-16 drivers.

A new module supporting the Intel 8255 interface is introduced to
consolidate the common code found among the 104-DIO-48E, 104-IDI-48, and
GPIO-MM drivers.

[1] https://lore.kernel.org/all/cover.1652201921.git.william.gray@linaro.org/

William Breathitt Gray (6):
  gpio: i8255: Introduce the i8255 module
  gpio: 104-dio-48e: Implement and utilize register structures
  gpio: 104-idi-48: Implement and utilize register structures
  gpio: gpio-mm: Implement and utilize register structures
  gpio: 104-idio-16: Implement and utilize register structures
  gpio: ws16c48: Implement and utilize register structures

 MAINTAINERS                     |   6 +
 drivers/gpio/Kconfig            |   6 +
 drivers/gpio/Makefile           |   1 +
 drivers/gpio/gpio-104-dio-48e.c | 224 +++++++++-------------------
 drivers/gpio/gpio-104-idi-48.c  | 123 +++++++---------
 drivers/gpio/gpio-104-idio-16.c |  58 +++++---
 drivers/gpio/gpio-gpio-mm.c     | 177 +++++------------------
 drivers/gpio/gpio-i8255.c       | 249 ++++++++++++++++++++++++++++++++
 drivers/gpio/gpio-ws16c48.c     | 119 ++++++++++-----
 include/linux/gpio/i8255.h      |  34 +++++
 10 files changed, 575 insertions(+), 422 deletions(-)
 create mode 100644 drivers/gpio/gpio-i8255.c
 create mode 100644 include/linux/gpio/i8255.h


base-commit: f2906aa863381afb0015a9eb7fefad885d4e5a56
-- 
2.36.1


             reply	other threads:[~2022-07-07 23:16 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-07 18:10 William Breathitt Gray [this message]
2022-07-07 18:10 ` [PATCH v2 1/6] gpio: i8255: Introduce the i8255 module William Breathitt Gray
2022-07-08 14:40   ` Andy Shevchenko
2022-07-12  2:31     ` William Breathitt Gray
2022-07-11 13:02   ` Linus Walleij
2022-07-12  3:06     ` William Breathitt Gray
2022-07-13  7:37       ` Bartosz Golaszewski
2022-07-13 10:10         ` Andy Shevchenko
2022-07-13 10:49           ` William Breathitt Gray
2022-07-13 11:38             ` Andy Shevchenko
2022-07-07 18:10 ` [PATCH v2 2/6] gpio: 104-dio-48e: Implement and utilize register structures William Breathitt Gray
2022-07-07 18:10 ` [PATCH v2 3/6] gpio: 104-idi-48: " William Breathitt Gray
2022-07-07 18:10 ` [PATCH v2 4/6] gpio: gpio-mm: " William Breathitt Gray
2022-07-07 18:10 ` [PATCH v2 5/6] gpio: 104-idio-16: " William Breathitt Gray
2022-07-07 18:10 ` [PATCH v2 6/6] gpio: ws16c48: " William Breathitt Gray

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover.1657216200.git.william.gray@linaro.org \
    --to=william.gray@linaro.org \
    --cc=Frede@cmslaser.com \
    --cc=brgl@bgdev.pl \
    --cc=jay.dolan@accesio.com \
    --cc=jhentges@accesio.com \
    --cc=linus.walleij@linaro.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pdemetrotion@winsystems.com \
    --cc=techsupport@winsystems.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).