arm64: head.S: get rid of x25 and x26 with 'global' scope
authorArd Biesheuvel <ard.biesheuvel@linaro.org>
Tue, 16 Aug 2016 19:02:32 +0000 (21:02 +0200)
committerWill Deacon <will.deacon@arm.com>
Mon, 22 Aug 2016 13:25:15 +0000 (14:25 +0100)
commitaea73abb90265110ed59281e370289316fd689f3
tree1c448df9db20a482788188ee6355a3ca7dee6ecd
parent5a9e3e156ec1ab26ba70b4c44157858c92bbeee0
arm64: head.S: get rid of x25 and x26 with 'global' scope

Currently, x25 and x26 hold the physical addresses of idmap_pg_dir
and swapper_pg_dir, respectively, when running early boot code. But
having registers with 'global' scope in files that contain different
sections with different lifetimes, and that are called by different
CPUs at different times is a bit messy, especially since stashing the
values does not buy us anything in terms of code size or clarity.

So simply replace each reference to x25 or x26 with an adrp instruction
referring to idmap_pg_dir or swapper_pg_dir directly.

Acked-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm64/kernel/head.S
arch/arm64/kernel/sleep.S