Network won't initialize

Steve Hunt hunt at alceli.ch
Mon Sep 4 13:03:21 UTC 2006


I had a problem (perhaps the same) with a realtek chip, I reported it to
the mailing list some time ago.  It was a problem with IP checksum not
being calculated correctly (have a look with etherreal)- strangely a
delay in the code calling the checksum routine made it work! - but then
(in cpukit/libnetworking/netinet/ip_output.c) I changed the calls to ip-
>ip_sum = in_cksum_hdr(ip); into ip->ip_sum = in_cksum(m, hlen); and it
works.

More recently there was a long discussion on checksums ... indicating
problems due to compiler optimizations, so maybe it has now been
fixed.   

Steve Hunt

On Mon, 2006-09-04 at 17:04 +0930, robe0413 at flinders.edu.au wrote:
> Hi everyone,
> 
> I've got a pc386 BSP, with a reatlek 8139D network card. I know RTEMS does not
> include a driver for this card, but I was able to find one that supposible
> works, which I have attached.
> 
> The problem is that when I try to initialize the network via
> rtems_bsdnet_initialize_network() the system just hangs and does nothing.
> 
> The network is being configured by the following header file:
> 
> /**
>  * Contains the Network configuration for the PC104
>  *
>  *@AUTHOR David Roberts
>  *@DATE 01/09/06
>  *@VERSION 1.00
>  */
> 
> #include <bsp.h>
> 
> /* defines and headers for the rtk driver */
> //#define __INSIDE_RTEMS_BSD_TCPIP_STACK__
> //#define Os_RTEMS
> #include "libNICS.h"
> 
> #define NETWORK_TASK_PRIORITY 30
> #define NETWORK_DRIVER_NAME "rt1"
> #define NETWORK_DRIVER_ATTACH rtems_rtk_driver_attach
> #define NETWORK_DRIVER_IRQ 11
> 
> //#define RTEMS_BSP_NETWORK_DRIVER_ATTACH rtems_NE_driver_attach
> 
> static struct rtems_bsdnet_ifconfig netdriver_config = {
>   NETWORK_DRIVER_NAME,
>   NETWORK_DRIVER_ATTACH,
>   NULL, /* next IF */
>   NULL, /* BOOTP supplies IP address */
>   NULL, /* BOOTP supplies IP net mask */
>   NULL, /* Defaults hardware address */
>   0,    /* ignore broadcast */
>   0,    /* mtu */
>   0,    /* rbuf_count */
>   0,    /* xbuf_count */
>   0,    /* port */
>   NETWORK_DRIVER_IRQ, /* irno */
>   0    /* bpar */
> };
> 
> struct rtems_bsdnet_config rtems_bsdnet_config = {
>   &netdriver_config,
>   rtems_bsdnet_do_bootp,
>   //  NETWORK_TASK_PRIORITY,
>   //  256*1024, /* MBUF spze */
>   //  512*1024, /* MBUF cluster space */
> };
> 
> 
> 
> If anyone has some solution or things I could try I would greatly appriciate it,
> as I've been starring at this problem for days with no solution.
> 
> Regards,
> David Roberts




More information about the users mailing list