Re: [PATCH] asm-generic/io.h: rework split ioread64/iowrite64 helpers

From: Arnd Bergmann
Date: Thu Feb 27 2025 - 12:01:15 EST


On Thu, Feb 27, 2025, at 16:20, Andy Shevchenko wrote:
> On Thu, Feb 27, 2025 at 03:19:01PM +0100, Arnd Bergmann wrote:
>> From: Arnd Bergmann <arnd@xxxxxxxx>
>>
>> There are two incompatible sets of definitions of these eight functions:
>> On 64-bit architectures setting CONFIG_HAS_IOPORT, they turn into
>> either pair of 32-bit PIO (inl/outl) accesses or a single 64-bit MMIO
>> (readq/writeq). On other 64-bit architectures, they are always split
>> into 32-bit accesses.
>>
>> Depending on which header gets included in a driver, there are
>> additionally definitions for ioread64()/iowrite64() that are
>> expected to produce a 64-bit register MMIO access on all 64-bit
>> architectures.
>>
>> To separate the conflicting definitions, make the version in
>> include/linux/io-64-nonatomic-*.h visible on all architectures
>> but pick the one from lib/iomap.c on architectures that set
>> CONFIG_GENERIC_IOMAP in place of the default fallback.
>
> Thanks, this is good to go in my opinion,
> Acked-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>

Thanks, I've put it into my asm-generic tree now.

Arnd