Part Number: TMS570LC4357
Hello,
This is a question regarding ESM 1.37 that notify IOMM error.(ESM1.37:Group1 Channel37)
We are now testing the ESM function of TMS570 MCU on the evaluation board.
Based on explanation in Sec 6.6.2 of SPNU563A, we tried to force ESM 1.37 by using the following test codes.
But the test result was not as expected. The MCU notified no error.
Address Error)
To read FFFF2000h on supervisor mode.
volatile uint32 *iomm_oob = (uint32 *)0xFFFF2000;
volatile uint32 val32;
/* Enable Pin Muxing */
pinMuxReg->KICKER0 = 0x83E70B13U;
pinMuxReg->KICKER1 = 0x95A4F1E0U;
val32 = *iomm_oob; /* Out of Bounds Read */
/* Disable Pin Muxing */
pinMuxReg->KICKER0 = 0x00000000U;
pinMuxReg->KICKER1 = 0x00000000U;
Protection Error)
To write KICK_REG0/KICK_REG1/PINMMRnn on user mode.
MPU configuration accept R/W access to IOMM reg on user mode.
/* Enter User Mode */
asm(" STMFD sp!, {r0}");
asm(" MRS r0, CPSR");
asm(" BIC r0, r0, #0x1f");
asm(" ORR r0, r0, #0x10");
asm(" MSR CPSR, r0");
asm(" LDMFD sp!, {r0}");
/* Enable Pin Muxing */
pinMuxReg->KICKER0 = 0x83E70B13U;
pinMuxReg->KICKER1 = 0x95A4F1E0U;
pinMuxReg->PINMUX[7] = 0U;
/* Disable Pin Muxing */
pinMuxReg->KICKER0 = 0x00000000U;
pinMuxReg->KICKER1 = 0x00000000U;
Should we modify the test codes? Please advise.
Thanks,
Sho.
