Hi,

I think there's a small issue with the pl110 emulation.
LCDIMSC and LCDControl are swapped depending whether versatile is used
as a platform or not. This is done in the write function but not in the
read function where it also should be done.

Possible patch:

Index: pl110.c
===================================================================
RCS file: /sources/qemu/qemu/hw/pl110.c,v
retrieving revision 1.9
diff -u -r1.9 pl110.c
--- pl110.c     3 Jun 2007 15:19:32 -0000       1.9
+++ pl110.c     17 Jun 2007 10:06:28 -0000
@@ -302,8 +302,12 @@
     case 5: /* LCDLPBASE */
         return s->lpbase;
     case 6: /* LCDIMSC */
+       if (s->versatile)
+         return s->cr;
         return s->int_mask;
     case 7: /* LCDControl */
+       if (s->versatile)
+         return s->int_mask;
         return s->cr;
     case 8: /* LCDRIS */
         return s->int_status;

Adam
-- 
Adam                 [EMAIL PROTECTED]
  Lackorzynski         http://os.inf.tu-dresden.de/~adam/


Reply via email to