Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
richardfuzzy
Level 1
Level 1
First reply posted First question asked Welcome!

i'm trying to reset the 'ECC Status Register' using the FLASHCON2 register.

 

writing 0x00010000 to FLASHCON2 using a Lauterbach debugger works.

 

doing this in the code with

 

#define CPU2_FLASHCON2 (*(volatile uint32 *)0xF8841108)

CPU0_FLASHCON2=(CPU0_FLASHCON2 & 0x0000ffff) | 0x00010000;

 

does not reset the 'ECC Status Register'.

 

any hints ?

0 Likes
3 Replies
Di_W
Moderator
Moderator
Moderator
1000 replies posted 250 solutions authored 100 likes received

Hi,

P SV E means the register is combined accessed by P and SV and E.

E means CEx is inactive by SCU_EICON0.ENDINIT or SCU_WDTCPUxCON0.ENDINIT

SV means Supervisor Mode.

P is from Master x(MODE_ACCEN0.ENx=1)

dw

0 Likes

Thank,

do you have any example-code to bring the CPU in this state ?

richard

0 Likes
Di_W
Moderator
Moderator
Moderator
1000 replies posted 250 solutions authored 100 likes received
    uint16 endInitSafetyPassword = IfxScuWdt_getSafetyWatchdogPassword();

    /* Erase the sector */
    IfxScuWdt_clearSafetyEndinit(endInitSafetyPassword);        /* Disable EndInit protection                       */
    IfxFlash_eraseMultipleSectors(DFLASH_STARTING_ADDRESS, DFLASH_NUM_SECTORS); /* Erase the given sector           */
    IfxScuWdt_setSafetyEndinit(endInitSafetyPassword);          /* Enable EndInit protection                        */

Could you please try clrSafetyEndinit function? Please refer to above example code.

0 Likes