projects
/
riscv-isa-sim.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Update debug_defines
[riscv-isa-sim.git]
/
riscv
/
debug_module.h
diff --git
a/riscv/debug_module.h
b/riscv/debug_module.h
index 00c66cc72253916c36366601ebfd2e40017fd92f..d581be8338c5d0e23a26c758b240061bd85d0570 100644
(file)
--- a/
riscv/debug_module.h
+++ b/
riscv/debug_module.h
@@
-56,6
+56,21
@@
typedef struct {
unsigned autoexecdata;
} abstractauto_t;
unsigned autoexecdata;
} abstractauto_t;
+typedef struct {
+ unsigned version;
+ bool readonaddr;
+ unsigned sbaccess;
+ bool autoincrement;
+ bool readondata;
+ unsigned error;
+ unsigned asize;
+ bool access128;
+ bool access64;
+ bool access32;
+ bool access16;
+ bool access8;
+} sbcs_t;
+
class debug_module_t : public abstract_device_t
{
public:
class debug_module_t : public abstract_device_t
{
public:
@@
-87,6
+102,8
@@
class debug_module_t : public abstract_device_t
static const unsigned debug_abstract_size = 2;
unsigned debug_abstract_start;
static const unsigned debug_abstract_size = 2;
unsigned debug_abstract_start;
+ static const unsigned hartsellen = 10;
+
sim_t *sim;
uint8_t debug_rom_whereto[4];
sim_t *sim;
uint8_t debug_rom_whereto[4];
@@
-101,12
+118,21
@@
class debug_module_t : public abstract_device_t
void write32(uint8_t *rom, unsigned int index, uint32_t value);
uint32_t read32(uint8_t *rom, unsigned int index);
void write32(uint8_t *rom, unsigned int index, uint32_t value);
uint32_t read32(uint8_t *rom, unsigned int index);
+ void sb_autoincrement();
+ void sb_read();
+ void sb_write();
+ unsigned sb_access_bits();
+
dmcontrol_t dmcontrol;
dmstatus_t dmstatus;
abstractcs_t abstractcs;
abstractauto_t abstractauto;
uint32_t command;
dmcontrol_t dmcontrol;
dmstatus_t dmstatus;
abstractcs_t abstractcs;
abstractauto_t abstractauto;
uint32_t command;
+ sbcs_t sbcs;
+ uint32_t sbaddress[4];
+ uint32_t sbdata[4];
+
processor_t *current_proc() const;
void reset();
bool perform_abstract_command();
processor_t *current_proc() const;
void reset();
bool perform_abstract_command();