Skip to content

Commit

Permalink
arm64: assembler: Change order of macro arguments in phys_to_ttbr
Browse files Browse the repository at this point in the history
Since AArch64 assembly instructions take the destination register as
their first operand, do the same thing for the phys_to_ttbr macro.

Acked-by: Robin Murphy <robin.murphy@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
  • Loading branch information
Will Deacon authored and Catalin Marinas committed Feb 6, 2018
1 parent 6dc52b1 commit fa0465f
Show file tree
Hide file tree
Showing 5 changed files with 9 additions and 9 deletions.
2 changes: 1 addition & 1 deletion arch/arm64/include/asm/assembler.h
Original file line number Diff line number Diff line change
Expand Up @@ -514,7 +514,7 @@ alternative_endif
* phys: physical address, preserved
* ttbr: returns the TTBR value
*/
.macro phys_to_ttbr, phys, ttbr
.macro phys_to_ttbr, ttbr, phys
#ifdef CONFIG_ARM64_PA_BITS_52
orr \ttbr, \phys, \phys, lsr #46
and \ttbr, \ttbr, #TTBR_BADDR_MASK_52
Expand Down
4 changes: 2 additions & 2 deletions arch/arm64/kernel/head.S
Original file line number Diff line number Diff line change
Expand Up @@ -776,8 +776,8 @@ ENTRY(__enable_mmu)
update_early_cpu_boot_status 0, x1, x2
adrp x1, idmap_pg_dir
adrp x2, swapper_pg_dir
phys_to_ttbr x1, x3
phys_to_ttbr x2, x4
phys_to_ttbr x3, x1
phys_to_ttbr x4, x2
msr ttbr0_el1, x3 // load TTBR0
msr ttbr1_el1, x4 // load TTBR1
isb
Expand Down
4 changes: 2 additions & 2 deletions arch/arm64/kernel/hibernate-asm.S
Original file line number Diff line number Diff line change
Expand Up @@ -34,12 +34,12 @@
* each stage of the walk.
*/
.macro break_before_make_ttbr_switch zero_page, page_table, tmp
phys_to_ttbr \zero_page, \tmp
phys_to_ttbr \tmp, \zero_page
msr ttbr1_el1, \tmp
isb
tlbi vmalle1
dsb nsh
phys_to_ttbr \page_table, \tmp
phys_to_ttbr \tmp, \page_table
msr ttbr1_el1, \tmp
isb
.endm
Expand Down
2 changes: 1 addition & 1 deletion arch/arm64/kvm/hyp-init.S
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ __do_hyp_init:
cmp x0, #HVC_STUB_HCALL_NR
b.lo __kvm_handle_stub_hvc

phys_to_ttbr x0, x4
phys_to_ttbr x4, x0
msr ttbr0_el2, x4

mrs x4, tcr_el1
Expand Down
6 changes: 3 additions & 3 deletions arch/arm64/mm/proc.S
Original file line number Diff line number Diff line change
Expand Up @@ -153,7 +153,7 @@ ENDPROC(cpu_do_resume)
ENTRY(cpu_do_switch_mm)
mrs x2, ttbr1_el1
mmid x1, x1 // get mm->context.id
phys_to_ttbr x0, x3
phys_to_ttbr x3, x0
#ifdef CONFIG_ARM64_SW_TTBR0_PAN
bfi x3, x1, #48, #16 // set the ASID field in TTBR0
#endif
Expand All @@ -169,7 +169,7 @@ ENDPROC(cpu_do_switch_mm)

.macro __idmap_cpu_set_reserved_ttbr1, tmp1, tmp2
adrp \tmp1, empty_zero_page
phys_to_ttbr \tmp1, \tmp2
phys_to_ttbr \tmp2, \tmp1
msr ttbr1_el1, \tmp2
isb
tlbi vmalle1
Expand All @@ -188,7 +188,7 @@ ENTRY(idmap_cpu_replace_ttbr1)

__idmap_cpu_set_reserved_ttbr1 x1, x3

phys_to_ttbr x0, x3
phys_to_ttbr x3, x0
msr ttbr1_el1, x3
isb

Expand Down

0 comments on commit fa0465f

Please sign in to comment.