From 82407d1a4035e5bfefb53ffdcb270872f813b34c Mon Sep 17 00:00:00 2001 From: Artyom Tarasenko Date: Sun, 13 Dec 2009 13:30:44 +0000 Subject: fdc/sparc32: don't hang on detection under OBP Stepping through the SS-5's OBP initialization routines it looks like reading fdc main status register should clear the fd interrupt. The patch doesn't fix problems with fdc on sparc platform, it only fixes fdc detection. Signed-off-by: Artyom Tarasenko Signed-off-by: Blue Swirl --- hw/fdc.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/hw/fdc.c b/hw/fdc.c index e875291a3a..11ea439ed3 100644 --- a/hw/fdc.c +++ b/hw/fdc.c @@ -960,6 +960,12 @@ static uint32_t fdctrl_read_main_status (fdctrl_t *fdctrl) fdctrl->dsr &= ~FD_DSR_PWRDOWN; fdctrl->dor |= FD_DOR_nRESET; + /* Sparc mutation */ + if (fdctrl->sun4m) { + retval |= FD_MSR_DIO; + fdctrl_reset_irq(fdctrl); + }; + FLOPPY_DPRINTF("main status register: 0x%02x\n", retval); return retval; -- cgit v1.2.3