Hello together,
I set up two Raspberry 4 Compute Modules according to the documentation provided here:
https://labs.windriver.com/downloads/wrsdk-vxworks7-docs/2203/README_raspberrypi4b.html
They boot up as expected and also are reachable via telnet:
# microcom -s 115200 /dev/ttyS1
7.9 GiB
RPI Compute Module 4 (0xd03141)
Core: 208 devices, 15 uclasses, devicetree: board
MMC: mmcnr@7e300000: 1, mmc@7e340000: 0
Loading Environment from FAT... OK
In: serial
Out: serial
Err: serial
Net:
Warning: ethernet@7d580000 MAC addresses don't match:
Address in DT is e4:5f:01:e0:78:55
Address in environment is dc:a6:32:07:b3:a4
eth0: ethernet@7d580000
Hit any key to stop autoboot: 1 12667552 bytes read in 555 ms (21.8 MiB/s)
## Booting kernel from Legacy Image at 00100000 ...
Image Name: vxworks
Image Type: AArch64 VxWorks Kernel Image (uncompressed)
Data Size: 12667488 Bytes = 12.1 MiB
Load Address: 00100000
Entry Point: 00100000
Verifying Checksum ... Instantiating /ram0 as rawFs, device = 0x1
Formatting /ram0 for HRFS v1.2
Instantiating /ram0 as rawFs, device = 0x1
Formatting...OK.
Target Name: vxTarget
Instantiating /tmp as rawFs, device = 0x10001
Formatting /tmp for HRFS v1.2
Instantiating /tmp as rawFs, device = 0x10001
./
\........\ /......../
\........\ \......./
\........\ \...../ VxWorks SMP 64-bit
\........\ \.../
\........\ \./ Release version: 22.03
\........\ - Build date: Mar 15 2022 18:06:48
\........\
\......./ Copyright Wind River Systems, Inc.
\...../ - 1984-2022
\.../ /.\
\./ /...\
- -------
Board: Raspberry Pi 4 Model B - ARMv8
CPU Count: 4
OS Memory Size: ~7987MB
ED&R Policy Mode: Deployed
Debug Agent: Started (always)
Stop Mode Agent: Not started
BSP Status: *** UNSUPPORTED ***
Thu Jan 1 00:00:00 1970: ipnet[3cf540]: Error: ipcom_getsockaddrbyaddr failed gw: dhcp
Adding 21025 symbols for standalone.
->
Network configuration:
ifname genet0 inet 192.168.178.63 mac e4:5f:01:e0:78:55
This device is also accessible over telnet!
When connecting via telnet, I want to access a local FTP server in order to load an executable:
telnet 192.168.178.62
Trying 192.168.178.62...
Connected to 192.168.178.62.
Escape character is '^]'.
-> netDevCreate("wrs", "192.168.178.20", 1)
value = 4294967295 = 0xffffffff
-> cmd
[vxWorks *]# cd wrs
[vxWorks *]# ls
[vxWorks *]#
I tried multiple FTP servers in a local and accessible network, no luck so far. But mostly interesting, the ācmd wrsā command takes minutes and yields no results. I only experienced the Qemu Host VxWorks so far, and responses were very quick.
When trying multiple Cmds in the end, I have to power-cycle the CM4s to get them to respond again.
Iām not sure, the stack trace is nominal, when cancelling one of the Cmds:
[vxWorks *]# cd wrs
pws
pwd
0xffffffff8022895c vxTaskEntry +0x1c : shellTask ()
0xffffffff80569370 shellTask +0x618: shellExec ()
0xffffffff8056b64c shellExec +0x17c: 0xffffffff805607ec ()
0xffffffff805608ac shellInterpCmdInit+0x244: 0xffffffff80561378 ()
0xffffffff80561684 shellInterpCmdInit+0x101c: shellCmdExec ()
0xffffffff805645e0 shellCmdExec +0x18c: 0xffffffff80571774 ()
0xffffffff805717a4 usrFsShellCmdInit+0xbc : cd ()
0xffffffff80424cfc cd +0x18 : ioDefPathCat ()
0xffffffff802cc7d4 ioDefPathCat +0xa0 : iosPathResolveFollow ()
0xffffffff802bf604 iosPathResolveFollow+0x58 : ioOpenFollowLinks ()
0xffffffff802b8e38 ioOpenFollowLinks+0x1a0: iosOpen ()
0xffffffff802bc9d8 iosOpen +0x44 : 0xffffffff8021c20c ()
0xffffffff8021c2e0 netDrvEx +0x5c8: 0xffffffff8021e2e8 ()
0xffffffff8021e314 netHomeDir +0x800: 0xffffffff8021d5d8 ()
0xffffffff8021d6bc netLsByName +0x250: 0xffffffff8021dc08 ()
0xffffffff8021dc84 netHomeDir +0x170: ftpHookup ()
0xffffffff80213d1c ftpHookup +0x1e8: connect ()
0xffffffff8057d3fc connect +0xfc : 0xffffffff80781244 ()
0xffffffff80781270 ipcom_set_for_each+0x17c: ipcom_connect ()
0xffffffff801e73c0 ipcom_connect+0x14c: ipnet_usr_sock_wait_until_writable ()
0xffffffff801e6504 ipnet_usr_sock_wait_until_writable+0x44 : 0xffffffff801e6518 ()
0xffffffff801e65b4 ipnet_usr_sock_wait_until_writable+0xf4 : 0xffffffff801e9790 ()
0xffffffff801e97c8 ipcom_sendmsg_sock+0x1798: 0xffffffff801ac8f8 ()
0xffffffff801ac91c ipnet_pipe_create+0x1ec: 0xffffffff801ac93c ()
0xffffffff801aca38 ipnet_pipe_create+0x308: ipcom_block_wait ()
0xffffffff801396a4 ipcom_block_wait+0x60 : semTake ()
0xffffffff80690354 semTake +0xc8 : semBTakeInternal ()
Shell task 'tShellRem18446603336412708704' restarted...
I have the same behavior for both CM4s, so I do not see a hardware issues. Also the FTP servers do not write logs about the connection of the CM4s, however they work from a different host flawlessly. The U-Boot Iām using is from 2022.10. I installed VxWorks on the eMMC on the CM4s, a complete FAT32 partition of 8GiB.
Are there any hints on what is wrong in my setup?
Best regards,
Jan