qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH][Resend] IDE: Return zero when reading error register with slave selected
@ 2009-01-08 19:43 Justin Chevrier
  2009-01-08 20:11 ` Anthony Liguori
  0 siblings, 1 reply; 2+ messages in thread
From: Justin Chevrier @ 2009-01-08 19:43 UTC (permalink / raw)
  To: qemu-devel

Original text below. Patch updated against head.

During hardware detection Openserver issues commands to slaves on both primary and secondary ports. We already return a zero for the status register in this situation but after reading the status register the Openserver installer proceeds to check the value of the error register. Currently we return the existing value in the register. This confuses the installer and it tries to access the slave units later on. When the command that gets issued later gets ignored the installer freezes. The patch below returns zero when reading the error register if a slave unit is selected. Openserver can now successfully be installed using the emulated IDE hard drive.

Changelog:

Return zero when reading error register with slave selected

Signed-off-by: Justin Chevrier <theburner1@yahoo.com>

--- hw/ide.c    (revision 6244)
+++ hw/ide.c    (working copy)
@@ -2467,7 +2467,8 @@
         ret = 0xff;
         break;
     case 1:
-        if (!ide_if[0].bs && !ide_if[1].bs)
+        if ((!ide_if[0].bs && !ide_if[1].bs) ||
+            (s != ide_if && !s->bs))
             ret = 0;
         else if (!hob)
             ret = s->error;



      

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [Qemu-devel] [PATCH][Resend] IDE: Return zero when reading error register with slave selected
  2009-01-08 19:43 [Qemu-devel] [PATCH][Resend] IDE: Return zero when reading error register with slave selected Justin Chevrier
@ 2009-01-08 20:11 ` Anthony Liguori
  0 siblings, 0 replies; 2+ messages in thread
From: Anthony Liguori @ 2009-01-08 20:11 UTC (permalink / raw)
  To: theburner1, qemu-devel

Justin Chevrier wrote:
> Original text below. Patch updated against head.
>
> During hardware detection Openserver issues commands to slaves on both primary and secondary ports. We already return a zero for the status register in this situation but after reading the status register the Openserver installer proceeds to check the value of the error register. Currently we return the existing value in the register. This confuses the installer and it tries to access the slave units later on. When the command that gets issued later gets ignored the installer freezes. The patch below returns zero when reading the error register if a slave unit is selected. Openserver can now successfully be installed using the emulated IDE hard drive.
>
> Changelog:
>
> Return zero when reading error register with slave selected
>
> Signed-off-by: Justin Chevrier <theburner1@yahoo.com>
>   

Applied.  Thanks for resending.

Regards,

Anthony Liguori

> --- hw/ide.c    (revision 6244)
> +++ hw/ide.c    (working copy)
> @@ -2467,7 +2467,8 @@
>          ret = 0xff;
>          break;
>      case 1:
> -        if (!ide_if[0].bs && !ide_if[1].bs)
> +        if ((!ide_if[0].bs && !ide_if[1].bs) ||
> +            (s != ide_if && !s->bs))
>              ret = 0;
>          else if (!hob)
>              ret = s->error;
>
>
>
>       
>
>
>   

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2009-01-08 20:11 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-01-08 19:43 [Qemu-devel] [PATCH][Resend] IDE: Return zero when reading error register with slave selected Justin Chevrier
2009-01-08 20:11 ` Anthony Liguori

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).