> The changes in ppc are only the patch below.  The others are in
> sound/*.  I wrote it as an inline function simply it's so short and I
> didn't want extra exports.

Thanks. I -may- do something nicer, we'll see, but in any case, I'll
try to have something in .27

Cheers,
Ben.

> 
> thanks,
> 
> Takashi
> 
> ---
> commit 2c8662fde57af4cf928d17e089dc3dd2096f4b30
> Author: Takashi Iwai <[EMAIL PROTECTED]>
> Date:   Tue Jun 17 16:39:04 2008 +0200
> 
>     ppc: Add dma_mmap_coherent() for PPC32
>     
>     A very lazy version of dma_mmap_coherent() implementation for ppc32.
>     
>     Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]>
> 
> diff --git a/include/asm-powerpc/dma-mapping.h 
> b/include/asm-powerpc/dma-mapping.h
> index bbefb69..a6a9675 100644
> --- a/include/asm-powerpc/dma-mapping.h
> +++ b/include/asm-powerpc/dma-mapping.h
> @@ -306,6 +306,24 @@ static inline void dma_unmap_sg(struct device *dev, 
> struct scatterlist *sg,
>       /* We don't do anything here. */
>  }
>  
> +/*
> + * A helper to mmap the pages allocated via dma_alloc_coherent()
> + */
> +static inline int dma_mmap_coherent(struct device *dev,
> +                                 struct vm_area_struct *vma,
> +                                 void *cpu_addr, dma_addr_t handle,
> +                                 size_t size)
> +{
> +     struct page *pg;
> +#ifdef CONFIG_NOT_COHERENT_CACHE
> +     /* I'm too lazy and can't stop using bus_to_virt() here... */
> +     cpu_addr = bus_to_virt(handle);
> +#endif
> +     pg = virt_to_page(cpu_addr);
> +     return remap_pfn_range(vma, vma->vm_start,
> +                            page_to_pfn(pg) + vma->vm_pgoff,
> +                            size, vma->vm_page_prot);
> +}
>  #endif /* CONFIG_PPC64 */
>  
>  static inline void dma_sync_single_for_cpu(struct device *dev,

_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev

Reply via email to