Quantcast
Channel: Processors forum - Recent Threads
Viewing all articles
Browse latest Browse all 17527

omapl137 emac driver with lwip

$
0
0

Hi,

I think my setup is not supported but I'm just looking for suggestions. I have the omapl137 running succesfully a tcp echo. This is runnings on the arm and with sysbios and lwip. The code is a port for the DSP that I have adapted to the ARM, available in lwip 1.4.1.

My goal is to echo everything I receive on the emac not just tcp. For that what I would like to try is to disable passing data to the lwip stack and handle the echo directly from a callback or function called by the interrupts.

My problem is that as soon as I comment out the following line of code:

err_t arm9emac_low_level_input(struct pbuf *p, struct netif *netif)
{
/* This means the pbuf is freed or consumed,
so the caller doesn't have to free it again */
//return ethernet_input(p, netif);
}

and I put a breakpoint inside the emac rx isr, I can reach the interrupt but just for a few iterations (2-6); after that it does not breaks (or counts, I also added a simple counter in case the interrupt could have been screwing up the idle thread).

I know, I'm initializing everything properly since the tcp_echo works. This is how I create the hwi:

// www.ti.com/.../omap-l137.pdf page 69

Hwi_Handle rxisr = Hwi_create(34, (Hwi_FuncPtr) arm9emac_rx_interrupt, NULL, NULL);
Hwi_Handle txisr = Hwi_create(35, (Hwi_FuncPtr) arm9emac_tx_interrupt, NULL, NULL);

My stimulus for making sure I'm can break is sending a ping to the netif to the 192.168.10.3 or the broadcast.

Maybe there is an simpler example I can start from without lwip, since what I want to do is simply echo everything the emac receives.

Best Regards


Viewing all articles
Browse latest Browse all 17527

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>