linux/arch/x86/kernel/jailhouse.c

// SPDX-License-Identifier: GPL-2.0
/*
 * Jailhouse paravirt_ops implementation
 *
 * Copyright (c) Siemens AG, 2015-2017
 *
 * Authors:
 *  Jan Kiszka <[email protected]>
 */

#include <linux/acpi_pmtmr.h>
#include <linux/kernel.h>
#include <linux/reboot.h>
#include <linux/serial_8250.h>
#include <asm/apic.h>
#include <asm/io_apic.h>
#include <asm/acpi.h>
#include <asm/cpu.h>
#include <asm/hypervisor.h>
#include <asm/i8259.h>
#include <asm/irqdomain.h>
#include <asm/pci_x86.h>
#include <asm/reboot.h>
#include <asm/setup.h>
#include <asm/jailhouse_para.h>

static struct jailhouse_setup_data setup_data;
#define SETUP_DATA_V1_LEN
#define SETUP_DATA_V2_LEN

static unsigned int precalibrated_tsc_khz;

static void jailhouse_setup_irq(unsigned int irq)
{}

static uint32_t jailhouse_cpuid_base(void)
{}

static uint32_t __init jailhouse_detect(void)
{}

static void jailhouse_get_wallclock(struct timespec64 *now)
{}

static void __init jailhouse_timer_init(void)
{}

static unsigned long jailhouse_get_tsc(void)
{}

static void __init jailhouse_x2apic_init(void)
{}

static void __init jailhouse_parse_smp_config(void)
{}

static void jailhouse_no_restart(void)
{}

static int __init jailhouse_pci_arch_init(void)
{}

#ifdef CONFIG_SERIAL_8250
static inline bool jailhouse_uart_enabled(unsigned int uart_nr)
{}

static void jailhouse_serial_fixup(int port, struct uart_port *up,
				   u32 *capabilities)
{}

static void __init jailhouse_serial_workaround(void)
{}
#else /* !CONFIG_SERIAL_8250 */
static inline void jailhouse_serial_workaround(void)
{
}
#endif /* CONFIG_SERIAL_8250 */

static void __init jailhouse_init_platform(void)
{}

bool jailhouse_paravirt(void)
{}

static bool __init jailhouse_x2apic_available(void)
{}

const struct hypervisor_x86 x86_hyper_jailhouse __refconst =;