fix BCD mask for date (Solaris 2.5 guest hang fix)
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 <atar4qemu@gmail.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
This commit is contained in:
parent
3c30dd5a68
commit
02f5da11d6
@ -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;
|
||||
|
Loading…
Reference in New Issue
Block a user