qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH] fix BCD mask for date (Solaris 2.5 guest hang fix)


From: Artyom Tarasenko
Subject: [Qemu-devel] [PATCH] fix BCD mask for date (Solaris 2.5 guest hang fix)
Date: Mon, 23 Apr 2012 16:48:31 +0200

Fix BCD mask for date. The most visible effect of this patch is
Solaris 2.5.1 doesn't hang at boot if the day of month is >21.

Signed-off-by: Artyom Tarasenko <address@hidden>
---
 hw/m48t59.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/hw/m48t59.c b/hw/m48t59.c
index 60bbb00..0c50f45 100644
--- a/hw/m48t59.c
+++ b/hw/m48t59.c
@@ -239,7 +239,7 @@ void m48t59_write (void *opaque, uint32_t addr, uint32_t 
val)
         break;
     case 0x1FF5:
         /* alarm date */
-        tmp = from_bcd(val & 0x1F);
+        tmp = from_bcd(val & 0x3F);
         if (tmp != 0) {
             NVRAM->alarm.tm_mday = tmp;
             NVRAM->buffer[0x1FF5] = val;
@@ -310,8 +310,8 @@ void m48t59_write (void *opaque, uint32_t addr, uint32_t 
val)
         break;
     case 0x1FFD:
     case 0x07FD:
-        /* date */
-       tmp = from_bcd(val & 0x1F);
+        /* date (BCD) */
+       tmp = from_bcd(val & 0x3F);
        if (tmp != 0) {
            get_time(NVRAM, &tm);
            tm.tm_mday = tmp;
-- 
1.7.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]