diff mbox

macio: remove nonexistent interrupt on pin 1

Message ID 1433805832-31863-1-git-send-email-i.am.cormac.obrien@gmail.com
State New
Headers show

Commit Message

Cormac O'Brien June 8, 2015, 11:23 p.m. UTC
The current macio device implementation declares an interrupt that doesn't
seem to exist in the actual hardware or any other emulators. Mac OS 9 counts
the presence of this interrupt as a fatal error and progresses further without
it.

Signed-off-by: Cormac O'Brien <i.am.cormac.obrien@gmail.com>

---
 hw/misc/macio/macio.c | 2 --
 1 file changed, 2 deletions(-)

Comments

Alexander Graf June 9, 2015, 7:45 a.m. UTC | #1
On 09.06.15 01:23, Cormac O'Brien wrote:
> The current macio device implementation declares an interrupt that doesn't
> seem to exist in the actual hardware or any other emulators. Mac OS 9 counts
> the presence of this interrupt as a fatal error and progresses further without
> it.

This is only half of the problem unfortunately :). The reason the
existence of an interrupt pin is a problem is that OpenBIOS
automatically generates an interrupt property in the device tree for the
macio device.

Please mention this in the patch description as well. Also, please make
sure to CC qemu-ppc@nongnu.org on v2 :).


Thanks!

Alex

> 
> Signed-off-by: Cormac O'Brien <i.am.cormac.obrien@gmail.com>
> 
> ---
>  hw/misc/macio/macio.c | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/hw/misc/macio/macio.c b/hw/misc/macio/macio.c
> index 063ad80..306c95e 100644
> --- a/hw/misc/macio/macio.c
> +++ b/hw/misc/macio/macio.c
> @@ -132,8 +132,6 @@ static int macio_common_initfn(PCIDevice *d)
>      SysBusDevice *sysbus_dev;
>      int ret;
>  
> -    d->config[0x3d] = 0x01; // interrupt on pin 1
> -
>      ret = qdev_init(DEVICE(&s->cuda));
>      if (ret < 0) {
>          return ret;
>
diff mbox

Patch

diff --git a/hw/misc/macio/macio.c b/hw/misc/macio/macio.c
index 063ad80..306c95e 100644
--- a/hw/misc/macio/macio.c
+++ b/hw/misc/macio/macio.c
@@ -132,8 +132,6 @@  static int macio_common_initfn(PCIDevice *d)
     SysBusDevice *sysbus_dev;
     int ret;
 
-    d->config[0x3d] = 0x01; // interrupt on pin 1
-
     ret = qdev_init(DEVICE(&s->cuda));
     if (ret < 0) {
         return ret;