OpenOCD
dmi_read()
is only used within OpenOCD.
Symbol previews are coming soon...
Symbols
loading...
Files
loading...
CodeScope
Development Tools
OpenOCD
dmi_read()
dmi_read() function
Syntax
from
riscv-013.c:661
static
int
dmi_read
(
struct
target
*
target
,
uint32_t
*
value
,
uint32_t
address
)
;
Arguments
target
value
address
References
Location
Referrer
Text
riscv-013.c:661
static
int
dmi_read
(
struct
target
*
target
,
uint32_t
*
value
,
uint32_t
address
)
riscv-013.c:740
wait_for_idle()
if
(
dmi_read
(
target
,
abstractcs
,
DM_ABSTRACTCS
)
!=
ERROR_OK
)
riscv-013.c:821
read_abstract_arg()
dmi_read
(
target
,
&
v
,
DM_DATA0
+
offset
+
1
)
;
riscv-013.c:825
read_abstract_arg()
dmi_read
(
target
,
&
v
,
DM_DATA0
+
offset
)
;
riscv-013.c:1049
examine_progbuf()
if
(
dmi_read
(
target
,
&
written
,
DM_PROGBUF0
)
!=
ERROR_OK
)
riscv-013.c:1207
scratch_read64()
if
(
dmi_read
(
target
,
&
v
,
DM_DATA0
+
scratch
->
debug_address
)
!=
ERROR_OK
)
riscv-013.c:1210
scratch_read64()
if
(
dmi_read
(
target
,
&
v
,
DM_DATA1
+
scratch
->
debug_address
)
!=
ERROR_OK
)
riscv-013.c:1215
scratch_read64()
if
(
dmi_read
(
target
,
&
v
,
DM_PROGBUF0
+
scratch
->
debug_address
)
!=
ERROR_OK
)
riscv-013.c:1218
scratch_read64()
if
(
dmi_read
(
target
,
&
v
,
DM_PROGBUF1
+
scratch
->
debug_address
)
!=
ERROR_OK
)
riscv-013.c:1538
set_haltgroup()
if
(
dmi_read
(
target
,
&
read
,
DM_DMCS2
)
!=
ERROR_OK
)
riscv-013.c:1603
examine()
if
(
dmi_read
(
target
,
&
dmcontrol
,
DM_DMCONTROL
)
!=
ERROR_OK
)
riscv-013.c:1636
examine()
if
(
dmi_read
(
target
,
&
hartinfo
,
DM_HARTINFO
)
!=
ERROR_OK
)
riscv-013.c:1654
examine()
if
(
dmi_read
(
target
,
&
info
->
sbcs
,
DM_SBCS
)
!=
ERROR_OK
)
riscv-013.c:1659
examine()
if
(
dmi_read
(
target
,
&
abstractcs
,
DM_ABSTRACTCS
)
!=
ERROR_OK
)
riscv-013.c:1792
riscv013_authdata_read()
return
dmi_read
(
target
,
value
,
DM_AUTHDATA
)
;
riscv-013.c:2303
init_target()
generic_info
->
dmi_read
=
&
dmi_read
;
riscv-013.c:2531
sb_read_address()
dmi_read
(
target
,
&
v
,
DM_SBADDRESS1
)
;
riscv-013.c:2535
sb_read_address()
dmi_read
(
target
,
&
v
,
DM_SBADDRESS0
)
;
riscv-013.c:2544
read_sbcs_nonbusy()
if
(
dmi_read
(
target
,
sbcs
,
DM_SBCS
)
!=
ERROR_OK
)
riscv-013.c:2612
read_memory_bus_v0()
if
(
dmi_read
(
target
,
&
access
,
DM_SBCS
)
!=
ERROR_OK
)
riscv-013.c:2622
read_memory_bus_v0()
if
(
dmi_read
(
target
,
&
value
,
DM_SBDATA0
)
!=
ERROR_OK
)
riscv-013.c:2634
read_memory_bus_v0()
if
(
dmi_read
(
target
,
&
access
,
DM_SBCS
)
!=
ERROR_OK
)
riscv-013.c:2652
read_memory_bus_v0()
if
(
dmi_read
(
target
,
&
value
,
DM_SBDATA0
)
!=
ERROR_OK
)
riscv-013.c:2661
read_memory_bus_v0()
if
(
dmi_read
(
target
,
&
value
,
DM_SBDATA0
)
!=
ERROR_OK
)
riscv-013.c:2668
read_memory_bus_v0()
if
(
dmi_read
(
target
,
&
sbcs
,
DM_SBCS
)
!=
ERROR_OK
)
riscv-013.c:3182
read_memory_progbuf_inner()
if
(
dmi_read
(
target
,
&
abstractcs
,
DM_ABSTRACTCS
)
!=
ERROR_OK
)
riscv-013.c:3185
read_memory_progbuf_inner()
if
(
dmi_read
(
target
,
&
abstractcs
,
DM_ABSTRACTCS
)
!=
ERROR_OK
)
riscv-013.c:3208
read_memory_progbuf_inner()
if
(
dmi_read
(
target
,
&
dmi_data0
,
DM_DATA0
)
!=
ERROR_OK
)
{
riscv-013.c:3212
read_memory_progbuf_inner()
if
(
size
>
4
&&
dmi_read
(
target
,
&
dmi_data1
,
DM_DATA1
)
!=
ERROR_OK
)
{
riscv-013.c:3314
read_memory_progbuf_inner()
if
(
dmi_read
(
target
,
&
dmi_data0
,
DM_DATA0
)
!=
ERROR_OK
)
riscv-013.c:3316
read_memory_progbuf_inner()
if
(
size
>
4
&&
dmi_read
(
target
,
&
dmi_data1
,
DM_DATA1
)
!=
ERROR_OK
)
riscv-013.c:3736
write_memory_bus_v1()
if
(
dmi_read
(
target
,
&
sbcs
,
DM_SBCS
)
!=
ERROR_OK
)
riscv-013.c:3936
write_memory_progbuf()
if
(
dmi_read
(
target
,
&
abstractcs
,
DM_ABSTRACTCS
)
!=
ERROR_OK
)
riscv-013.c:4140
riscv013_select_current_hart()
if
(
dmi_read
(
target
,
&
dmcontrol
,
DM_DMCONTROL
)
!=
ERROR_OK
)
riscv-013.c:4230
riscv013_halt_go()
if
(
dmi_read
(
target
,
&
dmcontrol
,
DM_DMCONTROL
)
!=
ERROR_OK
)
riscv-013.c:4367
riscv013_read_debug_buffer()
dmi_read
(
target
,
&
value
,
DM_PROGBUF0
+
index
)
;
riscv-013.c:4492
riscv013_clear_abstract_error()
dmi_read
(
target
,
&
abstractcs
,
DM_ABSTRACTCS
)
;
riscv-013.c:4494
riscv013_clear_abstract_error()
dmi_read
(
target
,
&
abstractcs
,
DM_ABSTRACTCS
)
;
Call Tree
Functions calling
dmi_read()
Functions called by
dmi_read()
wait_for_idle()
read_abstract_arg()
examine_progbuf()
scratch_read64()
set_haltgroup()
examine()
riscv013_authdata_read()
sb_read_address()
read_sbcs_nonbusy()
read_memory_bus_v0()
read_memory_progbuf_inner()
write_memory_bus_v1()
write_memory_progbuf()
riscv013_select_current_hart()
riscv013_halt_go()
riscv013_read_debug_buffer()
riscv013_clear_abstract_error()
all items filtered out
dmi_read()
dmi_op()
all items filtered out
Data read by
dmi_read()
dmi_op_t::DMI_OP_READ
dmi_read()::target
dmi_read()::value
dmi_read()::address
all items filtered out
dmi_read()
Implementations
dmi_read()
riscv_info::dmi_read
all items filtered out