Lines Matching +full:disable +full:- +full:hibernation +full:- +full:mode
1 // SPDX-License-Identifier: GPL-2.0-only
3 * X86 specific Hyper-V initialization code.
10 #define pr_fmt(fmt) "Hyper-V: " fmt
81 /* Storage to save the hypercall page temporarily for hibernation */
97 return -EINVAL; in hyperv_init_ghcb()
110 return -ENOMEM; in hyperv_init_ghcb()
142 * The VP assist page is an "overlay" page (see Hyper-V TLFS's in hv_cpu_init()
153 * Hyper-V should never specify a VM that is a Confidential in hv_cpu_init()
156 * page in non-root partition here. in hv_cpu_init()
306 * CPU or just disable the feature if there are no online CPUs in hv_cpu_die()
307 * left (happens on hibernation). in hv_cpu_die()
327 * A Generation-2 VM doesn't support legacy PCI/PCIe, so both in hv_pci_init()
328 * raw_pci_ops and raw_pci_ext_ops are NULL, and pci_subsys_init() -> in hv_pci_init()
329 * pcibios_init() doesn't call pcibios_resource_survey() -> in hv_pci_init()
338 * acpi_nfit_register_region() -> acpi_nfit_insert_resource() -> in hv_pci_init()
350 /* For Generation-1 VM, we'll proceed in pci_arch_init(). */ in hv_pci_init()
360 return -EPERM; in hv_suspend()
364 * across hibernation. Setting hv_hypercall_pg to NULL ensures in hv_suspend()
372 /* Disable the hypercall page in the hypervisor */ in hv_suspend()
389 /* Re-enable the hypercall page */ in hv_resume()
424 * Still register the LAPIC timer, because the direct-mode STIMER is in hv_stimer_setup_percpu_clockev()
425 * not supported by old versions of Hyper-V. This also allows users in hv_stimer_setup_percpu_clockev()
437 * 2. Register Hyper-V specific clocksource.
438 * 3. Setup Hyper-V specific APIC entry points.
492 * page to Hyper-V, e.g. hv_post_message() uses the per-CPU page in hyperv_init()
560 * apic_intr_mode_init() -> x86_platform.apic_post_init() and in hyperv_init()
561 * apic_bsp_setup() -> setup_local_APIC(). The direct-mode STIMER in hyperv_init()
661 wrmsrq(HV_X64_MSR_CRASH_P2, regs->ip); in hyperv_report_panic()
662 wrmsrq(HV_X64_MSR_CRASH_P3, regs->ax); in hyperv_report_panic()
663 wrmsrq(HV_X64_MSR_CRASH_P4, regs->sp); in hyperv_report_panic()
666 * Let Hyper-V know there is crash data available in hyperv_report_panic()
677 * Ensure that we're really on Hyper-V, and not a KVM or Xen in hv_is_hyperv_initialized()
678 * emulation of Hyper-V in hv_is_hyperv_initialized()
709 input->partition_id = HV_PARTITION_ID_SELF; in hv_apicid_to_vp_index()
710 input->apic_ids[0] = apic_id; in hv_apicid_to_vp_index()
723 return -EINVAL; in hv_apicid_to_vp_index()