Re: [PATCH 0/5] gpio: Implement and utilize register structures for ISA drivers

From: Bartosz Golaszewski
Date: Thu Jun 09 2022 - 10:39:58 EST


On Mon, Jun 6, 2022 at 4:36 PM William Breathitt Gray
<william.gray@xxxxxxxxxx> wrote:
>
> 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. I
> hope to consolidate some of these code blocks in future patchsets.
>
> [1] https://lore.kernel.org/all/cover.1652201921.git.william.gray@xxxxxxxxxx/
>
> William Breathitt Gray (5):
> gpio: 104-dio-48e: Implement and utilize register structures
> gpio: 104-idi-48: Implement and utilize register structures
> gpio: 104-idio-16: Implement and utilize register structures
> gpio: gpio-mm: Implement and utilize register structures
> gpio: ws16c48: Implement and utilize register structures
>
> drivers/gpio/gpio-104-dio-48e.c | 157 +++++++++++++++++++++-----------
> drivers/gpio/gpio-104-idi-48.c | 128 +++++++++++++-------------
> drivers/gpio/gpio-104-idio-16.c | 58 ++++++++----
> drivers/gpio/gpio-gpio-mm.c | 116 ++++++++++++++---------
> drivers/gpio/gpio-ws16c48.c | 119 +++++++++++++++++-------
> 5 files changed, 366 insertions(+), 212 deletions(-)
>
>
> base-commit: f2906aa863381afb0015a9eb7fefad885d4e5a56
> --
> 2.36.1
>

Hi William,

Unlike the previous patches which were relatively simple, these seem
like there's a lot of space for breakage (even though they're
attempting to do a good thing). Have you tested the code on real
hardware?

Bart