Re: [PATCH v4 02/15] arm64: errata: Add detection for TRBE overwrite in FILL mode
From: Suzuki K Poulose
Date: Thu Oct 14 2021 - 10:18:03 EST
Hi
Thanks for the report. I have fixed all of them.
Suzuki
On 12/10/2021 16:31, Randy Dunlap wrote:
Hi,
On 10/12/21 6:17 AM, Suzuki K Poulose wrote:
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index 077f2ec4eeb2..404f56e87e93 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -666,6 +666,47 @@ config ARM64_ERRATUM_1508412
If unsure, say Y.
+config ARM64_WORKAROUND_TRBE_OVERWRITE_FILL_MODE
+ bool
+
+config ARM64_ERRATUM_2119858
+ bool "Cortex-A710: 2119858: workaround TRBE overwriting trace
data in FILL mode"
+ default y
+ depends on COMPILE_TEST # Until the CoreSight TRBE driver changes
are in
+ depends on CORESIGHT_TRBE
+ select ARM64_WORKAROUND_TRBE_OVERWRITE_FILL_MODE
+ help
+ This option adds the workaround for ARM Cortex-A710 erratum
2119858.
+
+ Affected Cortex-A710 cores could overwrite upto 3 cache lines
of trace
up to
+ data at the base of the buffer (ponited by TRBASER_EL1) in FILL
mode in
pointed to by
+ the event of a WRAP event.
+
+ Work around the issue by always making sure we move the
TRBPTR_EL1 by
+ 256bytes before enabling the buffer and filling the first
256bytes of
256 bytes 256 bytes
+ the buffer with ETM ignore packets upon disabling.
+
+ If unsure, say Y.
+
+config ARM64_ERRATUM_2139208
+ bool "Neoverse-N2: 2139208: workaround TRBE overwriting trace
data in FILL mode"
+ default y
+ depends on COMPILE_TEST # Until the CoreSight TRBE driver changes
are in
+ depends on CORESIGHT_TRBE
+ select ARM64_WORKAROUND_TRBE_OVERWRITE_FILL_MODE
+ help
+ This option adds the workaround for ARM Neoverse-N2 erratum
2139208.
+
+ Affected Neoverse-N2 cores could overwrite upto 3 cache lines
of trace
up to
+ data at the base of the buffer (ponited by TRBASER_EL1) in FILL
mode in
pointed to by
+ the event of a WRAP event.
+
+ Work around the issue by always making sure we move the
TRBPTR_EL1 by
+ 256bytes before enabling the buffer and filling the first
256bytes of
256 bytes 256 bytes
+ the buffer with ETM ignore packets upon disabling.
+
+ If unsure, say Y.