[PATCH] Bugfix to commit 18dabf473e15850c0dbc8ff13ac1e2806d542c15

Grant Likely grant.likely at secretlab.ca
Wed Oct 24 01:35:49 EST 2007


On 10/23/07, Grant Likely <grant.likely at secretlab.ca> wrote:
> From: Grant Likely <grant.likely at secretlab.ca>
>
> Fixup for commit 18dabf473e15850c0dbc8ff13ac1e2806d542c15.  Changes to
> dma_map_sg where done in asm-x86/dma-mapping_32.h, but were not mirrored
> in include/asm-powerpc/dma-mapping.h
>
> Signed-off-by: Grant Likely <grant.likely at secretlab.ca>
> ---
>
> Linus, I cannot build an arch/powerpc kernel without this patch.

Oops, ignore this patch.  It's doesn't change all the references, it
uses the wrong method for calculating dma_address and 2 other people
have already sent the fix for this.

/me puts on a paper bag
g.

>
> Cheers,
> g.
>
>  include/asm-powerpc/dma-mapping.h |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/include/asm-powerpc/dma-mapping.h b/include/asm-powerpc/dma-mapping.h
> index 65be95d..fd33ce4 100644
> --- a/include/asm-powerpc/dma-mapping.h
> +++ b/include/asm-powerpc/dma-mapping.h
> @@ -285,9 +285,9 @@ dma_map_sg(struct device *dev, struct scatterlist *sgl, int nents,
>         BUG_ON(direction == DMA_NONE);
>
>         for_each_sg(sgl, sg, nents, i) {
> -               BUG_ON(!sg->page);
> +               BUG_ON(!sg_page(sg));
>                 __dma_sync_page(sg->page, sg->offset, sg->length, direction);
> -               sg->dma_address = page_to_bus(sg->page) + sg->offset;
> +               sg->dma_address = sg_phys(sg);
>         }
>
>         return nents;
>
>


-- 
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.
grant.likely at secretlab.ca
(403) 399-0195



More information about the Linuxppc-dev mailing list