FROMLIST: arm64: cpufeature: List early Cortex-A510 parts as having broken dbm
Versions of Cortex-A510 before r0p3 are affected by a hardware erratum where the hardware update of the dirty bit is not correctly ordered. Add these cpus to the cpu_has_broken_dbm list. Cc: stable@vger.kernel.org Signed-off-by: James Morse <james.morse@arm.com> Bug: 208481398 Link: https://lore.kernel.org/all/20220125154040.549272-3-james.morse@arm.com/ Change-Id: I6ad53c88c034f49f43e61aa2ff3547990583c654 Signed-off-by: Elliot Berman <quic_eberman@quicinc.com>
This commit is contained in:
@@ -92,6 +92,8 @@ stable kernels.
|
|||||||
+----------------+-----------------+-----------------+-----------------------------+
|
+----------------+-----------------+-----------------+-----------------------------+
|
||||||
| ARM | Cortex-A77 | #1508412 | ARM64_ERRATUM_1508412 |
|
| ARM | Cortex-A77 | #1508412 | ARM64_ERRATUM_1508412 |
|
||||||
+----------------+-----------------+-----------------+-----------------------------+
|
+----------------+-----------------+-----------------+-----------------------------+
|
||||||
|
| ARM | Cortex-A510 | #2051678 | ARM64_ERRATUM_2051678 |
|
||||||
|
+----------------+-----------------+-----------------+-----------------------------+
|
||||||
| ARM | Cortex-A710 | #2054223 | ARM64_ERRATUM_2054223 |
|
| ARM | Cortex-A710 | #2054223 | ARM64_ERRATUM_2054223 |
|
||||||
+----------------+-----------------+-----------------+-----------------------------+
|
+----------------+-----------------+-----------------+-----------------------------+
|
||||||
| ARM | Neoverse-N1 | #1188873,1418040| ARM64_ERRATUM_1418040 |
|
| ARM | Neoverse-N1 | #1188873,1418040| ARM64_ERRATUM_1418040 |
|
||||||
|
@@ -669,6 +669,16 @@ config ARM64_ERRATUM_1508412
|
|||||||
|
|
||||||
If unsure, say Y.
|
If unsure, say Y.
|
||||||
|
|
||||||
|
config ARM64_ERRATUM_2051678
|
||||||
|
bool "Cortex-A510: 2051678: disable Hardware Update of the page table's dirty bit"
|
||||||
|
help
|
||||||
|
This options adds the workaround for ARM Cortex-A510 erratum ARM64_ERRATUM_2051678.
|
||||||
|
Affected Coretex-A510 might not respect the ordering rules for
|
||||||
|
hardware update of the page table's dirty bit. The workaround
|
||||||
|
is to not enable the feature on affected CPUs.
|
||||||
|
|
||||||
|
If unsure, say Y.
|
||||||
|
|
||||||
config ARM64_WORKAROUND_TSB_FLUSH_FAILURE
|
config ARM64_WORKAROUND_TSB_FLUSH_FAILURE
|
||||||
bool
|
bool
|
||||||
|
|
||||||
|
@@ -1599,6 +1599,9 @@ static bool cpu_has_broken_dbm(void)
|
|||||||
MIDR_ALL_VERSIONS(MIDR_CORTEX_A55),
|
MIDR_ALL_VERSIONS(MIDR_CORTEX_A55),
|
||||||
/* Kryo4xx Silver (rdpe => r1p0) */
|
/* Kryo4xx Silver (rdpe => r1p0) */
|
||||||
MIDR_REV(MIDR_QCOM_KRYO_4XX_SILVER, 0xd, 0xe),
|
MIDR_REV(MIDR_QCOM_KRYO_4XX_SILVER, 0xd, 0xe),
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_ARM64_ERRATUM_2051678
|
||||||
|
MIDR_REV_RANGE(MIDR_CORTEX_A510, 0, 0, 2),
|
||||||
#endif
|
#endif
|
||||||
{},
|
{},
|
||||||
};
|
};
|
||||||
|
Reference in New Issue
Block a user