10GMAC-A004 details

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

10GMAC-A004 details

458 Views
aniljacob
Contributor I

Hi Support team,

I have a hardware based on P4080QorIQ processor. During the FMAN initialization, I am seeing the following error. It happens at attempting a workaround for an erratta as given by the log. The OS is based on linux-2.6.34 kernel. 

Aug 31 23:41:27 base0-0-0-5-0-11-1 kernel: cpu6: fsl_mac: FSL FMan MAC API based driver ()

Aug 31 23:41:27 base0-0-0-5-0-11-1 kernel: cpu6/6: Applying 10G tx-ecc error workaround (10GMAC-A004) ...

Aug 31 23:41:27 base0-0-0-5-0-11-1 kernel: cpu6/6: FAILED!

Aug 31 23:41:27 base0-0-0-5-0-11-1 kernel: cpu6/6: ! MAJOR FM-MAC Error [CPU06, linux/drivers/net/dpa/NetCommSw/Peripherals/FM/MAC/tgec.c:997 TgecInit]: Operation Timed Out;

Aug 31 23:41:27 base0-0-0-5-0-11-1 kernel: cpu6/6: TgecTxEccWorkaround FAILED, skipping workaround

Aug 31 23:41:27 base0-0-0-5-0-11-1 kernel: cpu6/6:

Aug 31 23:41:27 base0-0-0-5-0-11-1 kernel: cpu6: fsl_mac: ffe4f0000.ethernet: FMan XGEC version: 0x0001032c

Aug 31 23:41:27 base0-0-0-5-0-11-1 kernel: cpu6: fsl_mac: ffe4f0000.ethernet: FMan MAC address: ec:9e:cd:11:ad:eb

From the code snippet, seems like the operation is timing out

WRITE_UINT32(p_Fm->p_FmFpmRegs->fpmextc, 0x40000000);

    CORE_MemoryBarrier();

    while ((GET_UINT32(p_Fm->p_FmFpmRegs->fpmextc) & 0x40000000) &&

           --timeout) ;

    if (!timeout)

        return ERROR_CODE(E_TIMEOUT);

    return E_OK; WRITE_UINT32(p_Fm->p_FmFpmRegs->fpmextc, 0x40000000);

    CORE_MemoryBarrier();

    while ((GET_UINT32(p_Fm->p_FmFpmRegs->fpmextc) & 0x40000000) &&

           --timeout) ;

    if (!timeout)

        return ERROR_CODE(E_TIMEOUT);

    return E_OK;

The data sheet says, this is register which can be set by software and which gets cleared by FMAN once the operation is completed. Can you tell what is the external request  0x40000000 stands for?

Can you please comment what is the erratta it is referring to? What is the operation happening here? What can be the possible reasons of timeout in the workaround? What will be the impact of this failure in the working of the FMAN TGEC as I can see that the initialization of TGEC is still going forward?

Thanks

Anil Jacob

0 Kudos
1 Reply

298 Views
r8070z
NXP Employee
NXP Employee

Have a great day,

The errata is not public document. Please consider creating a technical case for the issue. See How I could create a Service Request?

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos