netdemo and cs8900a problems
Chris Johns
chrisj at rtems.org
Mon May 29 23:19:25 UTC 2006
Denny.Bai wrote:
> Thank you for your help.
> i have already set the interrupt controller regeisters properly and
> provided the interrupt services in the right position following your
> suggestion.
> now, the board can respond ping cmd. How exciting!
Excellent.
> but there are also some mistakes . if i telnet to the board,
> do_data_abort function will occur in the ip_input function or in the
> (*inetsw[ip_protox[ip->ip_p]].pr_input)
> function-----------udp_input(in the udp_userreq.c file).
>
>
> /****************ip_input.c**********************************/
> ( * Switch out to protocol's input routine.
> */
> 573: ipstat.ips_delivered++;
>
> 574: (*inetsw[ip_protox[ip->ip_p]].pr_input)(m, hlen);
> /***************error occurs here**************/
> 575: return;
> )
>
> /****************ip_input.c**********************************/
>
>
>
> /*******************************udp_userreq.c**********************************/
>
>
> 162: if (uh->uh_sum) {
> 163: ((struct ipovly *)ip)->ih_next = 0;/*********error occurs
> here********/
> 164: ((struct ipovly *)ip)->ih_prev = 0;
> 165: ((struct ipovly *)ip)->ih_x1 = 0;
> 166: ((struct ipovly *)ip)->ih_len = uh->uh_ulen;
> 167: uh->uh_sum = in_cksum(m, len + sizeof (struct ip));
> 168: if (uh->uh_sum) {
> 169: udpstat.udps_badsum++;
> 170: m_freem(m);
> 171: return;
Which line ?
Is it a checksum error ? I wonder if an ARM person has any idea.
Regards
Chris
More information about the users
mailing list