Lines Matching +full:linear +full:- +full:mapping +full:- +full:mode

1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause
55 #include <xen/xen-os.h>
63 #include <contrib/xen/arch-x86/cpuid.h>
67 /*--------------------------- Forward Declarations ---------------------------*/
70 /*-------------------------------- Global Data -------------------------------*/
81 * If non-zero, the hypervisor has been configured to use a direct
92 /*------------------------------- Per-CPU Data -------------------------------*/
95 /*------------------------------ Sysctl tunables -----------------------------*/
101 /*---------------------- XEN Hypervisor Probe and Setup ----------------------*/
113 msix_disable_migration == -1) { in hypervisor_quirks()
116 * handle updates to enabled MSI-X table entries, in hypervisor_quirks()
117 * so disable MSI-X interrupt migration in that in hypervisor_quirks()
122 "Disabling MSI-X interrupt migration due to Xen hypervisor bug.\n" in hypervisor_quirks()
145 * Translate linear to physical address when still running on the bootloader
146 * created page-tables.
157 xc_printf("invalid linear address: %p\n", addr); in early_init_vtop()
161 return ((uintptr_t)addr - KERNBASE in early_init_vtop()
163 + kernphys - KERNLOAD in early_init_vtop()
173 * non-RAM) address. But finding one at this point in boot is in map_shared_info()
174 * complicated, hence re-use a RAM address for the time being. This in map_shared_info()
175 * sadly causes super-page shattering in the second stage translation in map_shared_info()
223 switch (console->video_type) { in fixup_console()
235 sizeof(fb->efi.fb_mask_reserved), in fixup_console()
237 fb->vbe.fb_bpp = console->u.vesa_lfb.bits_per_pixel; in fixup_console()
249 fb->efi.fb_addr = console->u.vesa_lfb.lfb_base; in fixup_console()
252 fb->efi.fb_addr |= in fixup_console()
253 (uint64_t)console->u.vesa_lfb.ext_lfb_base << 32; in fixup_console()
254 fb->efi.fb_size = console->u.vesa_lfb.lfb_size << 16; in fixup_console()
255 fb->efi.fb_height = console->u.vesa_lfb.height; in fixup_console()
256 fb->efi.fb_width = console->u.vesa_lfb.width; in fixup_console()
257 fb->efi.fb_stride = (console->u.vesa_lfb.bytes_per_line << 3) / in fixup_console()
258 console->u.vesa_lfb.bits_per_pixel; in fixup_console()
260 ((~0u << console->u.vesa_lfb.c ## _pos) & \ in fixup_console()
261 (~0u >> (32 - console->u.vesa_lfb.c ## _pos - \ in fixup_console()
262 console->u.vesa_lfb.c ## _size))) in fixup_console()
263 fb->efi.fb_mask_red = FBMASK(red); in fixup_console()
264 fb->efi.fb_mask_green = FBMASK(green); in fixup_console()
265 fb->efi.fb_mask_blue = FBMASK(blue); in fixup_console()
266 fb->efi.fb_mask_reserved = FBMASK(rsvd); in fixup_console()
307 /* Fixup video console information in case Xen changed the mode. */ in xen_early_init()
375 pin = pci_get_intpin(dev) - 1; in xen_hvm_set_callback()
497 * from a failed migration and our pre-suspend in xen_hvm_cpu_init()
517 * Setup the per-vpcu event channel upcall vector. This is only in xen_hvm_cpu_init()
571 /* In 32bit mode we possibly need to truncate the addresses. */ in xen_arch_init_physmem()
572 end = MIN(trunc_page(smap[i].base + smap[i].length) - 1, in xen_arch_init_physmem()
580 "scratch mapping region @ [%016jx, %016jx]\n", in xen_arch_init_physmem()