mirror of
https://git.FreeBSD.org/ports.git
synced 2024-12-21 04:06:46 +00:00
- Fix SMC91c111 device emulation in qemu. This allows FreeBSD to boot on
the GUMSTIX platform. Approved by: nox (maintainer) Obtained from: qemu git
This commit is contained in:
parent
4fc8c9131a
commit
764bc338f9
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=280802
@ -7,7 +7,7 @@
|
||||
|
||||
PORTNAME= qemu
|
||||
PORTVERSION= 0.11.1
|
||||
PORTREVISION= 9
|
||||
PORTREVISION= 10
|
||||
CATEGORIES= emulators
|
||||
MASTER_SITES= ${MASTER_SITE_SAVANNAH} \
|
||||
http://bellard.org/qemu/
|
||||
|
38
emulators/qemu/files/patch-smc-fix
Normal file
38
emulators/qemu/files/patch-smc-fix
Normal file
@ -0,0 +1,38 @@
|
||||
diff --git a/hw/smc91c111.c b/hw/smc91c111.c
|
||||
index c1a88c9..e4a2447 100644
|
||||
--- qemu/hw/smc91c111.c
|
||||
+++ qemu/hw/smc91c111.c
|
||||
@@ -250,6 +250,7 @@ static void smc91c111_writeb(void *opaque, target_phys_addr_t offset,
|
||||
{
|
||||
smc91c111_state *s = (smc91c111_state *)opaque;
|
||||
|
||||
+ offset = offset & 0xf;
|
||||
if (offset == 14) {
|
||||
s->bank = value;
|
||||
return;
|
||||
@@ -276,6 +277,8 @@ static void smc91c111_writeb(void *opaque, target_phys_addr_t offset,
|
||||
case 10: case 11: /* RPCR */
|
||||
/* Ignored */
|
||||
return;
|
||||
+ case 12: case 13: /* Reserved */
|
||||
+ return;
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -421,6 +424,7 @@ static uint32_t smc91c111_readb(void *opaque, target_phys_addr_t offset)
|
||||
{
|
||||
smc91c111_state *s = (smc91c111_state *)opaque;
|
||||
|
||||
+ offset = offset & 0xf;
|
||||
if (offset == 14) {
|
||||
return s->bank;
|
||||
}
|
||||
@@ -461,6 +465,8 @@ static uint32_t smc91c111_readb(void *opaque, target_phys_addr_t offset)
|
||||
case 10: case 11: /* RPCR */
|
||||
/* Not implemented. */
|
||||
return 0;
|
||||
+ case 12: case 13: /* Reserved */
|
||||
+ return 0;
|
||||
}
|
||||
break;
|
||||
|
Loading…
Reference in New Issue
Block a user