Re: [PATCH-RFC 1/2] tile: don't panic on iomap

From: Michael S. Tsirkin
Date: Wed Nov 30 2011 - 06:58:30 EST


On Wed, Nov 30, 2011 at 09:09:18AM +0000, Arnd Bergmann wrote:
> On Wednesday 30 November 2011, Michael S. Tsirkin wrote:
> >
> > On Tue, Nov 29, 2011 at 10:05:11PM +0000, Arnd Bergmann wrote:
> > > On Tuesday 29 November 2011, Michael S. Tsirkin wrote:
> > > > diff --git a/arch/tile/include/asm/io.h b/arch/tile/include/asm/io.h
> > > > index c9ea165..be6090d 100644
> > > > --- a/arch/tile/include/asm/io.h
> > > > +++ b/arch/tile/include/asm/io.h
> > > > @@ -204,7 +204,8 @@ static inline long ioport_panic(void)
> > > >
> > > > static inline void __iomem *ioport_map(unsigned long port, unsigned int len)
> > > > {
> > > > - return (void __iomem *) ioport_panic();
> > > > + pr_info("Trying to map an IO resource - it does not exit on tile.\n");
> > > > + return NULL;
> > > > }
> > >
> > > Why not just set CONFIG_NO_IOPORT and make this unavailable at compile time?
> > >
> > > Arnd
> >
> > Well I think CONFIG_NO_IOPORT only has effect if you pull in asm-generic/io.h.
> > This might work but I have no idea.
>
> NO_IOPORT ha nothing to do with asm-generic, it just makes lib/iomap.c leave out
> the calls to ioport_map, and prevent all drivers that call ioport_map from being
> built.

Yes. But lib/iomap.c isn't even linked unless GENERIC_IOMAP is set.

> > Presumably whoever wrote that architecture considered and discarded setting GENERIC_IOMAP.
>
> The tile PCI controller is apparently special in that it does not map the
> PIO region into MMIO space, or make it available in any other way, so generic
> iomap with IOCOND is pointless. Setting NO_IPORT will still mean that drivers
> using ioport_map will not be built. This mostly impacts the legacy (non-AHCI)
> ATA controllers, which I assume are not used on tile anyway.
>
> Arnd


I don't object to setting NO_IPORT at all, but this won't help address
the problem this patch is fixing, which is to use a generic pci_iomap
on tile.

--
MST
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/