diff options
Diffstat (limited to 'arch/arc/mm/cache.c')
-rw-r--r-- | arch/arc/mm/cache.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/arch/arc/mm/cache.c b/arch/arc/mm/cache.c index eee924dfffa6..2072f3451e9c 100644 --- a/arch/arc/mm/cache.c +++ b/arch/arc/mm/cache.c | |||
@@ -780,7 +780,10 @@ noinline static void slc_entire_op(const int op) | |||
780 | 780 | ||
781 | write_aux_reg(r, ctrl); | 781 | write_aux_reg(r, ctrl); |
782 | 782 | ||
783 | write_aux_reg(ARC_REG_SLC_INVALIDATE, 1); | 783 | if (op & OP_INV) /* Inv or flush-n-inv use same cmd reg */ |
784 | write_aux_reg(ARC_REG_SLC_INVALIDATE, 0x1); | ||
785 | else | ||
786 | write_aux_reg(ARC_REG_SLC_FLUSH, 0x1); | ||
784 | 787 | ||
785 | /* Make sure "busy" bit reports correct stataus, see STAR 9001165532 */ | 788 | /* Make sure "busy" bit reports correct stataus, see STAR 9001165532 */ |
786 | read_aux_reg(r); | 789 | read_aux_reg(r); |