mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-20 22:23:27 +00:00
a1383655cf
Tested on bcm2710 (Raspberry Pi 3B). Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
54 lines
1.6 KiB
Diff
54 lines
1.6 KiB
Diff
From d2b4f3d3ae91ea8fca9efebe0ac7a6b0c0567883 Mon Sep 17 00:00:00 2001
|
|
From: popcornmix <popcornmix@gmail.com>
|
|
Date: Fri, 25 Aug 2017 19:18:13 +0100
|
|
Subject: [PATCH] cache: export clean and invalidate
|
|
|
|
hack: cache: Fix linker error
|
|
---
|
|
arch/arm/mm/cache-v6.S | 4 ++--
|
|
arch/arm/mm/cache-v7.S | 6 ++++--
|
|
2 files changed, 6 insertions(+), 4 deletions(-)
|
|
|
|
--- a/arch/arm/mm/cache-v6.S
|
|
+++ b/arch/arm/mm/cache-v6.S
|
|
@@ -198,7 +198,7 @@ ENTRY(v6_flush_kern_dcache_area)
|
|
* - start - virtual start address of region
|
|
* - end - virtual end address of region
|
|
*/
|
|
-v6_dma_inv_range:
|
|
+ENTRY(v6_dma_inv_range)
|
|
#ifdef CONFIG_DMA_CACHE_RWFO
|
|
ldrb r2, [r0] @ read for ownership
|
|
strb r2, [r0] @ write for ownership
|
|
@@ -243,7 +243,7 @@ v6_dma_inv_range:
|
|
* - start - virtual start address of region
|
|
* - end - virtual end address of region
|
|
*/
|
|
-v6_dma_clean_range:
|
|
+ENTRY(v6_dma_clean_range)
|
|
bic r0, r0, #D_CACHE_LINE_SIZE - 1
|
|
1:
|
|
#ifdef CONFIG_DMA_CACHE_RWFO
|
|
--- a/arch/arm/mm/cache-v7.S
|
|
+++ b/arch/arm/mm/cache-v7.S
|
|
@@ -363,7 +363,8 @@ ENDPROC(v7_flush_kern_dcache_area)
|
|
* - start - virtual start address of region
|
|
* - end - virtual end address of region
|
|
*/
|
|
-v7_dma_inv_range:
|
|
+ENTRY(b15_dma_inv_range)
|
|
+ENTRY(v7_dma_inv_range)
|
|
dcache_line_size r2, r3
|
|
sub r3, r2, #1
|
|
tst r0, r3
|
|
@@ -393,7 +394,8 @@ ENDPROC(v7_dma_inv_range)
|
|
* - start - virtual start address of region
|
|
* - end - virtual end address of region
|
|
*/
|
|
-v7_dma_clean_range:
|
|
+ENTRY(b15_dma_clean_range)
|
|
+ENTRY(v7_dma_clean_range)
|
|
dcache_line_size r2, r3
|
|
sub r3, r2, #1
|
|
bic r0, r0, r3
|