Other Parts Discussed in Thread: HALCOGEN
Hello,
I am trying to invoke IOMM errors to exercise my ESM error handling mechanism. From the TRM on the RM48L952 section 4.4.1 I note that any write to the IOMM registers without first unlocking them would generate an error. I looked at the muxinit() code of Halcogen and copied logic to alter to the pinMuxReg->PINMMR at runtime. I expect this would generate the configured ESM error response. But nothing happened.
Checking register values it is clear that ErrEna register is 0x0000000 so there is no error detection enabled in the IOMM module even though the ESM is configured to handle the channel 37 error with interrupt and nError driven low.
I checked pinmux.c and nowhere do I see the ERR_ENABLE_REG set to catch the errors. So I have added logic to pinmux.c, before the IOMM pin muxing is disabled to enable error detection. Running this code, with my application writes to PINMMR4 I still can't throw the error. The register activity of IOMM indicates that nothing is being triggered and my ESM handlers are definately not being triggered by the channel 37 interrupt.
See my code below, what am I missing here? How do I prove out the IOMM error detection?
Thanks
Jamie
