From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NJYqD-0000Sc-8i for qemu-devel@nongnu.org; Sat, 12 Dec 2009 15:45:25 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NJYq8-0000Pa-Ql for qemu-devel@nongnu.org; Sat, 12 Dec 2009 15:45:24 -0500 Received: from [199.232.76.173] (port=33936 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NJYq8-0000PW-JU for qemu-devel@nongnu.org; Sat, 12 Dec 2009 15:45:20 -0500 Received: from mail-fx0-f219.google.com ([209.85.220.219]:60003) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NJYq8-0002Zh-8T for qemu-devel@nongnu.org; Sat, 12 Dec 2009 15:45:20 -0500 Received: by fxm19 with SMTP id 19so2030097fxm.17 for ; Sat, 12 Dec 2009 12:45:17 -0800 (PST) From: Artyom Tarasenko Date: Sat, 12 Dec 2009 21:45:14 +0100 Message-Id: <1260650714-13987-1-git-send-email-atar4qemu@google.com> Subject: [Qemu-devel] [FOR 0.12 PATCH] fdc/sparc don't hang on detection under OBP List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel Cc: Blue Swirl , Artyom Tarasenko 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 --- diff --git a/hw/fdc.c b/hw/fdc.c index e875291..11ea439 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;