summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZuma copybara merger <zuma-automerger@google.com>2022-09-29 04:01:39 +0000
committerCopybara-Service <copybara-worker@google.com>2022-09-30 02:28:15 -0700
commita46564c4127ef9e3c6fb73f04c4207555115a0ec (patch)
tree9bbe86e5bbda680f0d634e021bc67e42eec82ee9
parent70a30ff938243a3d71de2a4801ffc2df03a12948 (diff)
downloadrio-a46564c4127ef9e3c6fb73f04c4207555115a0ec.tar.gz
[Copybara Auto Merge] Merge branch zuma into android13-gs-pixel-5.15
edgetpu: Fix telemetry error handling gcip: remote unnecessary pointer cast Signed-off-by: Zuma copybara merger <zuma-automerger@google.com> GitOrigin-RevId: 43cb1d832687c5b52ad77761d0a28786724d8171 Change-Id: I319a49924c75ee117fd6ce086eb8531e3a437b0a
-rw-r--r--drivers/edgetpu/edgetpu-telemetry.c12
-rw-r--r--drivers/edgetpu/gcip-kernel-driver/drivers/gcip/gcip-telemetry.c2
2 files changed, 11 insertions, 3 deletions
diff --git a/drivers/edgetpu/edgetpu-telemetry.c b/drivers/edgetpu/edgetpu-telemetry.c
index 9376fba..f172e23 100644
--- a/drivers/edgetpu/edgetpu-telemetry.c
+++ b/drivers/edgetpu/edgetpu-telemetry.c
@@ -64,15 +64,23 @@ int edgetpu_telemetry_init(struct edgetpu_dev *etdev,
ret = gcip_telemetry_init(etdev->dev, &etdev->telemetry[i].trace, "telemetry_trace",
trace_mem[i].vaddr, EDGETPU_TELEMETRY_TRACE_BUFFER_SIZE,
gcip_telemetry_fw_trace);
- if (ret)
+ if (ret) {
+ gcip_telemetry_exit(&etdev->telemetry[i].log);
break;
+ }
etdev->telemetry[i].trace_mem = trace_mem[i];
#endif
}
if (ret)
- edgetpu_telemetry_exit(etdev);
+ while (i--) {
+#if IS_ENABLED(CONFIG_EDGETPU_TELEMETRY_TRACE)
+ gcip_telemetry_exit(&etdev->telemetry[i].trace);
+#endif
+ gcip_telemetry_exit(&etdev->telemetry[i].log);
+
+ }
return ret;
}
diff --git a/drivers/edgetpu/gcip-kernel-driver/drivers/gcip/gcip-telemetry.c b/drivers/edgetpu/gcip-kernel-driver/drivers/gcip/gcip-telemetry.c
index 3f4a8aa..f557c24 100644
--- a/drivers/edgetpu/gcip-kernel-driver/drivers/gcip/gcip-telemetry.c
+++ b/drivers/edgetpu/gcip-kernel-driver/drivers/gcip/gcip-telemetry.c
@@ -233,7 +233,7 @@ int gcip_telemetry_init(struct device *dev, struct gcip_telemetry *tel, const ch
tel->name = name;
tel->dev = dev;
- tel->header = (struct gcip_telemetry_header *)vaddr;
+ tel->header = vaddr;
tel->header->head = 0;
tel->header->tail = 0;
tel->header->size = size;