Skip to content

Commit

Permalink
Sdd support of write monitor command
Browse files Browse the repository at this point in the history
  • Loading branch information
jamesbrq committed Feb 17, 2024
1 parent 1457044 commit f13bfe3
Show file tree
Hide file tree
Showing 4 changed files with 31 additions and 33 deletions.
4 changes: 2 additions & 2 deletions hmp-commands.hx
Original file line number Diff line number Diff line change
Expand Up @@ -50,14 +50,14 @@ ERST

SRST
``write`` or ``w``
Quit the emulator.
Write to physical memory.
ERST

{
.name = "write|w",
.args_type = "addr:l,size:i,data:i",
.params = "addr size data",
.help = "write to ram",
.help = "write to physical memory",
.cmd = hmp_write,
.flags = "p",
},
Expand Down
2 changes: 1 addition & 1 deletion include/monitor/hmp.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@

bool hmp_handle_error(Monitor *mon, Error *err);

void hmp_write(Monitor* mon, const QDict* qdict);
void hmp_write(Monitor *mon, const QDict *qdict);
void hmp_info_name(Monitor *mon, const QDict *qdict);
void hmp_info_version(Monitor *mon, const QDict *qdict);
void hmp_info_kvm(Monitor *mon, const QDict *qdict);
Expand Down
41 changes: 20 additions & 21 deletions monitor/hmp-cmds.c
Original file line number Diff line number Diff line change
Expand Up @@ -14,20 +14,18 @@
*/

#include "qemu/osdep.h"
#include "monitor/hmp.h"
#include "net/net.h"
#include "net/eth.h"
#include "chardev/char.h"
#include "sysemu/block-backend.h"
#include "sysemu/runstate.h"
#include "qemu/config-file.h"
#include "qemu/option.h"
#include "qemu/timer.h"
#include "qemu/sockets.h"
#include "qemu/help_option.h"
#include "exec/memory.h"
#include "hw/core/cpu.h"
#include "hw/intc/intc.h"
#include "migration/misc.h"
#include "migration/snapshot.h"
#include "monitor/hmp.h"
#include "monitor/monitor-internal.h"
#include "qapi/error.h"
#include "net/eth.h"
#include "net/net.h"
#include "qapi/clone-visitor.h"
#include "qapi/error.h"
#include "qapi/opts-visitor.h"
#include "qapi/qapi-builtin-visit.h"
#include "qapi/qapi-commands-block.h"
Expand All @@ -44,23 +42,24 @@
#include "qapi/qapi-commands-tpm.h"
#include "qapi/qapi-commands-ui.h"
#include "qapi/qapi-commands-virtio.h"
#include "qapi/qapi-visit-virtio.h"
#include "qapi/qapi-visit-net.h"
#include "qapi/qapi-visit-migration.h"
#include "qapi/qapi-visit-net.h"
#include "qapi/qapi-visit-virtio.h"
#include "qapi/qmp/qdict.h"
#include "qapi/qmp/qerror.h"
#include "qapi/string-input-visitor.h"
#include "qapi/string-output-visitor.h"
#include "qom/object_interfaces.h"
#include "ui/console.h"
#include "qemu/config-file.h"
#include "qemu/cutils.h"
#include "qemu/error-report.h"
#include "hw/core/cpu.h"
#include "hw/intc/intc.h"
#include "migration/snapshot.h"
#include "migration/misc.h"
#include "exec/memory.h"
#include "exec/memory.h"
#include "qemu/help_option.h"
#include "qemu/option.h"
#include "qemu/sockets.h"
#include "qemu/timer.h"
#include "qom/object_interfaces.h"
#include "sysemu/block-backend.h"
#include "sysemu/runstate.h"
#include "ui/console.h"

#ifdef CONFIG_SPICE
#include <spice/enums.h>
Expand Down
17 changes: 8 additions & 9 deletions softmmu/memory.c
Original file line number Diff line number Diff line change
Expand Up @@ -3596,15 +3596,14 @@ void mtree_info(bool flatview, bool dispatch_tree, bool owner, bool disabled)
}


void ram_write(hwaddr addr, void* ptr, hwaddr len)
{
MemoryRegion* sm = get_system_memory();
MemoryRegion* mr;
const uint8_t* buf = ptr;
QTAILQ_FOREACH(mr, &sm->subregions, subregions_link) {
if (strcmp(memory_region_name(mr), "xbox.ram") == 0)
{
uint8_t* ram_ptr = qemu_map_ram_ptr(mr->ram_block, addr);
void ram_write(hwaddr addr, void *ptr, hwaddr len)
{
MemoryRegion *sm = get_system_memory();
MemoryRegion *mr;
const uint8_t *buf = ptr;
QTAILQ_FOREACH (mr, &sm->subregions, subregions_link) {
if (strcmp(memory_region_name(mr), "xbox.ram") == 0) {
uint8_t *ram_ptr = qemu_map_ram_ptr(mr->ram_block, addr);
memcpy(ram_ptr, buf, len);
break;
}
Expand Down

0 comments on commit f13bfe3

Please sign in to comment.