Re: [RFC v2 10/39] gpio: add HAS_IOPORT dependencies

From: Maciej W. Rozycki
Date: Mon May 02 2022 - 09:21:22 EST


On Fri, 29 Apr 2022, William Breathitt Gray wrote:

> > Good question. As far as I can see most (all?) of these have "select
> > ISA_BUS_API" which is "def_bool ISA". Now "config ISA" seems to
> > currently be repeated in architectures and doesn't have an explicit
> > HAS_IOPORT dependency (it maybe should have one). But it does only make
> > sense on architectures with HAS_IOPORT set.
>
> There is such a thing as ISA DMA, but you'll still need to initialize
> the device via the IO Port bus first, so perhaps setting HAS_IOPORT for
> "config ISA" is the right thing to do: all ISA devices are expected to
> communicate in some way via ioport.

Strictly speaking you can make an ISA device that only does MMIO (and I
believe in the early PC days there used to be ISA memory expansion cards
along with the EMS standard) which is also why the host memory area in the
15-16MiB range, the top 1MiB addressable on 16-bit ISA, can be excluded
from decoding to DRAM and accesses made there forwarded to ISA in I
believe all chipsets that provide actual ISA bus circuitry (rather than
just a degenerate form like LPC). That's an exception rather than the
rule though, nearly all ISA devices do decode in the port I/O space.
After all I/O is what the port I/O address space has been invented for.

FWIW,

Maciej