.. | .. |
---|
| 1 | +/* SPDX-License-Identifier: GPL-2.0-only */ |
---|
1 | 2 | /* |
---|
2 | 3 | * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com) |
---|
3 | | - * |
---|
4 | | - * This program is free software; you can redistribute it and/or modify |
---|
5 | | - * it under the terms of the GNU General Public License version 2 as |
---|
6 | | - * published by the Free Software Foundation. |
---|
7 | 4 | */ |
---|
8 | 5 | |
---|
9 | 6 | #ifndef _ASM_ARC_MMU_H |
---|
.. | .. |
---|
43 | 40 | #define ARC_REG_SCRATCH_DATA0 0x46c |
---|
44 | 41 | #endif |
---|
45 | 42 | |
---|
| 43 | +#if defined(CONFIG_ISA_ARCV2) || !defined(CONFIG_SMP) |
---|
| 44 | +#define ARC_USE_SCRATCH_REG |
---|
| 45 | +#endif |
---|
| 46 | + |
---|
46 | 47 | /* Bits in MMU PID register */ |
---|
47 | 48 | #define __TLB_ENABLE (1 << 31) |
---|
48 | 49 | #define __PROG_ENABLE (1 << 30) |
---|
.. | .. |
---|
66 | 67 | #if (CONFIG_ARC_MMU_VER >= 2) |
---|
67 | 68 | #define TLBWriteNI 0x5 /* write JTLB without inv uTLBs */ |
---|
68 | 69 | #define TLBIVUTLB 0x6 /* explicitly inv uTLBs */ |
---|
| 70 | +#else |
---|
| 71 | +#define TLBWriteNI TLBWrite /* Not present in hardware, fallback */ |
---|
69 | 72 | #endif |
---|
70 | 73 | |
---|
71 | 74 | #if (CONFIG_ARC_MMU_VER >= 4) |
---|