[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Cogent 637 board
It works now. But I have a question: do we know for sure that m_data is
miss aligned? Shouldn't we test it first?
Jay Monkman wrote:
Here's a patch that should fix the problem. Can you try it out and let me know
if works for you?
Did you also have a problem with current_tty in shared/console.c? I had to
modify it to get it to compile.
Yes, I didn't fix the problem, just commented out the offending lines.
diff -Naur rtems-126.96.36.199/c/src/lib/libbsp/arm/csb337/network/network.c
2005-04-26 18:00:38.000000000 -0500
2005-11-09 21:02:38.000000000 -0600
@@ -525,9 +525,11 @@
/* set the type of mbuf to ifp (ethernet I/F) */
m->m_pkthdr.rcvif = ifp;
m->m_nextpkt = 0;
- /* copy the packet into the cluster pointed to by the mbuf */
- memcpy((char *)m->m_ext.ext_buf,
+ /* Offset the ethernet header so the IP header will be aligned */
+ m->m_data += 2;
+ memcpy((char *)m->m_data,
(char *)(rxbuf_hdrs[sc->rx_buf_idx].address & 0xfffffffc),