iPXE
Data Structures | Defines | Functions
hvm.h File Reference

Xen HVM driver. More...

#include <stdint.h>
#include <ipxe/xen.h>
#include <xen/hvm/hvm_op.h>
#include <xen/hvm/params.h>

Go to the source code of this file.

Data Structures

struct  hvm_device
 A Xen HVM device. More...

Defines

#define HVM_CPUID_MIN   0x40000000UL
 Minimum CPUID base.
#define HVM_CPUID_MAX   0x4000ff00UL
 Maximum CPUID base.
#define HVM_CPUID_STEP   0x00000100UL
 Increment between CPUID bases.
#define HVM_CPUID_MAGIC   "XenVMMXenVMM"
 Magic signature.
#define HVM_CPUID_VERSION   1
 Get Xen version.
#define HVM_CPUID_PAGES   2
 Get number of hypercall pages.
#define HVM_MMIO_BAR   PCI_BASE_ADDRESS_1
 PCI MMIO BAR.

Functions

 FILE_LICENCE (GPL2_OR_LATER_OR_UBDL)
static int xen_hvm_get_param (struct xen_hypervisor *xen, unsigned int index, uint64_t *value)
 Get HVM parameter value.

Detailed Description

Xen HVM driver.

Definition in file hvm.h.


Define Documentation

#define HVM_CPUID_MIN   0x40000000UL

Minimum CPUID base.

Definition at line 18 of file hvm.h.

Referenced by hvm_cpuid_base().

#define HVM_CPUID_MAX   0x4000ff00UL

Maximum CPUID base.

Definition at line 21 of file hvm.h.

Referenced by hvm_cpuid_base().

#define HVM_CPUID_STEP   0x00000100UL

Increment between CPUID bases.

Definition at line 24 of file hvm.h.

Referenced by hvm_cpuid_base().

#define HVM_CPUID_MAGIC   "XenVMMXenVMM"

Magic signature.

Definition at line 27 of file hvm.h.

Referenced by hvm_cpuid_base().

#define HVM_CPUID_VERSION   1

Get Xen version.

Definition at line 30 of file hvm.h.

Referenced by hvm_cpuid_base().

#define HVM_CPUID_PAGES   2

Get number of hypercall pages.

Definition at line 33 of file hvm.h.

Referenced by hvm_map_hypercall().

PCI MMIO BAR.

Definition at line 36 of file hvm.h.

Referenced by hvm_probe().


Function Documentation

FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL  )
static int xen_hvm_get_param ( struct xen_hypervisor xen,
unsigned int  index,
uint64_t value 
) [inline, static]

Get HVM parameter value.

Parameters:
xenXen hypervisor
indexParameter index
valueValue to fill in
Return values:
xenrcXen status code

Definition at line 62 of file hvm.h.

References __HYPERVISOR_hvm_op, xen_hvm_param::domid, DOMID_SELF, HVMOP_get_param, xen_hvm_param::index, index, xen_hvm_param::value, and virt_to_phys().

Referenced by hvm_map_xenstore().

                                                                            {
        struct xen_hvm_param param;
        int xenrc;

        param.domid = DOMID_SELF;
        param.index = index;
        xenrc = xen_hypercall_2 ( xen, __HYPERVISOR_hvm_op, HVMOP_get_param,
                                  virt_to_phys ( &param ) );
        *value = param.value;
        return xenrc;
}