KVM: Export PIC reset for kernel device reset
Signed-off-by: Yaozu (Eddie) Dong <eddie.dong@intel.com> Signed-off-by: Avi Kivity <avi@qumranet.com>
This commit is contained in:
@@ -181,10 +181,8 @@ int kvm_pic_read_irq(struct kvm_pic *s)
|
|||||||
return intno;
|
return intno;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void pic_reset(void *opaque)
|
void kvm_pic_reset(struct kvm_kpic_state *s)
|
||||||
{
|
{
|
||||||
struct kvm_kpic_state *s = opaque;
|
|
||||||
|
|
||||||
s->last_irr = 0;
|
s->last_irr = 0;
|
||||||
s->irr = 0;
|
s->irr = 0;
|
||||||
s->imr = 0;
|
s->imr = 0;
|
||||||
@@ -209,7 +207,7 @@ static void pic_ioport_write(void *opaque, u32 addr, u32 val)
|
|||||||
addr &= 1;
|
addr &= 1;
|
||||||
if (addr == 0) {
|
if (addr == 0) {
|
||||||
if (val & 0x10) {
|
if (val & 0x10) {
|
||||||
pic_reset(s); /* init */
|
kvm_pic_reset(s); /* init */
|
||||||
/*
|
/*
|
||||||
* deassert a pending interrupt
|
* deassert a pending interrupt
|
||||||
*/
|
*/
|
||||||
|
@@ -139,6 +139,7 @@ int kvm_apic_accept_pic_intr(struct kvm_vcpu *vcpu);
|
|||||||
int kvm_get_apic_interrupt(struct kvm_vcpu *vcpu);
|
int kvm_get_apic_interrupt(struct kvm_vcpu *vcpu);
|
||||||
int kvm_create_lapic(struct kvm_vcpu *vcpu);
|
int kvm_create_lapic(struct kvm_vcpu *vcpu);
|
||||||
void kvm_lapic_reset(struct kvm_vcpu *vcpu);
|
void kvm_lapic_reset(struct kvm_vcpu *vcpu);
|
||||||
|
void kvm_pic_reset(struct kvm_kpic_state *s);
|
||||||
void kvm_free_lapic(struct kvm_vcpu *vcpu);
|
void kvm_free_lapic(struct kvm_vcpu *vcpu);
|
||||||
u64 kvm_lapic_get_cr8(struct kvm_vcpu *vcpu);
|
u64 kvm_lapic_get_cr8(struct kvm_vcpu *vcpu);
|
||||||
void kvm_lapic_set_tpr(struct kvm_vcpu *vcpu, unsigned long cr8);
|
void kvm_lapic_set_tpr(struct kvm_vcpu *vcpu, unsigned long cr8);
|
||||||
|
Reference in New Issue
Block a user