Re: linux-next: manual merge of the xen-tip tree with the arm-soc tree

2014-12-08 Thread Will Deacon
On Mon, Dec 08, 2014 at 07:49:08AM +, Stephen Rothwell wrote:
> Hi all,
> 
> Today's linux-next merge of the xen-tip tree got a conflict in
> arch/arm/include/asm/dma-mapping.h between commits a3a60f81ee6f
> ("dma-mapping: replace set_arch_dma_coherent_ops with
> arch_setup_dma_ops") and 4bb25789ed28 ("arm: dma-mapping: plumb our
> iommu mapping ops into arch_setup_dma_ops") from the arm-soc tree and
> commit 3d5391ac6f5e ("arm: introduce is_device_dma_coherent") from the
> xen-tip tree.
> 
> I fixed it up (see below) and can carry the fix as necessary (no action
> is required).
> 
> I also neede this merge fix patch:
> 
> From: Stephen Rothwell 
> Date: Mon, 8 Dec 2014 18:46:59 +1100
> Subject: [PATCH] arm: introduce is_device_dma_coherent merge fix
> 
> Signed-off-by: Stephen Rothwell 
> ---
>  arch/arm/mm/dma-mapping.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/arch/arm/mm/dma-mapping.c b/arch/arm/mm/dma-mapping.c
> index 09645f00bd17..43064cbe58f9 100644
> --- a/arch/arm/mm/dma-mapping.c
> +++ b/arch/arm/mm/dma-mapping.c
> @@ -2058,6 +2058,7 @@ void arch_setup_dma_ops(struct device *dev, u64 
> dma_base, u64 size,
>   else
>   dma_ops = arm_get_dma_map_ops(coherent);
>  
> + dev->archdata.dma_coherent = coherent;
>   set_dma_ops(dev, dma_ops);
>  }

Looks good to me.

Cheers,

Will

> -- 
> 2.1.3
> 
> -- 
> Cheers,
> Stephen Rothwells...@canb.auug.org.au
> 
> diff --cc arch/arm/include/asm/dma-mapping.h
> index 9410b7e548fc,e6e3446abdf6..
> --- a/arch/arm/include/asm/dma-mapping.h
> +++ b/arch/arm/include/asm/dma-mapping.h
> @@@ -121,13 -121,20 +121,19 @@@ static inline unsigned long dma_max_pfn
>   }
>   #define dma_max_pfn(dev) dma_max_pfn(dev)
>   
>  -static inline int set_arch_dma_coherent_ops(struct device *dev)
>  -{
>  -dev->archdata.dma_coherent = true;
>  -set_dma_ops(dev, _coherent_dma_ops);
>  -return 0;
>  -}
>  -#define set_arch_dma_coherent_ops(dev)  set_arch_dma_coherent_ops(dev)
>  +#define arch_setup_dma_ops arch_setup_dma_ops
>  +extern void arch_setup_dma_ops(struct device *dev, u64 dma_base, u64 size,
>  +   struct iommu_ops *iommu, bool coherent);
>  +
>  +#define arch_teardown_dma_ops arch_teardown_dma_ops
>  +extern void arch_teardown_dma_ops(struct device *dev);
>   
> + /* do not use this function in a driver */
> + static inline bool is_device_dma_coherent(struct device *dev)
> + {
> + return dev->archdata.dma_coherent;
> + }
> + 
>   static inline dma_addr_t phys_to_dma(struct device *dev, phys_addr_t paddr)
>   {
>   unsigned int offset = paddr & ~PAGE_MASK;


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


Re: linux-next: manual merge of the xen-tip tree with the arm-soc tree

2014-12-08 Thread Will Deacon
On Mon, Dec 08, 2014 at 07:49:08AM +, Stephen Rothwell wrote:
 Hi all,
 
 Today's linux-next merge of the xen-tip tree got a conflict in
 arch/arm/include/asm/dma-mapping.h between commits a3a60f81ee6f
 (dma-mapping: replace set_arch_dma_coherent_ops with
 arch_setup_dma_ops) and 4bb25789ed28 (arm: dma-mapping: plumb our
 iommu mapping ops into arch_setup_dma_ops) from the arm-soc tree and
 commit 3d5391ac6f5e (arm: introduce is_device_dma_coherent) from the
 xen-tip tree.
 
 I fixed it up (see below) and can carry the fix as necessary (no action
 is required).
 
 I also neede this merge fix patch:
 
 From: Stephen Rothwell s...@canb.auug.org.au
 Date: Mon, 8 Dec 2014 18:46:59 +1100
 Subject: [PATCH] arm: introduce is_device_dma_coherent merge fix
 
 Signed-off-by: Stephen Rothwell s...@canb.auug.org.au
 ---
  arch/arm/mm/dma-mapping.c | 1 +
  1 file changed, 1 insertion(+)
 
 diff --git a/arch/arm/mm/dma-mapping.c b/arch/arm/mm/dma-mapping.c
 index 09645f00bd17..43064cbe58f9 100644
 --- a/arch/arm/mm/dma-mapping.c
 +++ b/arch/arm/mm/dma-mapping.c
 @@ -2058,6 +2058,7 @@ void arch_setup_dma_ops(struct device *dev, u64 
 dma_base, u64 size,
   else
   dma_ops = arm_get_dma_map_ops(coherent);
  
 + dev-archdata.dma_coherent = coherent;
   set_dma_ops(dev, dma_ops);
  }

Looks good to me.

Cheers,

Will

 -- 
 2.1.3
 
 -- 
 Cheers,
 Stephen Rothwells...@canb.auug.org.au
 
 diff --cc arch/arm/include/asm/dma-mapping.h
 index 9410b7e548fc,e6e3446abdf6..
 --- a/arch/arm/include/asm/dma-mapping.h
 +++ b/arch/arm/include/asm/dma-mapping.h
 @@@ -121,13 -121,20 +121,19 @@@ static inline unsigned long dma_max_pfn
   }
   #define dma_max_pfn(dev) dma_max_pfn(dev)
   
  -static inline int set_arch_dma_coherent_ops(struct device *dev)
  -{
  -dev-archdata.dma_coherent = true;
  -set_dma_ops(dev, arm_coherent_dma_ops);
  -return 0;
  -}
  -#define set_arch_dma_coherent_ops(dev)  set_arch_dma_coherent_ops(dev)
  +#define arch_setup_dma_ops arch_setup_dma_ops
  +extern void arch_setup_dma_ops(struct device *dev, u64 dma_base, u64 size,
  +   struct iommu_ops *iommu, bool coherent);
  +
  +#define arch_teardown_dma_ops arch_teardown_dma_ops
  +extern void arch_teardown_dma_ops(struct device *dev);
   
 + /* do not use this function in a driver */
 + static inline bool is_device_dma_coherent(struct device *dev)
 + {
 + return dev-archdata.dma_coherent;
 + }
 + 
   static inline dma_addr_t phys_to_dma(struct device *dev, phys_addr_t paddr)
   {
   unsigned int offset = paddr  ~PAGE_MASK;


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


linux-next: manual merge of the xen-tip tree with the arm-soc tree

2014-12-07 Thread Stephen Rothwell
Hi all,

Today's linux-next merge of the xen-tip tree got a conflict in
arch/arm/include/asm/dma-mapping.h between commits a3a60f81ee6f
("dma-mapping: replace set_arch_dma_coherent_ops with
arch_setup_dma_ops") and 4bb25789ed28 ("arm: dma-mapping: plumb our
iommu mapping ops into arch_setup_dma_ops") from the arm-soc tree and
commit 3d5391ac6f5e ("arm: introduce is_device_dma_coherent") from the
xen-tip tree.

I fixed it up (see below) and can carry the fix as necessary (no action
is required).

I also neede this merge fix patch:

From: Stephen Rothwell 
Date: Mon, 8 Dec 2014 18:46:59 +1100
Subject: [PATCH] arm: introduce is_device_dma_coherent merge fix

Signed-off-by: Stephen Rothwell 
---
 arch/arm/mm/dma-mapping.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mm/dma-mapping.c b/arch/arm/mm/dma-mapping.c
index 09645f00bd17..43064cbe58f9 100644
--- a/arch/arm/mm/dma-mapping.c
+++ b/arch/arm/mm/dma-mapping.c
@@ -2058,6 +2058,7 @@ void arch_setup_dma_ops(struct device *dev, u64 dma_base, 
u64 size,
else
dma_ops = arm_get_dma_map_ops(coherent);
 
+   dev->archdata.dma_coherent = coherent;
set_dma_ops(dev, dma_ops);
 }
 
-- 
2.1.3

-- 
Cheers,
Stephen Rothwells...@canb.auug.org.au

diff --cc arch/arm/include/asm/dma-mapping.h
index 9410b7e548fc,e6e3446abdf6..
--- a/arch/arm/include/asm/dma-mapping.h
+++ b/arch/arm/include/asm/dma-mapping.h
@@@ -121,13 -121,20 +121,19 @@@ static inline unsigned long dma_max_pfn
  }
  #define dma_max_pfn(dev) dma_max_pfn(dev)
  
 -static inline int set_arch_dma_coherent_ops(struct device *dev)
 -{
 -  dev->archdata.dma_coherent = true;
 -  set_dma_ops(dev, _coherent_dma_ops);
 -  return 0;
 -}
 -#define set_arch_dma_coherent_ops(dev)set_arch_dma_coherent_ops(dev)
 +#define arch_setup_dma_ops arch_setup_dma_ops
 +extern void arch_setup_dma_ops(struct device *dev, u64 dma_base, u64 size,
 + struct iommu_ops *iommu, bool coherent);
 +
 +#define arch_teardown_dma_ops arch_teardown_dma_ops
 +extern void arch_teardown_dma_ops(struct device *dev);
  
+ /* do not use this function in a driver */
+ static inline bool is_device_dma_coherent(struct device *dev)
+ {
+   return dev->archdata.dma_coherent;
+ }
+ 
  static inline dma_addr_t phys_to_dma(struct device *dev, phys_addr_t paddr)
  {
unsigned int offset = paddr & ~PAGE_MASK;


pgpAgUrACVix7.pgp
Description: OpenPGP digital signature


linux-next: manual merge of the xen-tip tree with the arm-soc tree

2014-12-07 Thread Stephen Rothwell
Hi all,

Today's linux-next merge of the xen-tip tree got a conflict in
arch/arm/include/asm/dma-mapping.h between commits a3a60f81ee6f
(dma-mapping: replace set_arch_dma_coherent_ops with
arch_setup_dma_ops) and 4bb25789ed28 (arm: dma-mapping: plumb our
iommu mapping ops into arch_setup_dma_ops) from the arm-soc tree and
commit 3d5391ac6f5e (arm: introduce is_device_dma_coherent) from the
xen-tip tree.

I fixed it up (see below) and can carry the fix as necessary (no action
is required).

I also neede this merge fix patch:

From: Stephen Rothwell s...@canb.auug.org.au
Date: Mon, 8 Dec 2014 18:46:59 +1100
Subject: [PATCH] arm: introduce is_device_dma_coherent merge fix

Signed-off-by: Stephen Rothwell s...@canb.auug.org.au
---
 arch/arm/mm/dma-mapping.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mm/dma-mapping.c b/arch/arm/mm/dma-mapping.c
index 09645f00bd17..43064cbe58f9 100644
--- a/arch/arm/mm/dma-mapping.c
+++ b/arch/arm/mm/dma-mapping.c
@@ -2058,6 +2058,7 @@ void arch_setup_dma_ops(struct device *dev, u64 dma_base, 
u64 size,
else
dma_ops = arm_get_dma_map_ops(coherent);
 
+   dev-archdata.dma_coherent = coherent;
set_dma_ops(dev, dma_ops);
 }
 
-- 
2.1.3

-- 
Cheers,
Stephen Rothwells...@canb.auug.org.au

diff --cc arch/arm/include/asm/dma-mapping.h
index 9410b7e548fc,e6e3446abdf6..
--- a/arch/arm/include/asm/dma-mapping.h
+++ b/arch/arm/include/asm/dma-mapping.h
@@@ -121,13 -121,20 +121,19 @@@ static inline unsigned long dma_max_pfn
  }
  #define dma_max_pfn(dev) dma_max_pfn(dev)
  
 -static inline int set_arch_dma_coherent_ops(struct device *dev)
 -{
 -  dev-archdata.dma_coherent = true;
 -  set_dma_ops(dev, arm_coherent_dma_ops);
 -  return 0;
 -}
 -#define set_arch_dma_coherent_ops(dev)set_arch_dma_coherent_ops(dev)
 +#define arch_setup_dma_ops arch_setup_dma_ops
 +extern void arch_setup_dma_ops(struct device *dev, u64 dma_base, u64 size,
 + struct iommu_ops *iommu, bool coherent);
 +
 +#define arch_teardown_dma_ops arch_teardown_dma_ops
 +extern void arch_teardown_dma_ops(struct device *dev);
  
+ /* do not use this function in a driver */
+ static inline bool is_device_dma_coherent(struct device *dev)
+ {
+   return dev-archdata.dma_coherent;
+ }
+ 
  static inline dma_addr_t phys_to_dma(struct device *dev, phys_addr_t paddr)
  {
unsigned int offset = paddr  ~PAGE_MASK;


pgpAgUrACVix7.pgp
Description: OpenPGP digital signature