From ec8fa7d2bfd649d8848448243744e30c96467ff2 Mon Sep 17 00:00:00 2001 From: zhuyanlin Date: Tue, 19 Apr 2022 20:55:32 +0800 Subject: [PATCH] armv7/r:cp15_cache_all: fix error in LineSize 'r5' mask r5 = r3 & r1 Signed-off-by: zhuyanlin --- arch/arm/src/armv7-a/cp15_flush_dcache_all.S | 2 +- arch/arm/src/armv7-a/cp15_invalidate_dcache_all.S | 2 +- arch/arm/src/armv7-r/cp15_clean_dcache_all.S | 2 +- arch/arm/src/armv7-r/cp15_flush_dcache_all.S | 2 +- arch/arm/src/armv7-r/cp15_invalidate_dcache_all.S | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/arch/arm/src/armv7-a/cp15_flush_dcache_all.S b/arch/arm/src/armv7-a/cp15_flush_dcache_all.S index fc7c2600f2a..ddb5d70637e 100644 --- a/arch/arm/src/armv7-a/cp15_flush_dcache_all.S +++ b/arch/arm/src/armv7-a/cp15_flush_dcache_all.S @@ -99,7 +99,7 @@ cp15_flush_dcache_all: and r0, r3, r1, lsr #13 /* r0=NumSets (number of sets - 1) */ ldr r3,=0x7 /* Isolate the LineSize field (bits 0-2) */ - and r5, r3 /* r4=(Log2LineSize - 2) in word */ + and r5, r3, r1 /* r4=(Log2LineSize - 2) in word */ add r5, #4 /* r4=Set/way operation line shfit */ ldr r3, =0x3ff /* Isolate the way field (bits 3-12) */ diff --git a/arch/arm/src/armv7-a/cp15_invalidate_dcache_all.S b/arch/arm/src/armv7-a/cp15_invalidate_dcache_all.S index 9447b60c282..9b5f95491ec 100644 --- a/arch/arm/src/armv7-a/cp15_invalidate_dcache_all.S +++ b/arch/arm/src/armv7-a/cp15_invalidate_dcache_all.S @@ -99,7 +99,7 @@ cp15_invalidate_dcache_all: and r0, r3, r1, lsr #13 /* r0=NumSets (number of sets - 1) */ ldr r3,=0x7 /* Isolate the LineSize field (bits 0-2) */ - and r5, r3 /* r4=(Log2LineSize - 2) in word */ + and r5, r3, r1 /* r4=(Log2LineSize - 2) in word */ add r5, #4 /* r4=Set/way operation line shfit */ ldr r3, =0x3ff /* Isolate the way field (bits 3-12) */ diff --git a/arch/arm/src/armv7-r/cp15_clean_dcache_all.S b/arch/arm/src/armv7-r/cp15_clean_dcache_all.S index c3c199fb107..4a08dfbc70f 100644 --- a/arch/arm/src/armv7-r/cp15_clean_dcache_all.S +++ b/arch/arm/src/armv7-r/cp15_clean_dcache_all.S @@ -99,7 +99,7 @@ cp15_clean_dcache_all: and r0, r3, r1, lsr #13 /* r0=NumSets (number of sets - 1) */ ldr r3,=0x7 /* Isolate the LineSize field (bits 0-2) */ - and r5, r3 /* r4=(Log2LineSize - 2) in word */ + and r5, r3, r1 /* r4=(Log2LineSize - 2) in word */ add r5, #4 /* r4=Set/way operation line shfit */ ldr r3, =0x3ff /* Isolate the way field (bits 3-12) */ diff --git a/arch/arm/src/armv7-r/cp15_flush_dcache_all.S b/arch/arm/src/armv7-r/cp15_flush_dcache_all.S index 0ae8cfe6c85..747d12271da 100644 --- a/arch/arm/src/armv7-r/cp15_flush_dcache_all.S +++ b/arch/arm/src/armv7-r/cp15_flush_dcache_all.S @@ -99,7 +99,7 @@ cp15_flush_dcache_all: and r0, r3, r1, lsr #13 /* r0=NumSets (number of sets - 1) */ ldr r3,=0x7 /* Isolate the LineSize field (bits 0-2) */ - and r5, r3 /* r4=(Log2LineSize - 2) in word */ + and r5, r3, r1 /* r4=(Log2LineSize - 2) in word */ add r5, #4 /* r4=Set/way operation line shfit */ ldr r3, =0x3ff /* Isolate the way field (bits 3-12) */ diff --git a/arch/arm/src/armv7-r/cp15_invalidate_dcache_all.S b/arch/arm/src/armv7-r/cp15_invalidate_dcache_all.S index d1836a8c035..399e8cf8e2c 100644 --- a/arch/arm/src/armv7-r/cp15_invalidate_dcache_all.S +++ b/arch/arm/src/armv7-r/cp15_invalidate_dcache_all.S @@ -99,7 +99,7 @@ cp15_invalidate_dcache_all: and r0, r3, r1, lsr #13 /* r0=NumSets (number of sets - 1) */ ldr r3,=0x7 /* Isolate the LineSize field (bits 0-2) */ - and r5, r3 /* r4=(Log2LineSize - 2) in word */ + and r5, r3, r1 /* r4=(Log2LineSize - 2) in word */ add r5, #4 /* r4=Set/way operation line shfit */ ldr r3, =0x3ff /* Isolate the way field (bits 3-12) */