soc: nxp: s32k3: fix erratum ERR011573

Due to erratum ERR011573, speculative accesses might be performed
to normal memory unmapped in the MPU. This can be avoided by using
MPU region 0 to cover all unmapped memory and make this region
execute-never and inaccessible.

Fixes #89852

Co-authored-by: Peter van der Perk <peter.vanderperk@nxp.com>
Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
This commit is contained in:
Manuel Argüelles 2025-05-15 14:07:25 -05:00 committed by Benjamin Cabé
commit c31640239c

View file

@ -1,5 +1,5 @@
/*
* Copyright 2023 NXP
* Copyright 2023, 2025 NXP
*
* SPDX-License-Identifier: Apache-2.0
*/
@ -14,6 +14,13 @@ extern char _rom_attr[];
static struct arm_mpu_region mpu_regions[] = {
/* ERR011573: use first region to prevent speculative access in entire memory space */
{
.name = "BACKGROUND",
.base = 0,
.attr = {REGION_4G | MPU_RASR_XN_Msk | P_NA_U_NA_Msk},
},
/* Keep before CODE region so it can be overlapped by SRAM CODE in non-XIP systems */
{
.name = "SRAM",