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