@@ -156,8 +156,19 @@ int thread_sreset(struct pdbg_target *thread_target)
int thread_sreset_all(void)
{
- struct pdbg_target *thread;
- int rc = 0;
+ struct pdbg_target *sbefifo, *thread;
+ int rc = 0, count = 0;
+
+ pdbg_for_each_class_target("sbefifo", sbefifo) {
+ if (pdbg_target_probe(sbefifo) != PDBG_TARGET_ENABLED)
+ continue;
+
+ rc |= sbe_control(sbefifo, 0xff, 0xf, 0x3);
+ count++;
+ }
+
+ if (count > 0)
+ return rc;
pdbg_for_each_class_target("thread", thread) {
rc |= thread_sreset(thread);
Signed-off-by: Amitay Isaacs <amitay@ozlabs.org> --- libpdbg/chip.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-)