X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/3b617e51ccb4e6e8fd00cbf15bf76a218776d6dd..03956d22c34c1a764749ee7478f2a7197aa492df:/target/linux/brcm47xx/patches-2.6.28/160-kmap_coherent.patch diff --git a/target/linux/brcm47xx/patches-2.6.28/160-kmap_coherent.patch b/target/linux/brcm47xx/patches-2.6.28/160-kmap_coherent.patch index 383aabf17..0219adfd5 100644 --- a/target/linux/brcm47xx/patches-2.6.28/160-kmap_coherent.patch +++ b/target/linux/brcm47xx/patches-2.6.28/160-kmap_coherent.patch @@ -1,4 +1,3 @@ -diff --git a/arch/mips/include/asm/cpu-features.h b/arch/mips/include/asm/cpu-features.h --- a/arch/mips/include/asm/cpu-features.h +++ b/arch/mips/include/asm/cpu-features.h @@ -101,6 +101,9 @@ @@ -11,7 +10,6 @@ diff --git a/arch/mips/include/asm/cpu-features.h b/arch/mips/include/asm/cpu-fe /* * I-Cache snoops remote store. This only matters on SMP. Some multiprocessors -diff --git a/arch/mips/include/asm/mach-bcm47xx/cpu-feature-overrides.h b/arch/mips/include/asm/mach-bcm47xx/cpu-feature-overrides.h --- /dev/null +++ b/arch/mips/include/asm/mach-bcm47xx/cpu-feature-overrides.h @@ -0,0 +1,13 @@ @@ -28,10 +26,9 @@ diff --git a/arch/mips/include/asm/mach-bcm47xx/cpu-feature-overrides.h b/arch/m +#define cpu_use_kmap_coherent 0 + +#endif /* __ASM_MACH_BCM47XX_CPU_FEATURE_OVERRIDES_H */ -diff --git a/arch/mips/mm/c-r4k.c b/arch/mips/mm/c-r4k.c --- a/arch/mips/mm/c-r4k.c +++ b/arch/mips/mm/c-r4k.c -@@ -494,7 +494,7 @@ static inline void local_r4k_flush_cache_page(void *args) +@@ -494,7 +494,7 @@ static inline void local_r4k_flush_cache */ map_coherent = (cpu_has_dc_aliases && page_mapped(page) && !Page_dcache_dirty(page)); @@ -40,7 +37,7 @@ diff --git a/arch/mips/mm/c-r4k.c b/arch/mips/mm/c-r4k.c vaddr = kmap_coherent(page, addr); else vaddr = kmap_atomic(page, KM_USER0); -@@ -517,7 +517,7 @@ static inline void local_r4k_flush_cache_page(void *args) +@@ -517,7 +517,7 @@ static inline void local_r4k_flush_cache } if (vaddr) { @@ -49,10 +46,9 @@ diff --git a/arch/mips/mm/c-r4k.c b/arch/mips/mm/c-r4k.c kunmap_coherent(); else kunmap_atomic(vaddr, KM_USER0); -diff --git a/arch/mips/mm/init.c b/arch/mips/mm/init.c --- a/arch/mips/mm/init.c +++ b/arch/mips/mm/init.c -@@ -212,7 +212,7 @@ void copy_user_highpage(struct page *to, struct page *from, +@@ -212,7 +212,7 @@ void copy_user_highpage(struct page *to, void *vfrom, *vto; vto = kmap_atomic(to, KM_USER1); @@ -61,7 +57,7 @@ diff --git a/arch/mips/mm/init.c b/arch/mips/mm/init.c page_mapped(from) && !Page_dcache_dirty(from)) { vfrom = kmap_coherent(from, vaddr); copy_page(vto, vfrom); -@@ -234,7 +234,7 @@ void copy_to_user_page(struct vm_area_struct *vma, +@@ -234,7 +234,7 @@ void copy_to_user_page(struct vm_area_st struct page *page, unsigned long vaddr, void *dst, const void *src, unsigned long len) { @@ -70,7 +66,7 @@ diff --git a/arch/mips/mm/init.c b/arch/mips/mm/init.c page_mapped(page) && !Page_dcache_dirty(page)) { void *vto = kmap_coherent(page, vaddr) + (vaddr & ~PAGE_MASK); memcpy(vto, src, len); -@@ -252,7 +252,7 @@ void copy_from_user_page(struct vm_area_struct *vma, +@@ -252,7 +252,7 @@ void copy_from_user_page(struct vm_area_ struct page *page, unsigned long vaddr, void *dst, const void *src, unsigned long len) {