AnsweredAssumed Answered

lpc_enetif_input HardFault

Question asked by Elmar Wieser on Nov 6, 2017
Latest reply on Nov 6, 2017 by jeremyzhou

Hello,

 

we have unreproduceable hardfaults in function lpc_enetif_input which occur randomly from 1 to 5 days.

 

void lpc_enetif_input(struct netif *netif)

{

                struct eth_hdr *ethhdr;

 

                struct pbuf *p;

 

                /* move received packet into a new pbuf */

                p = lpc_low_level_input(netif);

                if (p == NULL) {

                               return;

                }

 

The p pointer seems to be valid (0x20003c60) but has an invalid next pointer (0x8e8e1e60).

 

Heap and Stack seems to be okay (half filled while debugging the hardfault).

We are thinking about problems with the DMA controller / configuration, but cannot find the problem yet. Can anybody give us a hint?

 

System Configuration:

NO_SYS  = 1, LPC1778, DMA, no external RAM, IRAM1 0x10000000 Size 0x10000, IRAM2 0x20000000 Size 0x8000, lwip 2.0.3, Stack Size:  0x1E00,Heap Size: 0x6000

 

Lwipopts.h (https://pastebin.com/1vihHC31)

 

 

best regards

Elmar Wieser

Outcomes