mirror of https://gitlab.com/qemu-project/qemu
pci memory mapping fix
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@844 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
fb9f944458
commit
7bf5be70f7
9
hw/pci.c
9
hw/pci.c
|
@ -214,7 +214,7 @@ void pci_default_write_config(PCIDevice *d,
|
||||||
uint32_t address, uint32_t val, int len)
|
uint32_t address, uint32_t val, int len)
|
||||||
{
|
{
|
||||||
int can_write, i;
|
int can_write, i;
|
||||||
uint32_t end;
|
uint32_t end, addr;
|
||||||
|
|
||||||
if (len == 4 && (address >= 0x10 && address < 0x10 + 4 * 6)) {
|
if (len == 4 && (address >= 0x10 && address < 0x10 + 4 * 6)) {
|
||||||
PCIIORegion *r;
|
PCIIORegion *r;
|
||||||
|
@ -233,9 +233,10 @@ void pci_default_write_config(PCIDevice *d,
|
||||||
}
|
}
|
||||||
default_config:
|
default_config:
|
||||||
/* not efficient, but simple */
|
/* not efficient, but simple */
|
||||||
|
addr = address;
|
||||||
for(i = 0; i < len; i++) {
|
for(i = 0; i < len; i++) {
|
||||||
/* default read/write accesses */
|
/* default read/write accesses */
|
||||||
switch(address) {
|
switch(addr) {
|
||||||
case 0x00:
|
case 0x00:
|
||||||
case 0x01:
|
case 0x01:
|
||||||
case 0x02:
|
case 0x02:
|
||||||
|
@ -253,9 +254,9 @@ void pci_default_write_config(PCIDevice *d,
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (can_write) {
|
if (can_write) {
|
||||||
d->config[address] = val;
|
d->config[addr] = val;
|
||||||
}
|
}
|
||||||
address++;
|
addr++;
|
||||||
val >>= 8;
|
val >>= 8;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue