Failed to attach to END device
Attaching interface lo0...done
wdbConfig: error configuring WDB communication interface
VxWorks
Copyright 1984-2002 Wind River Systems, Inc.
CPU: IBM PowerPC 440GX Rev. 2.1
Runtime Name: VxWorks
Runtime Version: 5.5
BSP version: 1.2/3
Created: Apr 18 2006, 22:44:59
WDB Comm Type: WDB_COMM_END
WDB: Agent configuration failed.
0xffffe00 (tRootTask): ipAttach: Can't attach (unit 0). It is not
an END device.
0xffffe00 (tRootTask): Could not find device unit 0!
I don't know why. Have anyone give me some insights?
Thanks & Regards,
Rencrux
lc
What are "boot params" mentioned by you?
Thank you.
Regards,
Rencrux
-> ifShow
emac (unit number 2):
Flags: (0x8063) UP BROADCAST RUNNING ARP MULTICAST
Type: ETHERNET_CSMACD
Internet address: 192.168.0.99
Broadcast address: 192.168.0.255
Netmask 0xffffff00 Subnetmask 0xffffff00
Ethernet address is 00:04:ac:6c:6c:6c
Metric is 0
Maximum Transfer Unit size is 1500
7 packets received; 3 packets sent
7 multicast packets received
2 multicast packets sent
0 input errors; 0 output errors
0 collisions; 0 dropped
lo (unit number 0):
Flags: (0x8069) UP LOOPBACK RUNNING ARP MULTICAST
Type: SOFTWARE_LOOPBACK
Internet address: 127.0.0.1
Netmask 0xff000000 Subnetmask 0xff000000
Metric is 0
Maximum Transfer Unit size is 32768
0 packets received; 0 packets sent
0 multicast packets received
0 multicast packets sent
0 input errors; 0 output errors
0 collisions; 0 dropped
value = 0 = 0x0
I want to know what is 'lo', I suspect that the problem is from it.
Orion DY4[cpu0]->bootChange
'.' = clear field; '-' = go to previous field; ^D = quit
boot device : gteth0
processor number : 0
host name : test1
file name : dy4_183/vxworks_dy4_183.cpu0
inet on ethernet (e) : 146.58.54.21:ffffffc0
inet on backplane (b): 192.203.0.101
host inet (h) : 146.58.54.2
gateway inet (g) : 146.58.54.0
user (u) :
ftp password (pw) (blank = use rsh): ?
flags (f) : 0x80
target name (tn) : ?
startup script (s) : startup_dy4-gcp.cpu0
other (o) : This is what you should fill in with your
ethernet device when you boot from /tffs
value = 0 = 0x0
Good luck,
lc
Thank you,
Norman
Now I want to trace the progress of booting from vxworks_rom,bin
I find the code do not enter usrInit() in usrConfig.c after romStart()
in romStart.c.
It should turn into usrInit() after usrInit().
When booting from vxworks_rom,bin, It will show message as below,
Where does the message come from?
Failed to attach to END device
Attaching inte**ce lo0...done
wdbConfig: error configuring WDB communication inte**ce
VxWorks
Copyright 1984-2002 Wind River Systems, Inc.
Runtime Name: VxWorks
Runtime Version: 5.5
BSP version: 1.2/3
Created: Apr 19 2006, 09:17:03
WDB Comm Type: WDB_COMM_END
WDB: Agent configuration failed.
Could give me some insight?
Thank you very much
Norman
LarryC 写道:
Did you flash that vxWorks_rom.bin into flash or eprom? That's a
bootrom image I believe which will want to load a kernel from a net or
flash or other location.
I'm not clear what you are trying to do - do you want to use a bootrom
to boot from a flash file system, or bypass the bootrom and just start
vxWorks from rom/flash?
Can you show how your boot parameters are set up for what you are
doing?
Thanks
lc
I only want to start vxWorks_rom.bin from flash and bypass the bootrom.
I only have enable one of 4 EMACs and have not set up other 'boot
parameters'.
Which 'boot parameters' should be set up?
#define INCLUDE_NETWORK
#define INCLUDE_END
#define INCLUDE_EMAC_NETWORK
#define ENET_GROUP 6
#define EMAC2_PHY_MODE PHY_MODE_RGMII
#define EMAC3_PHY_MODE PHY_MODE_DISABLED
#undef EMAC0_ENABLE
#undef EMAC1_ENABLE
#undef EMAC3_ENABLE
#define EMAC2_ENABLE
#undef IP_MAX_UNITS
#define IP_MAX_UNITS 1
END_TBL_ENTRY endDevTbl [] =
{
#ifdef INCLUDE_EMAC_NETWORK
#ifdef EMAC0_ENABLE
{0, IBM_EMAC_LOAD_FUNC, IBM_EMAC_LOAD_STR_0, TRUE, NULL, FALSE},
#endif
#ifdef EMAC1_ENABLE
{1, IBM_EMAC_LOAD_FUNC, IBM_EMAC_LOAD_STR_1, TRUE, NULL, FALSE},
#endif
#ifdef EMAC2_ENABLE
{2, IBM_EMAC_LOAD_FUNC, IBM_EMAC_LOAD_STR_2, TRUE, NULL, FALSE},
#endif
#ifdef EMAC3_ENABLE
{3, IBM_EMAC_LOAD_FUNC, IBM_EMAC_LOAD_STR_3, TRUE, NULL, FALSE},
#endif
#endif
};
Thank you very much.
Regards,
Norman
Did you use tornado to config the rom.bin or are you modding the
config.h yourself? Trying it with Tornado might show some config
erros, or at least a missing component.
The error you are getting comes from usrNetEndDevStart in
usrNetEndBoot.c. That's called from usrNetworkDevStart in
usrNetworkBoot which should be built automatically in your prjConfig.c.
Most of this has to do with booting from a network, which is what you
aren't doing anymore, so it sounds like you should bypass all this.
The Tornado users manual explains how a romstart differs from a net or
other boot - G.9 Initialization Sequence for ROM-Based VxWorks. There
are also instructions on doing a romstart image. Note that generally
the image gets copied into RAM (text and data) before starting. If you
really want to run from ROM. you may have to hack romStart coce to do
this, though there may be some #defines that will configure it
correctly.
Good luck,
lc