| 6aa5d1b3 | 07-May-2024 |
Younghyun Park <younghyunpark@google.com> |
feat(cpus): support to update External LLC presence in Neoverse V2
The CPUECTLR_EL1.EXTLLC bit indicates that an external last level cache(LLC) is present in the system. The default value is interna
feat(cpus): support to update External LLC presence in Neoverse V2
The CPUECTLR_EL1.EXTLLC bit indicates that an external last level cache(LLC) is present in the system. The default value is internal LLC. Some systems which may have External LLC can enable the External LLC presece with new build option 'NEOVERSE_Vx_EXTERNAL_LLC'.
Change-Id: I740947f1ef78e31626dc5b96f6d6dc6658d0120f Signed-off-by: Younghyun Park <younghyunpark@google.com>
show more ...
|
| a5c4212f | 21-Feb-2024 |
Hsin-Hsiung Wang <hsin-hsiung.wang@mediatek.com> |
refactor(cpus): replace adr with adr_l
Replace "adr" with "adr_l" to handle symbols or labels that exceeds 1MB access range. This modification resolves the link error.
Change-Id: I9eba2e34c0a303b40
refactor(cpus): replace adr with adr_l
Replace "adr" with "adr_l" to handle symbols or labels that exceeds 1MB access range. This modification resolves the link error.
Change-Id: I9eba2e34c0a303b40e4c7b3ea7c5b113f4c6d989 Signed-off-by: Hsin-Hsiung Wang <hsin-hsiung.wang@mediatek.com>
show more ...
|
| 9e51f15e | 11-Mar-2024 |
Sona Mathew <sonarebecca.mathew@arm.com> |
chore: simplify the macro names in ENABLE_FEAT mechanism
Currently, the macros used to denote feature implementation in hardware follow a random pattern with a few macros having suffix as SUPPORTED
chore: simplify the macro names in ENABLE_FEAT mechanism
Currently, the macros used to denote feature implementation in hardware follow a random pattern with a few macros having suffix as SUPPORTED and a few using the suffix IMPLEMENTED. This patch aligns the macro names uniformly using the suffix IMPLEMENTED across all the features and removes unused macros pertaining to the Enable feat mechanism.
FEAT_SUPPORTED --> FEAT_IMPLEMENTED FEAT_NOT_SUPPORTED --> FEAT_NOT_IMPLEMENTED
Change-Id: I61bb7d154b23f677b80756a4b6a81f74b10cd24f Signed-off-by: Sona Mathew <sonarebecca.mathew@arm.com>
show more ...
|
| 47312115 | 05-Apr-2024 |
Sona Mathew <sonarebecca.mathew@arm.com> |
fix(cpus): workaround for Cortex-X4 erratum 2763018
Cortex-X4 erratum 2763018 is a Cat B erratum that is present in revisions r0p0, r0p1 and is fixed in r0p2.
The workaround is to set bit[47] of CP
fix(cpus): workaround for Cortex-X4 erratum 2763018
Cortex-X4 erratum 2763018 is a Cat B erratum that is present in revisions r0p0, r0p1 and is fixed in r0p2.
The workaround is to set bit[47] of CPUACTLR3_EL1 register. Setting this chicken bit might have a small impact on power and negligible impact on performance.
SDEN documentation: https://developer.arm.com/documentation/SDEN2432808/latest
Change-Id: Ia188e08c2eb2952923ec72e2a56efdeea836fe1e Signed-off-by: Sona Mathew <sonarebecca.mathew@arm.com>
show more ...
|
| c833ca66 | 10-Apr-2024 |
Bipin Ravi <bipin.ravi@arm.com> |
fix(cpus): workaround for Cortex-X4 erratum 2740089
Cortex-X4 erratum 2740089 is a Cat B erratum that applies to all revisions <=r0p1 and is fixed in r0p2. The workaround is to insert a dsb before t
fix(cpus): workaround for Cortex-X4 erratum 2740089
Cortex-X4 erratum 2740089 is a Cat B erratum that applies to all revisions <=r0p1 and is fixed in r0p2. The workaround is to insert a dsb before the isb in the power down sequence.
SDEN documentation: https://developer.arm.com/documentation/SDEN2432808/latest
Change-Id: I1d0fa4dd383437044a4467591f65a4a8514cabdc Signed-off-by: Bipin Ravi <bipin.ravi@arm.com>
show more ...
|
| 10134e35 | 10-Apr-2024 |
Bipin Ravi <bipin.ravi@arm.com> |
fix(cpus): workaround for Cortex-A715 erratum 2728106
Cortex-A715 erratum 2728106 is a Cat B(rare) erratum that is present in revision r0p0, r1p0 and r1p1. It is fixed in r1p2.
The workaround is to
fix(cpus): workaround for Cortex-A715 erratum 2728106
Cortex-A715 erratum 2728106 is a Cat B(rare) erratum that is present in revision r0p0, r1p0 and r1p1. It is fixed in r1p2.
The workaround is to execute an implementation specific sequence in the CPU.
SDEN documentation: https://developer.arm.com/documentation/SDEN2148827/latest
Change-Id: Ic825f9942e7eb13893fdbb44a2090b897758cbc4 Signed-off-by: Bipin Ravi <bipin.ravi@arm.com>
show more ...
|
| 328d304d | 07-Mar-2024 |
Sona Mathew <sonarebecca.mathew@arm.com> |
chore: rename Poseidon to Neoverse V3
Rename Neoverse Poseidon to Neoverse V3, make changes to related build flags, macros, file names etc.
Change-Id: I9e40ba8f80b7390703d543787e6cd2ab6301e891 Sign
chore: rename Poseidon to Neoverse V3
Rename Neoverse Poseidon to Neoverse V3, make changes to related build flags, macros, file names etc.
Change-Id: I9e40ba8f80b7390703d543787e6cd2ab6301e891 Signed-off-by: Sona Mathew <sonarebecca.mathew@arm.com>
show more ...
|
| e7419780 | 26-Mar-2024 |
Bipin Ravi <bipin.ravi@arm.com> |
Merge "fix(cpus): workaround for Cortex-A715 erratum 2413290" into integration |
| bd2f7d32 | 20-Mar-2024 |
Sona Mathew <sonarebecca.mathew@arm.com> |
fix(cpus): workaround for Cortex-A715 erratum 2413290
Erratum 2413290 is a Cat B erratum that is present only in revision r0p1 and is fixed in r1p1.
The initial implementation did not consider that
fix(cpus): workaround for Cortex-A715 erratum 2413290
Erratum 2413290 is a Cat B erratum that is present only in revision r0p1 and is fixed in r1p1.
The initial implementation did not consider that this fix is to be applied only when SPE (Statistical Profiling Extension) is implemented and enabled. This patch applies the fix by adding a check for ENABLE_SPE_FOR_NS.
Change-Id: I87b2175b89d6fb168c77e6ab233c90ca056791a1 Signed-off-by: Sona Mathew <sonarebecca.mathew@arm.com>
show more ...
|
| 152f4cfa | 14-Mar-2024 |
Bipin Ravi <biprav01@u203721.austin.arm.com> |
fix(cpus): workaround for Cortex-A720 erratum 2926083
Cortex-A720 erratum 2926083 is a Cat B erratum that is present in revisions r0p0, r0p1 and is fixed in r0p2. The errata is only present when SPE
fix(cpus): workaround for Cortex-A720 erratum 2926083
Cortex-A720 erratum 2926083 is a Cat B erratum that is present in revisions r0p0, r0p1 and is fixed in r0p2. The errata is only present when SPE (Statistical Profiling Extension) is implemented and enabled.
The workaround is to set bits[58:57] of the CPUACTLR_EL1 to 'b11 when SPE is "implemented and enabled".
SDEN documentation: https://developer.arm.com/documentation/SDEN2439421/latest
Change-Id: I30182c3893416af65b55fca9a913cb4512430434 Signed-off-by: Bipin Ravi <bipin.ravi@arm.com> Signed-off-by: Govindraj Raja <govindraj.raja@arm.com>
show more ...
|
| fe6c6574 | 21-Mar-2024 |
Madhukar Pappireddy <madhukar.pappireddy@arm.com> |
Merge "fix(cpus): workaround for Cortex-A720 erratum 2940794" into integration |
| 7385213e | 12-Mar-2024 |
Bipin Ravi <biprav01@u203721.austin.arm.com> |
fix(cpus): workaround for Cortex-A720 erratum 2940794
Cortex-A720 erratum 2940794 is a Cat B erratum that is present in revision r0p0, r0p1 and is fixed in r0p2.
The workaround is to set bit[37] of
fix(cpus): workaround for Cortex-A720 erratum 2940794
Cortex-A720 erratum 2940794 is a Cat B erratum that is present in revision r0p0, r0p1 and is fixed in r0p2.
The workaround is to set bit[37] of the CPUACTLR2_EL1 to 1.
SDEN documentation: https://developer.arm.com/documentation/SDEN2439421/latest
Change-Id: I1488802e0ec7c16349c9633bb45de4d0e1faa9ad Signed-off-by: Bipin Ravi <biprav01@u203721.austin.arm.com>
show more ...
|
| f36faa71 | 12-Mar-2024 |
Lauren Wehrmeister <lauren.wehrmeister@arm.com> |
Merge "fix(cpus): fix a defect in Cortex-A715 erratum 2561034" into integration |
| 57ab6d89 | 11-Mar-2024 |
Bipin Ravi <biprav01@u203721.austin.arm.com> |
fix(cpus): fix a defect in Cortex-A715 erratum 2561034
Cortex-A715 erratum 2561034 mitigation needs to be applied during reset. This patch fixes the current macro usage from runtime to reset for bot
fix(cpus): fix a defect in Cortex-A715 erratum 2561034
Cortex-A715 erratum 2561034 mitigation needs to be applied during reset. This patch fixes the current macro usage from runtime to reset for both start and end macros.
Change-Id: I4f115bbb27c57f16cada2a7eb314af8380f93cb4 Signed-off-by: Bipin Ravi <biprav01@u203721.austin.arm.com>
show more ...
|
| 15a04615 | 20-Feb-2024 |
Sona Mathew <sonarebecca.mathew@arm.com> |
fix(cpus): workaround for Cortex-A715 erratum 2413290
Cortex-A715 erratum 2413290 is a Cat B erratum that is present only in revision r1p0 and is fixed in r1p1. The errata is only present when SPE(S
fix(cpus): workaround for Cortex-A715 erratum 2413290
Cortex-A715 erratum 2413290 is a Cat B erratum that is present only in revision r1p0 and is fixed in r1p1. The errata is only present when SPE(Statistical Profiling Extension) is enabled.
The workaround is to set bits[58:57] of the CPUACTLR_EL1 to 'b11 when SPE is enabled, ENABLE_SPE_FOR_NS=1.
SDEN documentation: https://developer.arm.com/documentation/SDEN2148827/latest
Change-Id: Iaeb258c8b0a92e93d70b7dad6ba59d1056aeb135 Signed-off-by: Sona Mathew <sonarebecca.mathew@arm.com>
show more ...
|
| 33c665ae | 02-Jan-2024 |
Harrison Mutai <harrison.mutai@arm.com> |
fix(cpus): workaround for Cortex-A715 erratum 2344187
Cortex-A715 erratum 2344187 is a Cat B erratum that applies to r0p0, r1p0 and is fixed in r1p1. The workaround is to set GCR_EL1.RRND to 0b1, an
fix(cpus): workaround for Cortex-A715 erratum 2344187
Cortex-A715 erratum 2344187 is a Cat B erratum that applies to r0p0, r1p0 and is fixed in r1p1. The workaround is to set GCR_EL1.RRND to 0b1, and apply an implementation specific patch sequence.
SDEN: https://developer.arm.com/documentation/SDEN2148827/latest
Change-Id: I78ea39a91254765c964bff89f771af33b23f29c1 Signed-off-by: Harrison Mutai <harrison.mutai@arm.com>
show more ...
|
| 53b3cd25 | 27-Feb-2024 |
Bipin Ravi <biprav01@u203721.austin.arm.com> |
fix(cpus): workaround for Cortex-A715 erratum 2331818
Cortex-A715 erratum 2331818 is a cat B erratum that applies to revisions r0p0 and r1p0 and is fixed in r1p1. The workaround is to set bit[20] of
fix(cpus): workaround for Cortex-A715 erratum 2331818
Cortex-A715 erratum 2331818 is a cat B erratum that applies to revisions r0p0 and r1p0 and is fixed in r1p1. The workaround is to set bit[20] of CPUACTLR2_EL1. Setting this bit is expected to have a negligible performance impact.
SDEN can be found here: https://developer.arm.com/documentation/SDEN2148827/latest
Change-Id: If3b1ed78b145ab6515cdd41135314350ed556381 Signed-off-by: Bipin Ravi <biprav01@u203721.austin.arm.com>
show more ...
|
| 1f732471 | 27-Feb-2024 |
Bipin Ravi <biprav01@u203721.austin.arm.com> |
fix(cpus): workaround for Cortex-A715 erratum 2420947
Cortex-A715 erratum 2420947 is a cat B erratum that applies only to revision r1p0 and is fixed in r1p1. The workaround is to set bit[33] of CPUA
fix(cpus): workaround for Cortex-A715 erratum 2420947
Cortex-A715 erratum 2420947 is a cat B erratum that applies only to revision r1p0 and is fixed in r1p1. The workaround is to set bit[33] of CPUACTLR2_EL1. This will prevent store and store-release to merge inside the write buffer, and it is not expected to have much performance impacts.
SDEN can be found here: https://developer.arm.com/documentation/SDEN2148827/latest
Change-Id: I01a71b878cd958e742ff8357f8cdfbfc5625de47 Signed-off-by: Bipin Ravi <biprav01@u203721.austin.arm.com>
show more ...
|
| 262dc9f7 | 27-Feb-2024 |
Bipin Ravi <biprav01@u203721.austin.arm.com> |
fix(cpus): workaround for Cortex-A715 erratum 2429384
Cortex-A715 erratum 2429384 is a cat B erratum that applies to revision r1p0 and is fixed in r1p1. The workaround is to set bit[27] of CPUACTLR2
fix(cpus): workaround for Cortex-A715 erratum 2429384
Cortex-A715 erratum 2429384 is a cat B erratum that applies to revision r1p0 and is fixed in r1p1. The workaround is to set bit[27] of CPUACTLR2_EL1. There is no workaround for revision r0p0.
SDEN can be found here: https://developer.arm.com/documentation/SDEN2148827/latest
Change-Id: I3cdb1b71567542174759f6946e9c81f77d0d993d Signed-off-by: Bipin Ravi <biprav01@u203721.austin.arm.com>
show more ...
|
| 7f69a406 | 27-Feb-2024 |
Bipin Ravi <biprav01@u203721.austin.arm.com> |
fix(cpus): workaround for Cortex-X3 erratum 2372204
Cortex-X3 erratum 2372204 is a Cat B erratum that applies to revisions r0p0 and r1p0. It is fixed in r1p1.
The workaround is to set bit[40] of CP
fix(cpus): workaround for Cortex-X3 erratum 2372204
Cortex-X3 erratum 2372204 is a Cat B erratum that applies to revisions r0p0 and r1p0. It is fixed in r1p1.
The workaround is to set bit[40] of CPUACTLR2_EL1 to disable folding of demand requests into older prefetches with L2 miss requests outstanding.
SDEN can be found here: https://developer.arm.com/documentation/SDEN2055130/latest
Change-Id: Iad28f8625c84186fbd8049406d139d4f15c6e069 Signed-off-by: Bipin Ravi <biprav01@u203721.austin.arm.com>
show more ...
|
| 6a6b2823 | 25-Jan-2024 |
Bipin Ravi <bipin.ravi@arm.com> |
fix(cpus): workaround for Cortex-A715 erratum 2561034
Cortex-A715 erratum 2561034 is a Cat B erratum that applies to revision r1p0 and is fixed in r1p1.
The workaround is to set bit[26] in CPUACTLR
fix(cpus): workaround for Cortex-A715 erratum 2561034
Cortex-A715 erratum 2561034 is a Cat B erratum that applies to revision r1p0 and is fixed in r1p1.
The workaround is to set bit[26] in CPUACTLR2_EL1. Setting this bit is not expected to have a significant performance impact.
SDEN documentation: https://developer.arm.com/documentation/SDEN2148827/latest
Change-Id: I377f250a2994b6ced3ac7d93f947af6ceb690d49 Signed-off-by: Bipin Ravi <bipin.ravi@arm.com>
show more ...
|
| c1aa3fa5 | 25-Jan-2024 |
Bipin Ravi <bipin.ravi@arm.com> |
fix(cpus): workaround for Cortex X3 erratum 2641945
Cortex X3 erratum 2641945 is a Cat B erratum that applies to all revisions <= r1p0 and is fixed in r1p1.
The workaround is to disable the affecte
fix(cpus): workaround for Cortex X3 erratum 2641945
Cortex X3 erratum 2641945 is a Cat B erratum that applies to all revisions <= r1p0 and is fixed in r1p1.
The workaround is to disable the affected L1 data cache prefetcher by setting CPUACTLR6_EL1[41] to 1. Doing so will incur a performance penalty of ~1%. Contact Arm for an alternate workaround that impacts power.
SDEN documentation: https://developer.arm.com/documentation/2055130/latest
Change-Id: Ia6d6ac8a66936c63b8aa8d7698b937f42ba8f044 Signed-off-by: Bipin Ravi <bipin.ravi@arm.com>
show more ...
|
| 68cac6a0 | 20-Dec-2023 |
Bipin Ravi <bipin.ravi@arm.com> |
fix(cpus): workaround for Cortex-A78C erratum 2683027
Cortex-A78C erratum 2683027 is a cat B erratum that applies to revisions r0p1 - r0p2 and is still open. The workaround is to execute a specific
fix(cpus): workaround for Cortex-A78C erratum 2683027
Cortex-A78C erratum 2683027 is a cat B erratum that applies to revisions r0p1 - r0p2 and is still open. The workaround is to execute a specific code sequence in EL3 during reset.
SDEN can be found here: https://developer.arm.com/documentation/SDEN-2004089/latest
Change-Id: I2bf9e675f48b62b4cd203100f7df40f4846aafa8 Signed-off-by: Bipin Ravi <bipin.ravi@arm.com>
show more ...
|
| a65c5ba3 | 20-Dec-2023 |
Bipin Ravi <bipin.ravi@arm.com> |
fix(cpus): workaround for Cortex-X3 erratum 2266875
Cortex-X3 erratum 2266875 is a Cat B erratum that applies to all revisions <= r1p0 and is fixed in r1p1. The workaround is to set CPUACTLR_EL1[22]
fix(cpus): workaround for Cortex-X3 erratum 2266875
Cortex-X3 erratum 2266875 is a Cat B erratum that applies to all revisions <= r1p0 and is fixed in r1p1. The workaround is to set CPUACTLR_EL1[22]=1 which will cause the CFP instruction to invalidate all branch predictor resources regardless of context.
SDEN Documentation: https://developer.arm.com/documentation/2055130/latest
Change-Id: I9c610777e222f57f520d223bb03fc5ad05af1077 Signed-off-by: Bipin Ravi <bipin.ravi@arm.com>
show more ...
|
| 3f9df2c6 | 20-Dec-2023 |
Bipin Ravi <bipin.ravi@arm.com> |
fix(cpus): workaround for Cortex-X3 erratum 2302506
Cortex-X3 erratum 2302506 is a cat B erratum that applies to revisions r0p0-r1p1 and is fixed in r1p2. The workaround is to set bit[0] of CPUACTLR
fix(cpus): workaround for Cortex-X3 erratum 2302506
Cortex-X3 erratum 2302506 is a cat B erratum that applies to revisions r0p0-r1p1 and is fixed in r1p2. The workaround is to set bit[0] of CPUACTLR2 which will force PLDW/PFRM ST to behave like PLD/PRFM LD and not cause invalidation to other PE caches.
There might be a small performance degradation to this workaround for certain workloads that share data.
SDEN can be found here: https://developer.arm.com/documentation/2055130/latest
Change-Id: I048b830867915b88afa36582c6da05734a56d22a Signed-off-by: Bipin Ravi <bipin.ravi@arm.com>
show more ...
|