Re: [PATCH 1/1] tty: serial: handle HAS_IOPORT dependencies

From: Arnd Bergmann
Date: Fri Oct 04 2024 - 12:57:33 EST


On Fri, Oct 4, 2024, at 16:24, Maciej W. Rozycki wrote:
> On Fri, 4 Oct 2024, Arnd Bergmann wrote:
>> There are also a lot of Arm systems that have no I/O space support at
>> all, such as the Apple M2 I'm using at the moment.
>
> Thanks for letting me know. Is it AArch64 only that has no port I/O
> support in the PCIe root complex nowadays, or is it 32-bit ARM as well?

I'm fairly sure we have some on 32-bit as well, it's certainly
up to the specific SoC rather than the architecture.

I think I've seen three different cases:

- Apple leaves out every feature from hardware that they don't
have to do for compliance, this also includes CPU stuff like
32-bit mode, big-endian or cacheable PCI mappings. I think IBMs
ppc64 chips are in a similar situation

- Some devices can probably do I/O space in hardware, but this is
left out from the driver or the DT because it has not been
validated to work

- Some devices have a limited number of mapping windows that
are shared between prefetchable-memory, non-prefetchable-memory,
config and io space. Leaving out I/O space completely is
easier than runtime remapping of the windows

Arnd