-/* SPDX-License-Identifier: GPL-2.0-or-later */
+// SPDX-License-Identifier: GPL-2.0-or-later
/*
* Support for RISC-V, debug version 0.13, which is currently (2/4/17) the
/* TODO: Try to use hasel in dmcontrol */
/* Set haltreq for each hart. */
- uint32_t control = control_base;
-
- control = set_hartsel(control_base, target->coreid);
+ uint32_t control = set_hartsel(control_base, target->coreid);
control = set_field(control, DM_DMCONTROL_HALTREQ,
target->reset_halt ? 1 : 0);
dmi_write(target, DM_DMCONTROL, control);
uint32_t rd_val;
uint32_t sbcs_orig;
- dmi_read(target, &sbcs_orig, DM_SBCS);
+ int retval = dmi_read(target, &sbcs_orig, DM_SBCS);
+ if (retval != ERROR_OK)
+ return retval;
uint32_t sbcs = sbcs_orig;
bool test_passed;