2012-10-26 16:48:27

by Shuah Khan

[permalink] [raw]
Subject: [PATCH RFT linux-next] frv: dma-mapping: support debug_dma_mapping_error

Add support for debug_dma_mapping_error() call to avoid warning from
debug_dma_unmap() interface when it checks for mapping error checked
status. Without this patch, device driver failed to check map error
warning is generated.

Signed-off-by: Shuah Khan <[email protected]>
---
arch/frv/include/asm/dma-mapping.h | 2 ++
1 file changed, 2 insertions(+)

diff --git a/arch/frv/include/asm/dma-mapping.h b/arch/frv/include/asm/dma-mapping.h
index dfb8110..d8a8aac 100644
--- a/arch/frv/include/asm/dma-mapping.h
+++ b/arch/frv/include/asm/dma-mapping.h
@@ -6,6 +6,7 @@
#include <asm/cacheflush.h>
#include <asm/scatterlist.h>
#include <asm/io.h>
+#include <linux/dma-debug.h>

/*
* See Documentation/DMA-API.txt for the description of how the
@@ -97,6 +98,7 @@ void dma_sync_sg_for_device(struct device *dev, struct scatterlist *sg, int nele
static inline
int dma_mapping_error(struct device *dev, dma_addr_t dma_addr)
{
+ debug_dma_mapping_error(dev, dma_addr);
return 0;
}

--
1.7.9.5



2012-10-26 17:15:21

by Shuah Khan

[permalink] [raw]
Subject: Re: [PATCH RFT linux-next] frv: dma-mapping: support debug_dma_mapping_error

On Fri, 2012-10-26 at 10:48 -0600, Shuah Khan wrote:
> Add support for debug_dma_mapping_error() call to avoid warning from
> debug_dma_unmap() interface when it checks for mapping error checked
> status. Without this patch, device driver failed to check map error
> warning is generated.
>
> Signed-off-by: Shuah Khan <[email protected]>

Please ignore this patch if frv doesn't use dma_map_page() and
dma_map_single() from arch/mips/include/asm/dma-mapping.

frv defines dma_map_page() and dma_map_single() in
arch/frv/mb93090-mb00/pci-dma.c and
arch/frv/mb93090-mb00/pci-dma-nommu.c

-- Shuah
> ---
> arch/frv/include/asm/dma-mapping.h | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/arch/frv/include/asm/dma-mapping.h b/arch/frv/include/asm/dma-mapping.h
> index dfb8110..d8a8aac 100644
> --- a/arch/frv/include/asm/dma-mapping.h
> +++ b/arch/frv/include/asm/dma-mapping.h
> @@ -6,6 +6,7 @@
> #include <asm/cacheflush.h>
> #include <asm/scatterlist.h>
> #include <asm/io.h>
> +#include <linux/dma-debug.h>
>
> /*
> * See Documentation/DMA-API.txt for the description of how the
> @@ -97,6 +98,7 @@ void dma_sync_sg_for_device(struct device *dev, struct scatterlist *sg, int nele
> static inline
> int dma_mapping_error(struct device *dev, dma_addr_t dma_addr)
> {
> + debug_dma_mapping_error(dev, dma_addr);
> return 0;
> }
>

2012-11-15 18:17:39

by Shuah Khan

[permalink] [raw]
Subject: Re: [PATCH RFT linux-next] frv: dma-mapping: support debug_dma_mapping_error

On Fri, 2012-10-26 at 11:15 -0600, Shuah Khan wrote:
> On Fri, 2012-10-26 at 10:48 -0600, Shuah Khan wrote:
> > Add support for debug_dma_mapping_error() call to avoid warning from
> > debug_dma_unmap() interface when it checks for mapping error checked
> > status. Without this patch, device driver failed to check map error
> > warning is generated.
> >
> > Signed-off-by: Shuah Khan <[email protected]>
>
> Please ignore this patch if frv doesn't use dma_map_page() and
> dma_map_single() from arch/mips/include/asm/dma-mapping.
>
> frv defines dma_map_page() and dma_map_single() in
> arch/frv/mb93090-mb00/pci-dma.c and
> arch/frv/mb93090-mb00/pci-dma-nommu.c
>
> -- Shuah
> > ---
> > arch/frv/include/asm/dma-mapping.h | 2 ++
> > 1 file changed, 2 insertions(+)
> >
> > diff --git a/arch/frv/include/asm/dma-mapping.h b/arch/frv/include/asm/dma-mapping.h
> > index dfb8110..d8a8aac 100644
> > --- a/arch/frv/include/asm/dma-mapping.h
> > +++ b/arch/frv/include/asm/dma-mapping.h
> > @@ -6,6 +6,7 @@
> > #include <asm/cacheflush.h>
> > #include <asm/scatterlist.h>
> > #include <asm/io.h>
> > +#include <linux/dma-debug.h>
> >
> > /*
> > * See Documentation/DMA-API.txt for the description of how the
> > @@ -97,6 +98,7 @@ void dma_sync_sg_for_device(struct device *dev, struct scatterlist *sg, int nele
> > static inline
> > int dma_mapping_error(struct device *dev, dma_addr_t dma_addr)
> > {
> > + debug_dma_mapping_error(dev, dma_addr);
> > return 0;
> > }
> >
>

Marek,

This one is for frv to go through your tree with the other arch patches
for debug_dmap_mapping_error(). However, I am not very sure if this
change is necessary for frv if it doesn't use generic dma interfaces. I
will defer to you and David on deciding if this patch is needed.

frv defines dma_map_page() and dma_map_single() in
arch/frv/mb93090-mb00/pci-dma.c and
arch/frv/mb93090-mb00/pci-dma-nommu.c

Thanks,
-- Shuah