diff options
author | Tim Deegan <Tim.Deegan@xensource.com> | 2006-10-31 16:42:46 +0000 |
---|---|---|
committer | Tim Deegan <Tim.Deegan@xensource.com> | 2006-10-31 16:42:46 +0000 |
commit | 9e0d4d34f3e274e36cc3e7b4c8f76e4f72bf993d (patch) | |
tree | d627a59abbf0cea21cb03b88efee2f63262672d7 /xen/arch/x86/hvm/i8254.c | |
parent | 342c7011f6dc7a04505846638f4dafcd50f533df (diff) | |
download | xen-9e0d4d34f3e274e36cc3e7b4c8f76e4f72bf993d.tar.gz xen-9e0d4d34f3e274e36cc3e7b4c8f76e4f72bf993d.tar.bz2 xen-9e0d4d34f3e274e36cc3e7b4c8f76e4f72bf993d.zip |
[HVM] Use correct types for guest physical addresses
Guest physical addresses are not guaranteed to fit in either a pointer
or an unsigned long int; use paddr_t for them.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
Diffstat (limited to 'xen/arch/x86/hvm/i8254.c')
-rw-r--r-- | xen/arch/x86/hvm/i8254.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/xen/arch/x86/hvm/i8254.c b/xen/arch/x86/hvm/i8254.c index 464ddee8f9..96a80cf670 100644 --- a/xen/arch/x86/hvm/i8254.c +++ b/xen/arch/x86/hvm/i8254.c @@ -392,17 +392,17 @@ static int handle_pit_io(ioreq_t *p) struct PITState *vpit = &(v->domain->arch.hvm_domain.pl_time.vpit); if (p->size != 1 || - p->pdata_valid || + p->data_is_ptr || p->type != IOREQ_TYPE_PIO){ printk("HVM_PIT:wrong PIT IO!\n"); return 1; } if (p->dir == 0) {/* write */ - pit_ioport_write(vpit, p->addr, p->u.data); + pit_ioport_write(vpit, p->addr, p->data); } else if (p->dir == 1) { /* read */ if ( (p->addr & 3) != 3 ) { - p->u.data = pit_ioport_read(vpit, p->addr); + p->data = pit_ioport_read(vpit, p->addr); } else { printk("HVM_PIT: read A1:A0=3!\n"); } @@ -434,16 +434,16 @@ static int handle_speaker_io(ioreq_t *p) struct PITState *vpit = &(v->domain->arch.hvm_domain.pl_time.vpit); if (p->size != 1 || - p->pdata_valid || + p->data_is_ptr || p->type != IOREQ_TYPE_PIO){ printk("HVM_SPEAKER:wrong SPEAKER IO!\n"); return 1; } if (p->dir == 0) {/* write */ - speaker_ioport_write(vpit, p->addr, p->u.data); + speaker_ioport_write(vpit, p->addr, p->data); } else if (p->dir == 1) {/* read */ - p->u.data = speaker_ioport_read(vpit, p->addr); + p->data = speaker_ioport_read(vpit, p->addr); } return 1; |