From df2e217786a80b93912890d5dc6c2c115321575a Mon Sep 17 00:00:00 2001 From: Sadik Ozer <46590392+ozersa@users.noreply.github.com> Date: Wed, 25 Dec 2024 14:27:44 +0300 Subject: [PATCH] fix(PeriphDrivers): Prevent nonsecure access to MAX32657 cache controller (#1312) Signed-off-by: Sadik Ozer --- Libraries/PeriphDrivers/Source/ICC/icc_me30.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/Libraries/PeriphDrivers/Source/ICC/icc_me30.c b/Libraries/PeriphDrivers/Source/ICC/icc_me30.c index cace41e7ea..87e0f269fa 100644 --- a/Libraries/PeriphDrivers/Source/ICC/icc_me30.c +++ b/Libraries/PeriphDrivers/Source/ICC/icc_me30.c @@ -37,20 +37,31 @@ Maxim Internal Use int MXC_ICC_ID(mxc_icc_info_t cid) { +#if CONFIG_TRUSTED_EXECUTION_SECURE return MXC_ICC_RevA_ID((mxc_icc_reva_regs_t *)MXC_ICC, cid); +#else + return E_NOT_SUPPORTED; +#endif } void MXC_ICC_Enable(void) { + /* Cache controller only accessible in secure world. */ +#if CONFIG_TRUSTED_EXECUTION_SECURE MXC_ICC_RevA_Enable((mxc_icc_reva_regs_t *)MXC_ICC); +#endif } void MXC_ICC_Disable(void) { +#if CONFIG_TRUSTED_EXECUTION_SECURE MXC_ICC_RevA_Disable((mxc_icc_reva_regs_t *)MXC_ICC); +#endif } void MXC_ICC_Flush(void) { +#if CONFIG_TRUSTED_EXECUTION_SECURE MXC_ICC_Com_Flush(); +#endif }