Replace cpu_physical_memory_rw were possible
Using cpu_physical_memory_read, cpu_physical_memory_write and ldub_phys improves readability and allows removing some type casts. lduw_phys and ldl_phys were not used because both require aligned addresses. Therefore it is not possible to simply replace existing calls by one of these functions. Signed-off-by: Stefan Weil <weil@mail.berlios.de> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
This commit is contained in:
parent
b8b79323d0
commit
54f7b4a396
2
disas.c
2
disas.c
@ -345,7 +345,7 @@ monitor_read_memory (bfd_vma memaddr, bfd_byte *myaddr, int length,
|
||||
struct disassemble_info *info)
|
||||
{
|
||||
if (monitor_disas_is_physical) {
|
||||
cpu_physical_memory_rw(memaddr, myaddr, length, 0);
|
||||
cpu_physical_memory_read(memaddr, myaddr, length);
|
||||
} else {
|
||||
cpu_memory_rw_debug(monitor_disas_env, memaddr,myaddr, length, 0);
|
||||
}
|
||||
|
2
exec.c
2
exec.c
@ -3932,7 +3932,7 @@ void *cpu_physical_memory_map(target_phys_addr_t addr,
|
||||
bounce.addr = addr;
|
||||
bounce.len = l;
|
||||
if (!is_write) {
|
||||
cpu_physical_memory_rw(addr, bounce.buffer, l, 0);
|
||||
cpu_physical_memory_read(addr, bounce.buffer, l);
|
||||
}
|
||||
ptr = bounce.buffer;
|
||||
} else {
|
||||
|
@ -307,7 +307,7 @@ static void rc4030_writel(void *opaque, target_phys_addr_t addr, uint32_t val)
|
||||
if (s->cache_ltag == 0x80000001 && s->cache_bmask == 0xf0f0f0f) {
|
||||
target_phys_addr_t dest = s->cache_ptag & ~0x1;
|
||||
dest += (s->cache_maint & 0x3) << 3;
|
||||
cpu_physical_memory_rw(dest, (uint8_t*)&val, 4, 1);
|
||||
cpu_physical_memory_write(dest, &val, 4);
|
||||
}
|
||||
break;
|
||||
/* Remote Speed Registers */
|
||||
@ -704,7 +704,7 @@ void rc4030_dma_memory_rw(void *opaque, target_phys_addr_t addr, uint8_t *buf, i
|
||||
entry_addr = s->dma_tl_base + index * sizeof(dma_pagetable_entry);
|
||||
/* XXX: not sure. should we really use only lowest bits? */
|
||||
entry_addr &= 0x7fffffff;
|
||||
cpu_physical_memory_rw(entry_addr, (uint8_t *)&entry, sizeof(entry), 0);
|
||||
cpu_physical_memory_read(entry_addr, &entry, sizeof(entry));
|
||||
|
||||
/* Read/write data at right place */
|
||||
phys_addr = entry.frame + (addr & (DMA_PAGESIZE - 1));
|
||||
|
@ -233,7 +233,8 @@ void s390_virtio_device_sync(VirtIOS390Device *dev)
|
||||
dev->vdev->get_config(dev->vdev, dev->vdev->config);
|
||||
}
|
||||
|
||||
cpu_physical_memory_rw(cur_offs, dev->vdev->config, dev->vdev->config_len, 1);
|
||||
cpu_physical_memory_write(cur_offs,
|
||||
dev->vdev->config, dev->vdev->config_len);
|
||||
cur_offs += dev->vdev->config_len;
|
||||
}
|
||||
|
||||
|
@ -230,8 +230,8 @@ static void s390_init(ram_addr_t ram_size,
|
||||
}
|
||||
|
||||
if (kernel_cmdline) {
|
||||
cpu_physical_memory_rw(KERN_PARM_AREA, (uint8_t *)kernel_cmdline,
|
||||
strlen(kernel_cmdline), 1);
|
||||
cpu_physical_memory_write(KERN_PARM_AREA, kernel_cmdline,
|
||||
strlen(kernel_cmdline));
|
||||
}
|
||||
|
||||
/* Create VirtIO network adapters */
|
||||
|
@ -120,7 +120,7 @@ static void glue(draw_hwc_line_, PIXEL_NAME)(SM501State * s, int crt,
|
||||
|
||||
/* get pixel value */
|
||||
if (i % 4 == 0) {
|
||||
cpu_physical_memory_rw(cursor_addr, &bitset, 1, 0);
|
||||
bitset = ldub_phys(cursor_addr);
|
||||
cursor_addr++;
|
||||
}
|
||||
v = bitset & 3;
|
||||
|
@ -427,7 +427,7 @@ static inline int get_dwords(OHCIState *ohci,
|
||||
addr += ohci->localmem_base;
|
||||
|
||||
for (i = 0; i < num; i++, buf++, addr += sizeof(*buf)) {
|
||||
cpu_physical_memory_rw(addr, (uint8_t *)buf, sizeof(*buf), 0);
|
||||
cpu_physical_memory_read(addr, buf, sizeof(*buf));
|
||||
*buf = le32_to_cpu(*buf);
|
||||
}
|
||||
|
||||
@ -444,7 +444,7 @@ static inline int put_dwords(OHCIState *ohci,
|
||||
|
||||
for (i = 0; i < num; i++, buf++, addr += sizeof(*buf)) {
|
||||
uint32_t tmp = cpu_to_le32(*buf);
|
||||
cpu_physical_memory_rw(addr, (uint8_t *)&tmp, sizeof(tmp), 1);
|
||||
cpu_physical_memory_write(addr, &tmp, sizeof(tmp));
|
||||
}
|
||||
|
||||
return 1;
|
||||
@ -459,7 +459,7 @@ static inline int get_words(OHCIState *ohci,
|
||||
addr += ohci->localmem_base;
|
||||
|
||||
for (i = 0; i < num; i++, buf++, addr += sizeof(*buf)) {
|
||||
cpu_physical_memory_rw(addr, (uint8_t *)buf, sizeof(*buf), 0);
|
||||
cpu_physical_memory_read(addr, buf, sizeof(*buf));
|
||||
*buf = le16_to_cpu(*buf);
|
||||
}
|
||||
|
||||
@ -476,7 +476,7 @@ static inline int put_words(OHCIState *ohci,
|
||||
|
||||
for (i = 0; i < num; i++, buf++, addr += sizeof(*buf)) {
|
||||
uint16_t tmp = cpu_to_le16(*buf);
|
||||
cpu_physical_memory_rw(addr, (uint8_t *)&tmp, sizeof(tmp), 1);
|
||||
cpu_physical_memory_write(addr, &tmp, sizeof(tmp));
|
||||
}
|
||||
|
||||
return 1;
|
||||
@ -504,8 +504,7 @@ static inline int ohci_read_iso_td(OHCIState *ohci,
|
||||
static inline int ohci_read_hcca(OHCIState *ohci,
|
||||
uint32_t addr, struct ohci_hcca *hcca)
|
||||
{
|
||||
cpu_physical_memory_rw(addr + ohci->localmem_base,
|
||||
(uint8_t *)hcca, sizeof(*hcca), 0);
|
||||
cpu_physical_memory_read(addr + ohci->localmem_base, hcca, sizeof(*hcca));
|
||||
return 1;
|
||||
}
|
||||
|
||||
@ -531,8 +530,7 @@ static inline int ohci_put_iso_td(OHCIState *ohci,
|
||||
static inline int ohci_put_hcca(OHCIState *ohci,
|
||||
uint32_t addr, struct ohci_hcca *hcca)
|
||||
{
|
||||
cpu_physical_memory_rw(addr + ohci->localmem_base,
|
||||
(uint8_t *)hcca, sizeof(*hcca), 1);
|
||||
cpu_physical_memory_write(addr + ohci->localmem_base, hcca, sizeof(*hcca));
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
@ -1429,7 +1429,7 @@ static void memory_dump(Monitor *mon, int count, int format, int wsize,
|
||||
if (l > line_size)
|
||||
l = line_size;
|
||||
if (is_physical) {
|
||||
cpu_physical_memory_rw(addr, buf, l, 0);
|
||||
cpu_physical_memory_read(addr, buf, l);
|
||||
} else {
|
||||
env = mon_get_cpu();
|
||||
if (cpu_memory_rw_debug(env, addr, buf, l, 0) < 0) {
|
||||
@ -1605,7 +1605,7 @@ static int do_physical_memory_save(Monitor *mon, const QDict *qdict,
|
||||
l = sizeof(buf);
|
||||
if (l > size)
|
||||
l = size;
|
||||
cpu_physical_memory_rw(addr, buf, l, 0);
|
||||
cpu_physical_memory_read(addr, buf, l);
|
||||
if (fwrite(buf, 1, l, f) != l) {
|
||||
monitor_printf(mon, "fwrite() error in do_physical_memory_save\n");
|
||||
goto exit;
|
||||
@ -1625,17 +1625,16 @@ exit:
|
||||
static void do_sum(Monitor *mon, const QDict *qdict)
|
||||
{
|
||||
uint32_t addr;
|
||||
uint8_t buf[1];
|
||||
uint16_t sum;
|
||||
uint32_t start = qdict_get_int(qdict, "start");
|
||||
uint32_t size = qdict_get_int(qdict, "size");
|
||||
|
||||
sum = 0;
|
||||
for(addr = start; addr < (start + size); addr++) {
|
||||
cpu_physical_memory_rw(addr, buf, 1, 0);
|
||||
uint8_t val = ldub_phys(addr);
|
||||
/* BSD sum algorithm ('sum' Unix command) */
|
||||
sum = (sum >> 1) | (sum << 15);
|
||||
sum += buf[0];
|
||||
sum += val;
|
||||
}
|
||||
monitor_printf(mon, "%05d\n", sum);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user