#include <linux/init.h>
#include <linux/thread_info.h>
#include <asm/x86_init.h>
#include <asm/apic.h>
#include <asm/io_apic.h>
#include <asm/xen/hypercall.h>
#include <xen/xen.h>
#include <xen/interface/physdev.h>
#include "xen-ops.h"
static unsigned int xen_io_apic_read(unsigned apic, unsigned reg)
{ … }
static u32 xen_get_apic_id(u32 x)
{ … }
static u32 xen_apic_read(u32 reg)
{ … }
static void xen_apic_write(u32 reg, u32 val)
{ … }
static void xen_apic_eoi(void)
{ … }
static u64 xen_apic_icr_read(void)
{ … }
static void xen_apic_icr_write(u32 low, u32 id)
{ … }
static int xen_apic_probe_pv(void)
{ … }
static int xen_madt_oem_check(char *oem_id, char *oem_table_id)
{ … }
static u32 xen_cpu_present_to_apicid(int cpu)
{ … }
static struct apic xen_pv_apic __ro_after_init = …;
apic_driver(…) …;
void __init xen_init_apic(void)
{ … }