Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
ioapic.h File Reference
#include <linux/kvm_host.h>
#include "iodev.h"

Go to the source code of this file.

Data Structures

struct  kvm_ioapic
 

Macros

#define IOAPIC_NUM_PINS   KVM_IOAPIC_NUM_PINS
 
#define IOAPIC_VERSION_ID   0x11 /* IOAPIC version */
 
#define IOAPIC_EDGE_TRIG   0
 
#define IOAPIC_LEVEL_TRIG   1
 
#define IOAPIC_DEFAULT_BASE_ADDRESS   0xfec00000
 
#define IOAPIC_MEM_LENGTH   0x100
 
#define IOAPIC_REG_SELECT   0x00
 
#define IOAPIC_REG_WINDOW   0x10
 
#define IOAPIC_REG_EOI   0x40 /* IA64 IOSAPIC only */
 
#define IOAPIC_REG_APIC_ID   0x00 /* x86 IOAPIC only */
 
#define IOAPIC_REG_VERSION   0x01
 
#define IOAPIC_REG_ARB_ID   0x02 /* x86 IOAPIC only */
 
#define IOAPIC_FIXED   0x0
 
#define IOAPIC_LOWEST_PRIORITY   0x1
 
#define IOAPIC_PMI   0x2
 
#define IOAPIC_NMI   0x4
 
#define IOAPIC_INIT   0x5
 
#define IOAPIC_EXTINT   0x7
 
#define ASSERT(x)   do { } while (0)
 

Functions

int kvm_apic_match_dest (struct kvm_vcpu *vcpu, struct kvm_lapic *source, int short_hand, int dest, int dest_mode)
 
int kvm_apic_compare_prio (struct kvm_vcpu *vcpu1, struct kvm_vcpu *vcpu2)
 
void kvm_ioapic_update_eoi (struct kvm *kvm, int vector, int trigger_mode)
 
bool kvm_ioapic_handles_vector (struct kvm *kvm, int vector)
 
int kvm_ioapic_init (struct kvm *kvm)
 
void kvm_ioapic_destroy (struct kvm *kvm)
 
int kvm_ioapic_set_irq (struct kvm_ioapic *ioapic, int irq, int irq_source_id, int level)
 
void kvm_ioapic_clear_all (struct kvm_ioapic *ioapic, int irq_source_id)
 
void kvm_ioapic_reset (struct kvm_ioapic *ioapic)
 
int kvm_irq_delivery_to_apic (struct kvm *kvm, struct kvm_lapic *src, struct kvm_lapic_irq *irq)
 
int kvm_get_ioapic (struct kvm *kvm, struct kvm_ioapic_state *state)
 
int kvm_set_ioapic (struct kvm *kvm, struct kvm_ioapic_state *state)
 

Macro Definition Documentation

#define ASSERT (   x)    do { } while (0)

Definition at line 62 of file ioapic.h.

#define IOAPIC_DEFAULT_BASE_ADDRESS   0xfec00000

Definition at line 16 of file ioapic.h.

#define IOAPIC_EDGE_TRIG   0

Definition at line 13 of file ioapic.h.

#define IOAPIC_EXTINT   0x7

Definition at line 35 of file ioapic.h.

#define IOAPIC_FIXED   0x0

Definition at line 30 of file ioapic.h.

#define IOAPIC_INIT   0x5

Definition at line 34 of file ioapic.h.

#define IOAPIC_LEVEL_TRIG   1

Definition at line 14 of file ioapic.h.

#define IOAPIC_LOWEST_PRIORITY   0x1

Definition at line 31 of file ioapic.h.

#define IOAPIC_MEM_LENGTH   0x100

Definition at line 17 of file ioapic.h.

#define IOAPIC_NMI   0x4

Definition at line 33 of file ioapic.h.

#define IOAPIC_NUM_PINS   KVM_IOAPIC_NUM_PINS

Definition at line 11 of file ioapic.h.

#define IOAPIC_PMI   0x2

Definition at line 32 of file ioapic.h.

#define IOAPIC_REG_APIC_ID   0x00 /* x86 IOAPIC only */

Definition at line 25 of file ioapic.h.

#define IOAPIC_REG_ARB_ID   0x02 /* x86 IOAPIC only */

Definition at line 27 of file ioapic.h.

#define IOAPIC_REG_EOI   0x40 /* IA64 IOSAPIC only */

Definition at line 22 of file ioapic.h.

#define IOAPIC_REG_SELECT   0x00

Definition at line 20 of file ioapic.h.

#define IOAPIC_REG_VERSION   0x01

Definition at line 26 of file ioapic.h.

#define IOAPIC_REG_WINDOW   0x10

Definition at line 21 of file ioapic.h.

#define IOAPIC_VERSION_ID   0x11 /* IOAPIC version */

Definition at line 12 of file ioapic.h.

Function Documentation

int kvm_apic_compare_prio ( struct kvm_vcpu vcpu1,
struct kvm_vcpu vcpu2 
)

Definition at line 1883 of file kvm-ia64.c.

int kvm_apic_match_dest ( struct kvm_vcpu vcpu,
struct kvm_lapic source,
int  short_hand,
int  dest,
int  dest_mode 
)

Definition at line 1888 of file kvm-ia64.c.

int kvm_get_ioapic ( struct kvm kvm,
struct kvm_ioapic_state state 
)

Definition at line 446 of file ioapic.c.

void kvm_ioapic_clear_all ( struct kvm_ioapic ioapic,
int  irq_source_id 
)

Definition at line 228 of file ioapic.c.

void kvm_ioapic_destroy ( struct kvm kvm)

Definition at line 435 of file ioapic.c.

bool kvm_ioapic_handles_vector ( struct kvm kvm,
int  vector 
)

Definition at line 271 of file ioapic.c.

int kvm_ioapic_init ( struct kvm kvm)

Definition at line 410 of file ioapic.c.

void kvm_ioapic_reset ( struct kvm_ioapic ioapic)

Definition at line 392 of file ioapic.c.

int kvm_ioapic_set_irq ( struct kvm_ioapic ioapic,
int  irq,
int  irq_source_id,
int  level 
)

Definition at line 194 of file ioapic.c.

void kvm_ioapic_update_eoi ( struct kvm kvm,
int  vector,
int  trigger_mode 
)

Definition at line 278 of file ioapic.c.

int kvm_irq_delivery_to_apic ( struct kvm kvm,
struct kvm_lapic src,
struct kvm_lapic_irq irq 
)

Definition at line 64 of file irq_comm.c.

int kvm_set_ioapic ( struct kvm kvm,
struct kvm_ioapic_state state 
)

Definition at line 458 of file ioapic.c.