arm64: use correct register width when retrieving ASID
authorMatthew Leach <matthew.leach@arm.com>
Wed, 25 Sep 2013 15:33:13 +0000 (16:33 +0100)
committerVictor Kamensky <victor.kamensky@linaro.org>
Fri, 14 Mar 2014 01:25:38 +0000 (18:25 -0700)
commit1c3fe1f0b34efee5687b55448e463f567e4b7061
tree3033d1f71b24e216873cad4a16d64cdd6d1e088b
parent561ba47707bf63cac3d97143ab5928353d47459e
arm64: use correct register width when retrieving ASID

The ASID is represented as an unsigned int in mm_context_t and we
currently use the mmid assembler macro to access this element of the
struct. This should be accessed with a register of 32-bit width. If
the incorrect register width is used the ASID will be returned in
bits[32:63] of the register when running under big-endian.

Fix a use of the mmid macro in tlb.S to use a 32-bit access.

Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Matthew Leach <matthew.leach@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
(cherry picked from commit fc18047c732f6becba92618a397555927687efd3)

Signed-off-by: Victor Kamensky <victor.kamensky@linaro.org>
arch/arm64/mm/tlb.S