Announcements

Help us improve the Power & Sensing Selection Guide. Share feedback

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

cross mob
User19642
Level 1
Level 1
First like received Welcome!
Hi,

I am using Autosar FEE & FLS drivers from Infenion for my bootloader . I have written a simple NVM by myself
Currently I am facing an issue with the FEE driver.

Given below is a snap shot of my NVM initialization. Here it reads some information.

static Bool stackIsBusy(void)
{
MemIf_StatusType status = Fee_GetStatus();
return ((status == MEMIF_BUSY) || (status == MEMIF_BUSY_INTERNAL));
}

IO_ErrorType NVM_init()
{
Fls_17_Dmu_Init(&Fls_17_Dmu_Config);
Fee_Init(&Fee_Config);

while (stackIsBusy())
{
Fls_17_Dmu_MainFunction();
Fee_MainFunction();
}

if (Fee_Read(Fee_SharedLogistics, 0, SNVM_ramBuffer, SNVM_BLOCK_SIZE) == E_OK)
{
do
{
Fls_17_Dmu_MainFunction();
Fee_MainFunction();
} while (stackIsBusy());
}


Here the above do while loop is stuck in the infinite loop since the stack status is always busy (MEMIF_BUSY).
When I look in to the code I can see that 'DFlashStatus' is evaluated as 'FEE_S0_S1_INVALID' due to this FEE always in a state called "FEE_MAIN_INITGC". Its not changing to 'FEE_MAIN_READ' (for FEE read ) or 'FEE_MAIN_WRITE' (for FEE write ).
Due to this FEE status always in 'MEMIF_BUSY'. Same issue for write operation also
Please tell me how t fix this issue. Is this a HW issue or configuration related issue or SW issue.
0 Replies