Errors while registering ioports are not fatal (Glauber Costa).

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4261 c046a42c-6fe2-441c-8c8c-71466251a162
master
balrog 2008-04-26 16:04:29 +00:00
parent 47e4ca5abd
commit b22205f2f4
1 changed files with 7 additions and 5 deletions

12
vl.c
View File

@ -324,13 +324,13 @@ int register_ioport_read(int start, int length, int size,
} else if (size == 4) {
bsize = 2;
} else {
hw_error("register_ioport_read: invalid size");
fprintf(stderr, "register_ioport_read: invalid size\n");
return -1;
}
for(i = start; i < start + length; i += size) {
ioport_read_table[bsize][i] = func;
if (ioport_opaque[i] != NULL && ioport_opaque[i] != opaque)
hw_error("register_ioport_read: invalid opaque");
fprintf(stderr, "register_ioport_read: invalid opaque\n");
ioport_opaque[i] = opaque;
}
return 0;
@ -349,13 +349,15 @@ int register_ioport_write(int start, int length, int size,
} else if (size == 4) {
bsize = 2;
} else {
hw_error("register_ioport_write: invalid size");
fprintf(stderr, "register_ioport_write: invalid size\n");
return -1;
}
for(i = start; i < start + length; i += size) {
ioport_write_table[bsize][i] = func;
if (ioport_opaque[i] != NULL && ioport_opaque[i] != opaque)
hw_error("register_ioport_write: invalid opaque");
if (ioport_opaque[i] != NULL && ioport_opaque[i] != opaque) {
fprintf(stderr, "register_ioport_write: invalid opaque\n");
return -1;
}
ioport_opaque[i] = opaque;
}
return 0;