Lines Matching +full:es +full:- +full:enable

1 /* SPDX-License-Identifier: GPL-2.0 */
10 #define _pa(x) ((x) - __START_KERNEL_map)
12 #define rva(x) ((x) - pvh_start_xen)
22 #include <asm/processor-flags.h>
24 #include <asm/nospec-branch.h>
34 * - `ebx`: contains the physical memory address where the loader has placed
36 * - `cr0`: bit 0 (PE) must be set. All the other writeable bits are cleared.
37 * - `cr4`: all bits are cleared.
38 * - `cs `: must be a 32-bit read/execute code segment with a base of `0`
40 * - `ds`, `es`: must be a 32-bit read/write data segment with a base of
43 * - `tr`: must be a 32-bit TSS (active) with a base of '0' and a limit
45 * - `eflags`: bit 17 (VM) must be cleared. Bit 9 (IF) must be cleared.
82 mov %eax,%es
94 /* Enable PAE mode. */
100 /* Enable Long mode. */
107 * Reuse the non-relocatable symbol emitted for the ELF note to
109 * its actual runtime address, without relying on absolute 32-bit ELF
111 * in -pie mode, and should be avoided in .head.text in general.
123 /* Fixup page-tables for relocation. */
140 addl %ebx, (PAGE_SIZE - 16)(%edi)
141 addl %ebx, (PAGE_SIZE - 8)(%edi)
143 /* pvh_level2_ident_pgt is fine - large pages */
145 /* pvh_level2_kernel_pgt needs adjustment - large pages */
158 /* Enable pre-constructed page tables. */
164 /* Jump to 64-bit mode. */
170 /* 64-bit entry point. */
178 * the per-CPU areas are set up.
229 .word gdt_end - gdt_start - 1
230 .long gdt_start - gdt
257 .quad pvh_level3_ident_pgt - __START_KERNEL_map + _KERNPG_TABLE_NOENC
259 .quad pvh_level3_ident_pgt - __START_KERNEL_map + _KERNPG_TABLE_NOENC
261 /* (2^48-(2*1024*1024*1024))/(2^39) = 511 */
262 .quad pvh_level3_kernel_pgt - __START_KERNEL_map + _PAGE_TABLE_NOENC
266 .quad pvh_level2_ident_pgt - __START_KERNEL_map + _KERNPG_TABLE_NOENC
282 /* (2^48-(2*1024*1024*1024)-((2^39)*511))/(2^30) = 510 */
283 .quad pvh_level2_kernel_pgt - __START_KERNEL_map + _KERNPG_TABLE_NOENC
307 .long KERNEL_IMAGE_SIZE - 1)
311 xen_elfnote_phys32_entry: _ASM_PTR xen_elfnote_phys32_entry_value - .)