Exception 6 messages?
Amalaye Oyake
amalaye.oyake at jpl.nasa.gov
Tue Mar 20 19:34:59 UTC 2007
Ok ... I seemed to have resolved my NIC issue but now I am getting
"Exception 6" messages. My target is a Dell Dimension XPS R400 that has a
3Com 3c905B-TX NIC ...
The code I am running is:
~/RTEMS/network-demos-4.6.99.3/tftpTest$ ls
ChangeLog init.c Makefile o-optimize test.c
The message I am getting is:
Exception 6 caught at PC 7FFFFFD by thread 0
---------------------------------------------------------
Processor execution context at time of the fault was :
EAX = F841F0 EBX = 157700 ECX = 4 EDX = 0
ESI = FFFFFFFF EDI = 157700 EBP = 15A5E8 ESP = 15A5B8
---------------------------------------------------------
Message List comments refer to an invalid instruction or a misguided jump
... My best bet may be to hook up a debugger.
Regards,
Amalaye
-----Original Message-----
From: Daron Chabot [mailto:djc915 at mail.usask.ca]
Sent: Monday, March 19, 2007 7:35 PM
To: Amalaye Oyake
Cc: Rtems
Subject: Re: List of supported NICs?
On 19-Mar-07, at 6:02 PM, Amalaye Oyake wrote:
> Thanks Daron,
>
> I am running some of the network-demos on a Dell Dimension XPS R400
> that has
> a 3Com 3c905B-TX NIC ... but the demo code keeps reporting a
> dec21140, and
> no network connectivity.
>
> For example I am getting:
>
> dec21140: found device 'dc1', bus 0x00, dev 0x00, func 0x00
> dec2114x: unit 1 base address 00000000.
>
> How does RTEMS select the right NIC? Is it predefined at compile time?
Yup. That's exactly right: the choice of NIC is defined at compile time.
Check out the networkconfig.h file in the network-demos package, as
well as the RTEMS source file: c/src/lib/libbsp/i386/pc386/include/
bsp.h.
It is the latter bsp.h file that is pulling in the definitions for
the dec21140. As in,
extern int rtems_dec21140_driver_attach(struct rtems_bsdnet_ifconfig
*, int);
#define BSP_DEC21140_NETWORK_DRIVER_NAME "dc1"
#define BSP_DEC21140_NETWORK_DRIVER_ATTACH rtems_dec21140_driver_attach
#ifndef RTEMS_BSP_NETWORK_DRIVER_NAME
#define RTEMS_BSP_NETWORK_DRIVER_NAME BSP_DEC21140_NETWORK_DRIVER_NAME
#endif
#ifndef RTEMS_BSP_NETWORK_DRIVER_ATTACH
#define RTEMS_BSP_NETWORK_DRIVER_ATTACH
BSP_DEC21140_NETWORK_DRIVER_ATTACH
#endif
You need to add the proper "defines" to pull in the driver for your
NIC. For a 3c905 you need to look at the elnk driver in c/src/libchip/
network. In particular you'll need to define things like this in
networkconfig.h:
extern int rtems_elnk_driver_attack(struct rtems_bsdnet_ifconfig *,
int);
#define RTEMS_BSP_NETWORK_DRIVER_NAME "elnk"
#define RTEMS_BSP_NETWORK_DRIVER_ATTACH "rtems_elnk_driver_attach"
HTH
-- dc
More information about the users
mailing list