Signed-off-by: Wojciech Dubowik <[email protected]>
---
.../patches-2.6.30/250-fix-dma-for-ahb-bus.patch | 33 ++++++++++++++++++++
.../patches-2.6.32/250-fix-dma-for-ahb-bus.patch | 33 ++++++++++++++++++++
.../patches-2.6.34/250-fix-dma-for-ahb-bus.patch | 33 ++++++++++++++++++++
.../patches-2.6.35/250-fix-dma-for-ahb-bus.patch | 33 ++++++++++++++++++++
.../patches-2.6.36/250-fix-dma-for-ahb-bus.patch | 33 ++++++++++++++++++++
.../patches-2.6.37/250-fix-dma-for-ahb-bus.patch | 33 ++++++++++++++++++++
6 files changed, 198 insertions(+), 0 deletions(-)
create mode 100644
target/linux/atheros/patches-2.6.30/250-fix-dma-for-ahb-bus.patch
create mode 100644
target/linux/atheros/patches-2.6.32/250-fix-dma-for-ahb-bus.patch
create mode 100644
target/linux/atheros/patches-2.6.34/250-fix-dma-for-ahb-bus.patch
create mode 100644
target/linux/atheros/patches-2.6.35/250-fix-dma-for-ahb-bus.patch
create mode 100644
target/linux/atheros/patches-2.6.36/250-fix-dma-for-ahb-bus.patch
create mode 100644
target/linux/atheros/patches-2.6.37/250-fix-dma-for-ahb-bus.patch
diff --git a/target/linux/atheros/patches-2.6.30/250-fix-dma-for-ahb-bus.patch
b/target/linux/atheros/patches-2.6.30/250-fix-dma-for-ahb-bus.patch
new file mode 100644
index 0000000..d574ce5
--- /dev/null
+++ b/target/linux/atheros/patches-2.6.30/250-fix-dma-for-ahb-bus.patch
@@ -0,0 +1,33 @@
+--- a/arch/mips/include/asm/mach-ar231x/dma-coherence.h
++++ b/arch/mips/include/asm/mach-ar231x/dma-coherence.h
+@@ -16,18 +16,30 @@
+
+ static dma_addr_t plat_map_dma_mem(struct device *dev, void *addr, size_t
size)
+ {
++#ifdef CONFIG_ATHEROS_AR2315_PCI
+ return virt_to_phys(addr) + (dev != NULL ? PCI_DMA_OFFSET : 0);
++#else
++ return virt_to_phys(addr);
++#endif
+ }
+
+ static dma_addr_t plat_map_dma_mem_page(struct device *dev, struct page *page)
+ {
++#ifdef CONFIG_ATHEROS_AR2315_PCI
+ return page_to_phys(page) + (dev != NULL ? PCI_DMA_OFFSET : 0);
++#else
++ return page_to_phys(page);
++#endif
+ }
+
+ static inline unsigned long plat_dma_addr_to_phys(struct device *dev,
+ dma_addr_t dma_addr)
+ {
++#ifdef CONFIG_ATHEROS_AR2315_PCI
+ return (dma_addr > PCI_DMA_OFFSET ? dma_addr - PCI_DMA_OFFSET :
dma_addr);
++#else
++ return dma_addr;
++#endif
+ }
+
+ static inline void plat_unmap_dma_mem(struct device *dev, dma_addr_t dma_addr,
diff --git a/target/linux/atheros/patches-2.6.32/250-fix-dma-for-ahb-bus.patch
b/target/linux/atheros/patches-2.6.32/250-fix-dma-for-ahb-bus.patch
new file mode 100644
index 0000000..d574ce5
--- /dev/null
+++ b/target/linux/atheros/patches-2.6.32/250-fix-dma-for-ahb-bus.patch
@@ -0,0 +1,33 @@
+--- a/arch/mips/include/asm/mach-ar231x/dma-coherence.h
++++ b/arch/mips/include/asm/mach-ar231x/dma-coherence.h
+@@ -16,18 +16,30 @@
+
+ static dma_addr_t plat_map_dma_mem(struct device *dev, void *addr, size_t
size)
+ {
++#ifdef CONFIG_ATHEROS_AR2315_PCI
+ return virt_to_phys(addr) + (dev != NULL ? PCI_DMA_OFFSET : 0);
++#else
++ return virt_to_phys(addr);
++#endif
+ }
+
+ static dma_addr_t plat_map_dma_mem_page(struct device *dev, struct page *page)
+ {
++#ifdef CONFIG_ATHEROS_AR2315_PCI
+ return page_to_phys(page) + (dev != NULL ? PCI_DMA_OFFSET : 0);
++#else
++ return page_to_phys(page);
++#endif
+ }
+
+ static inline unsigned long plat_dma_addr_to_phys(struct device *dev,
+ dma_addr_t dma_addr)
+ {
++#ifdef CONFIG_ATHEROS_AR2315_PCI
+ return (dma_addr > PCI_DMA_OFFSET ? dma_addr - PCI_DMA_OFFSET :
dma_addr);
++#else
++ return dma_addr;
++#endif
+ }
+
+ static inline void plat_unmap_dma_mem(struct device *dev, dma_addr_t dma_addr,
diff --git a/target/linux/atheros/patches-2.6.34/250-fix-dma-for-ahb-bus.patch
b/target/linux/atheros/patches-2.6.34/250-fix-dma-for-ahb-bus.patch
new file mode 100644
index 0000000..d574ce5
--- /dev/null
+++ b/target/linux/atheros/patches-2.6.34/250-fix-dma-for-ahb-bus.patch
@@ -0,0 +1,33 @@
+--- a/arch/mips/include/asm/mach-ar231x/dma-coherence.h
++++ b/arch/mips/include/asm/mach-ar231x/dma-coherence.h
+@@ -16,18 +16,30 @@
+
+ static dma_addr_t plat_map_dma_mem(struct device *dev, void *addr, size_t
size)
+ {
++#ifdef CONFIG_ATHEROS_AR2315_PCI
+ return virt_to_phys(addr) + (dev != NULL ? PCI_DMA_OFFSET : 0);
++#else
++ return virt_to_phys(addr);
++#endif
+ }
+
+ static dma_addr_t plat_map_dma_mem_page(struct device *dev, struct page *page)
+ {
++#ifdef CONFIG_ATHEROS_AR2315_PCI
+ return page_to_phys(page) + (dev != NULL ? PCI_DMA_OFFSET : 0);
++#else
++ return page_to_phys(page);
++#endif
+ }
+
+ static inline unsigned long plat_dma_addr_to_phys(struct device *dev,
+ dma_addr_t dma_addr)
+ {
++#ifdef CONFIG_ATHEROS_AR2315_PCI
+ return (dma_addr > PCI_DMA_OFFSET ? dma_addr - PCI_DMA_OFFSET :
dma_addr);
++#else
++ return dma_addr;
++#endif
+ }
+
+ static inline void plat_unmap_dma_mem(struct device *dev, dma_addr_t dma_addr,
diff --git a/target/linux/atheros/patches-2.6.35/250-fix-dma-for-ahb-bus.patch
b/target/linux/atheros/patches-2.6.35/250-fix-dma-for-ahb-bus.patch
new file mode 100644
index 0000000..d574ce5
--- /dev/null
+++ b/target/linux/atheros/patches-2.6.35/250-fix-dma-for-ahb-bus.patch
@@ -0,0 +1,33 @@
+--- a/arch/mips/include/asm/mach-ar231x/dma-coherence.h
++++ b/arch/mips/include/asm/mach-ar231x/dma-coherence.h
+@@ -16,18 +16,30 @@
+
+ static dma_addr_t plat_map_dma_mem(struct device *dev, void *addr, size_t
size)
+ {
++#ifdef CONFIG_ATHEROS_AR2315_PCI
+ return virt_to_phys(addr) + (dev != NULL ? PCI_DMA_OFFSET : 0);
++#else
++ return virt_to_phys(addr);
++#endif
+ }
+
+ static dma_addr_t plat_map_dma_mem_page(struct device *dev, struct page *page)
+ {
++#ifdef CONFIG_ATHEROS_AR2315_PCI
+ return page_to_phys(page) + (dev != NULL ? PCI_DMA_OFFSET : 0);
++#else
++ return page_to_phys(page);
++#endif
+ }
+
+ static inline unsigned long plat_dma_addr_to_phys(struct device *dev,
+ dma_addr_t dma_addr)
+ {
++#ifdef CONFIG_ATHEROS_AR2315_PCI
+ return (dma_addr > PCI_DMA_OFFSET ? dma_addr - PCI_DMA_OFFSET :
dma_addr);
++#else
++ return dma_addr;
++#endif
+ }
+
+ static inline void plat_unmap_dma_mem(struct device *dev, dma_addr_t dma_addr,
diff --git a/target/linux/atheros/patches-2.6.36/250-fix-dma-for-ahb-bus.patch
b/target/linux/atheros/patches-2.6.36/250-fix-dma-for-ahb-bus.patch
new file mode 100644
index 0000000..d574ce5
--- /dev/null
+++ b/target/linux/atheros/patches-2.6.36/250-fix-dma-for-ahb-bus.patch
@@ -0,0 +1,33 @@
+--- a/arch/mips/include/asm/mach-ar231x/dma-coherence.h
++++ b/arch/mips/include/asm/mach-ar231x/dma-coherence.h
+@@ -16,18 +16,30 @@
+
+ static dma_addr_t plat_map_dma_mem(struct device *dev, void *addr, size_t
size)
+ {
++#ifdef CONFIG_ATHEROS_AR2315_PCI
+ return virt_to_phys(addr) + (dev != NULL ? PCI_DMA_OFFSET : 0);
++#else
++ return virt_to_phys(addr);
++#endif
+ }
+
+ static dma_addr_t plat_map_dma_mem_page(struct device *dev, struct page *page)
+ {
++#ifdef CONFIG_ATHEROS_AR2315_PCI
+ return page_to_phys(page) + (dev != NULL ? PCI_DMA_OFFSET : 0);
++#else
++ return page_to_phys(page);
++#endif
+ }
+
+ static inline unsigned long plat_dma_addr_to_phys(struct device *dev,
+ dma_addr_t dma_addr)
+ {
++#ifdef CONFIG_ATHEROS_AR2315_PCI
+ return (dma_addr > PCI_DMA_OFFSET ? dma_addr - PCI_DMA_OFFSET :
dma_addr);
++#else
++ return dma_addr;
++#endif
+ }
+
+ static inline void plat_unmap_dma_mem(struct device *dev, dma_addr_t dma_addr,
diff --git a/target/linux/atheros/patches-2.6.37/250-fix-dma-for-ahb-bus.patch
b/target/linux/atheros/patches-2.6.37/250-fix-dma-for-ahb-bus.patch
new file mode 100644
index 0000000..d574ce5
--- /dev/null
+++ b/target/linux/atheros/patches-2.6.37/250-fix-dma-for-ahb-bus.patch
@@ -0,0 +1,33 @@
+--- a/arch/mips/include/asm/mach-ar231x/dma-coherence.h
++++ b/arch/mips/include/asm/mach-ar231x/dma-coherence.h
+@@ -16,18 +16,30 @@
+
+ static dma_addr_t plat_map_dma_mem(struct device *dev, void *addr, size_t
size)
+ {
++#ifdef CONFIG_ATHEROS_AR2315_PCI
+ return virt_to_phys(addr) + (dev != NULL ? PCI_DMA_OFFSET : 0);
++#else
++ return virt_to_phys(addr);
++#endif
+ }
+
+ static dma_addr_t plat_map_dma_mem_page(struct device *dev, struct page *page)
+ {
++#ifdef CONFIG_ATHEROS_AR2315_PCI
+ return page_to_phys(page) + (dev != NULL ? PCI_DMA_OFFSET : 0);
++#else
++ return page_to_phys(page);
++#endif
+ }
+
+ static inline unsigned long plat_dma_addr_to_phys(struct device *dev,
+ dma_addr_t dma_addr)
+ {
++#ifdef CONFIG_ATHEROS_AR2315_PCI
+ return (dma_addr > PCI_DMA_OFFSET ? dma_addr - PCI_DMA_OFFSET :
dma_addr);
++#else
++ return dma_addr;
++#endif
+ }
+
+ static inline void plat_unmap_dma_mem(struct device *dev, dma_addr_t dma_addr,
--
1.7.1
_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/mailman/listinfo/openwrt-devel