relocate_kernel.S (ead5d1f4d877e92c051e1a1ade623d0d30e71619) | relocate_kernel.S (72789a4a6a914601912a8992b0d43bd5abc05128) |
---|---|
1/* SPDX-License-Identifier: GPL-2.0-only */ 2/* 3 * kexec for arm64 4 * 5 * Copyright (C) Linaro. 6 * Copyright (C) Huawei Futurewei Technologies. 7 */ 8 --- 22 unchanged lines hidden (view full) --- 31 /* Setup the list loop variables. */ 32 mov x18, x2 /* x18 = dtb address */ 33 mov x17, x1 /* x17 = kimage_start */ 34 mov x16, x0 /* x16 = kimage_head */ 35 raw_dcache_line_size x15, x0 /* x15 = dcache line size */ 36 mov x14, xzr /* x14 = entry ptr */ 37 mov x13, xzr /* x13 = copy dest */ 38 | 1/* SPDX-License-Identifier: GPL-2.0-only */ 2/* 3 * kexec for arm64 4 * 5 * Copyright (C) Linaro. 6 * Copyright (C) Huawei Futurewei Technologies. 7 */ 8 --- 22 unchanged lines hidden (view full) --- 31 /* Setup the list loop variables. */ 32 mov x18, x2 /* x18 = dtb address */ 33 mov x17, x1 /* x17 = kimage_start */ 34 mov x16, x0 /* x16 = kimage_head */ 35 raw_dcache_line_size x15, x0 /* x15 = dcache line size */ 36 mov x14, xzr /* x14 = entry ptr */ 37 mov x13, xzr /* x13 = copy dest */ 38 |
39 /* Clear the sctlr_el2 flags. */ 40 mrs x0, CurrentEL 41 cmp x0, #CurrentEL_EL2 42 b.ne 1f 43 mrs x0, sctlr_el2 44 mov_q x1, SCTLR_ELx_FLAGS 45 bic x0, x0, x1 46 pre_disable_mmu_workaround 47 msr sctlr_el2, x0 48 isb 491: 50 | |
51 /* Check if the new image needs relocation. */ 52 tbnz x16, IND_DONE_BIT, .Ldone 53 54.Lloop: 55 and x12, x16, PAGE_MASK /* x12 = addr */ 56 57 /* Test the entry flags. */ 58.Ltest_source: --- 69 unchanged lines hidden --- | 39 /* Check if the new image needs relocation. */ 40 tbnz x16, IND_DONE_BIT, .Ldone 41 42.Lloop: 43 and x12, x16, PAGE_MASK /* x12 = addr */ 44 45 /* Test the entry flags. */ 46.Ltest_source: --- 69 unchanged lines hidden --- |