Re: [PATCH -v2 01/16] PCI: add declaration for pcibios_set_master()to pci core

From: Benjamin Herrenschmidt
Date: Mon Dec 05 2011 - 15:33:41 EST


On Mon, 2011-12-05 at 11:06 -0800, Jesse Barnes wrote:
> On Fri, 28 Oct 2011 15:47:35 -0600
> Myron Stowe <myron.stowe@xxxxxxxxxx> wrote:
>
> > From: Myron Stowe <mstowe@xxxxxxxxxx>
> >
> > Currently, pcibios_set_master() is implemented in architecture-
> > specific code. There is nothing architecture-specific about PCI's
> > 'latency timer'.
> >
> > This patch adds a declaration for pcibios_set_master() to PCI's core
> > in preperation for pulling the function itself up into the core.
> > Without the addition of this declaration, subsequent patches that
> > remove inline definitions of pcibios_set_master() would be removing
> > the only declaration of such.
> >
> > No functional change.
> >
> > Signed-off-by: Myron Stowe <myron.stowe@xxxxxxxxxx>
> > ---
>
> Ok this series is in -next. Let's see what breaks this time. :)

On the other hand...

One thing that annoys the sh*it out of me is that I cannot use
pcibios_set_master() to establish the DMA/iommu resources for a device,
because set_dma_mask() will be called -after- set_master(), thus I need
to provision every device with 32-bit DMA resources (which can be quite
scarse) just in case the driver doesn't later call set_dma_mask(64-bit).

If only we could reverse the call order... lots of drivers to fix
unfortunately.

In which case I -would- hook into pcibios_set_master()...

Cheers,
Ben.


--
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/