Revision 052e87b0 memory.c
b/memory.c | ||
---|---|---|
152 | 152 |
.mr = (fr)->mr, \ |
153 | 153 |
.address_space = (as), \ |
154 | 154 |
.offset_within_region = (fr)->offset_in_region, \ |
155 |
.size = int128_get64((fr)->addr.size), \
|
|
155 |
.size = (fr)->addr.size, \
|
|
156 | 156 |
.offset_within_address_space = int128_get64((fr)->addr.start), \ |
157 | 157 |
.readonly = (fr)->readonly, \ |
158 | 158 |
})) |
... | ... | |
634 | 634 |
section = (MemoryRegionSection) { |
635 | 635 |
.address_space = as, |
636 | 636 |
.offset_within_address_space = int128_get64(fd->addr.start), |
637 |
.size = int128_get64(fd->addr.size),
|
|
637 |
.size = fd->addr.size,
|
|
638 | 638 |
}; |
639 | 639 |
MEMORY_LISTENER_CALL(eventfd_del, Forward, §ion, |
640 | 640 |
fd->match_data, fd->data, fd->e); |
... | ... | |
647 | 647 |
section = (MemoryRegionSection) { |
648 | 648 |
.address_space = as, |
649 | 649 |
.offset_within_address_space = int128_get64(fd->addr.start), |
650 |
.size = int128_get64(fd->addr.size),
|
|
650 |
.size = fd->addr.size,
|
|
651 | 651 |
}; |
652 | 652 |
MEMORY_LISTENER_CALL(eventfd_add, Reverse, §ion, |
653 | 653 |
fd->match_data, fd->data, fd->e); |
... | ... | |
1215 | 1215 |
section = (MemoryRegionSection) { |
1216 | 1216 |
.address_space = as, |
1217 | 1217 |
.offset_within_address_space = int128_get64(fr->addr.start), |
1218 |
.size = int128_get64(fr->addr.size),
|
|
1218 |
.size = fr->addr.size,
|
|
1219 | 1219 |
}; |
1220 | 1220 |
|
1221 | 1221 |
MEMORY_LISTENER_CALL(coalesced_mmio_del, Reverse, §ion, |
... | ... | |
1506 | 1506 |
MemoryRegionSection memory_region_find(MemoryRegion *mr, |
1507 | 1507 |
hwaddr addr, uint64_t size) |
1508 | 1508 |
{ |
1509 |
MemoryRegionSection ret = { .mr = NULL, .size = 0 };
|
|
1509 |
MemoryRegionSection ret = { .mr = NULL }; |
|
1510 | 1510 |
MemoryRegion *root; |
1511 | 1511 |
AddressSpace *as; |
1512 | 1512 |
AddrRange range; |
... | ... | |
1536 | 1536 |
ret.offset_within_region = fr->offset_in_region; |
1537 | 1537 |
ret.offset_within_region += int128_get64(int128_sub(range.start, |
1538 | 1538 |
fr->addr.start)); |
1539 |
ret.size = int128_get64(range.size);
|
|
1539 |
ret.size = range.size;
|
|
1540 | 1540 |
ret.offset_within_address_space = int128_get64(range.start); |
1541 | 1541 |
ret.readonly = fr->readonly; |
1542 | 1542 |
return ret; |
... | ... | |
1584 | 1584 |
.mr = fr->mr, |
1585 | 1585 |
.address_space = as, |
1586 | 1586 |
.offset_within_region = fr->offset_in_region, |
1587 |
.size = int128_get64(fr->addr.size),
|
|
1587 |
.size = fr->addr.size,
|
|
1588 | 1588 |
.offset_within_address_space = int128_get64(fr->addr.start), |
1589 | 1589 |
.readonly = fr->readonly, |
1590 | 1590 |
}; |
... | ... | |
1712 | 1712 |
"-" TARGET_FMT_plx "\n", |
1713 | 1713 |
base + mr->addr, |
1714 | 1714 |
base + mr->addr |
1715 |
+ (hwaddr)int128_get64(mr->size) - 1,
|
|
1715 |
+ (hwaddr)int128_get64(int128_sub(mr->size, int128_make64(1))),
|
|
1716 | 1716 |
mr->priority, |
1717 | 1717 |
mr->romd_mode ? 'R' : '-', |
1718 | 1718 |
!mr->readonly && !(mr->rom_device && mr->romd_mode) ? 'W' |
... | ... | |
1727 | 1727 |
TARGET_FMT_plx "-" TARGET_FMT_plx " (prio %d, %c%c): %s\n", |
1728 | 1728 |
base + mr->addr, |
1729 | 1729 |
base + mr->addr |
1730 |
+ (hwaddr)int128_get64(mr->size) - 1,
|
|
1730 |
+ (hwaddr)int128_get64(int128_sub(mr->size, int128_make64(1))),
|
|
1731 | 1731 |
mr->priority, |
1732 | 1732 |
mr->romd_mode ? 'R' : '-', |
1733 | 1733 |
!mr->readonly && !(mr->rom_device && mr->romd_mode) ? 'W' |
Also available in: Unified diff