On Mon, Feb 10, 2025, at 16:23, Andy Shevchenko wrote:
> +Cc: Arnd
>
>
> TBH I have no quick idea how to address this. It seems that io.h
> includes device.h
> for no reason (but I haven't checked that carefully). OTOH, we need only
> IOMEM_IS_ERR() definition which can simply be moved from io.h to err.h
> as the
> former includes the latter and the definition depends only on
> compiler_types.h.
>
> Arnd?
Removing linux/device.h from asm/io.h is probably the right step,
it really has no business in there and no other architecture
includes it. I don't see an IOMEM_IS_ERR() definition, do you
mean EEH_POSSIBLE_ERROR?
Most of asm/eeh.h probably shouldn't be included by asm/io.h
either, my guess is that we can get away with the
eeh_{s,}{b,w,l,q}{_be} helpers, eeh_memcpy_fromio() and
eeh_check_failure(), which have no dependency on 'struct
device' in the header.
Removing a giant header inclusion from another one likely causes
build regressions in drivers that should have included the
header (linux/device.h or something included by that) themselves,
so ideally there should be some separate build testing of
powerpc kernels.
Arnd
[Index of Archives]
[Pulseaudio]
[Linux Audio Users]
[ALSA Devel]
[Fedora Desktop]
[Fedora SELinux]
[Big List of Linux Books]
[Yosemite News]
[KDE Users]