Other Parts Discussed in Thread: SK-AM62P-LP, AM62P
Tool/software:
Hello Expert,
Board :SK-AM62P-LP
OS :Processor SDK LINUX RT AM62P Debian Trixie -Version: 10.00.07.04
MCU+SDK :Version: 10.00.07.04
Above are my specifications, i am running the dcc example code which is available in the mcu+sdk.
In the TRM ,the total no.of possible error events are 1024 and these are classified as a 32 groups
And below is the events mapping to the ESM(Main) & WKUP_ESM
SDL_ESM_config DCC_Test_esmInitConfig_Inst = { /**< All high priority events to error pin */ .esmErrorConfig = {1u, 8u}, /* Self test error config */ .enableBitmap = {0x00000000u, 0x00000006bu, 0x00000000u, 0x00003000u, 0x00000000u, 0x00000380u, }, /**< All events enable: except clkstop events for unused clocks * and PCIE events */ .priorityBitmap = {0x00000000u, 0x00000006bu, 0x0000000u, 0x00003000u, 0x00000000u, 0x00000380u, }, /**< All events high priority: except clkstop events for unused clocks * and PCIE events */ .errorpinBitmap = {0x00000000u, 0x00000006bu, 0x00000000u, 0x00003000u, 0x00000000u, 0x00000380u, }, /**< All events high priority: except clkstop for unused clocks * and PCIE events */ }; SDL_ESM_config DCC_Test_esmInitConfig_Main = { /**< All high priority events to error pin */ .esmErrorConfig = {1u, 8u}, /* Self test error config */ .enableBitmap = {0x00000000u, 0x000000078u, 0x00008000u,0x003f3000u, 0x00000000u, 0x00000380u, }, /**< All events enable: except clkstop events for unused clocks * and PCIE events */ .priorityBitmap = {0x00000000u, 0x000000078u, 0x00008000u,0x003f3000u, 0x00000000u, 0x00000380u, }, /**< All events high priority: except clkstop events for unused clocks * and PCIE events */ .errorpinBitmap = {0x00000000u, 0x000000078u, 0x00008000u,0x003f3000u, 0x00000000u, 0x00000380u, }, /**< All events high priority: except clkstop for unused clocks * and PCIE events */ };
As per my understanding , above values are mapped as a bits ,ex:
enableBitmap[0] is represents the error enable of 0 to 31 events ,
enableBitmap[1] is for 32 to 63 like that (correct me if am wrong ) w.r t esm module.
Inside Esm_init () we are getting the Maximum error events for each Esm module .where EMS0(main) =249 ,WKUP_Max_events =92;
But if you see in the above code snippet you are registering more than 92 error events for wakup_esm. How it is possible to register?
Inside Esm_init () we are getting the Maximum error events for each Esm module .where EMS0(main) =249 ,WKUP_Max_events =92;
But if you see in the above code snippet you are registering more than 92 error events for wakup_esm. How it is possible to register?
And in the above code snippet,you are enabling the ECC ,some other error events also,is it required to enable those error events ?
Can you tell us how to map these ESM error events ?
Can you tell us how to map these ESM error events ?
Thank you.