summaryrefslogtreecommitdiffstats
path: root/Documentation/arm64
diff options
context:
space:
mode:
authorPunit Agrawal <punit.agrawal@arm.com>2014-11-18 11:41:25 +0000
committerWill Deacon <will.deacon@arm.com>2014-11-20 16:34:31 +0000
commitbd35a4adc4131c530ec7d90242555eac7b3dbe3f (patch)
tree61db668ee8924e5dae4aa53fadf8b8ffde6bba3b /Documentation/arm64
parent587064b610c703f259317d00dc37bf6d40f4fc74 (diff)
downloadlinux-bd35a4adc4131c530ec7d90242555eac7b3dbe3f.tar.gz
linux-bd35a4adc4131c530ec7d90242555eac7b3dbe3f.tar.bz2
linux-bd35a4adc4131c530ec7d90242555eac7b3dbe3f.zip
arm64: Port SWP/SWPB emulation support from arm
The SWP instruction was deprecated in the ARMv6 architecture. The ARMv7 multiprocessing extensions mandate that SWP/SWPB instructions are treated as undefined from reset, with the ability to enable them through the System Control Register SW bit. With ARMv8, the option to enable these instructions through System Control Register was dropped as well. To support legacy applications using these instructions, port the emulation of the SWP and SWPB instructions from the arm port to arm64. Reviewed-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Punit Agrawal <punit.agrawal@arm.com> Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to 'Documentation/arm64')
-rw-r--r--Documentation/arm64/legacy_instructions.txt7
1 files changed, 7 insertions, 0 deletions
diff --git a/Documentation/arm64/legacy_instructions.txt b/Documentation/arm64/legacy_instructions.txt
index 49d4867c0c09..5ab58614b7ed 100644
--- a/Documentation/arm64/legacy_instructions.txt
+++ b/Documentation/arm64/legacy_instructions.txt
@@ -31,3 +31,10 @@ behaviours and the corresponding values of the sysctl nodes -
The default mode depends on the status of the instruction in the
architecture. Deprecated instructions should default to emulation
while obsolete instructions must be undefined by default.
+
+Supported legacy instructions
+-----------------------------
+* SWP{B}
+Node: /proc/sys/abi/swp
+Status: Obsolete
+Default: Undef (0)