Other Parts Discussed in Thread: AM3352
I've been trying to set up my Ubuntu 16.04 machine with the appropriate servers to allow AM335x devices to boot of of the USB interface. I'm working off of the configuration that Bin Liu posted here:
https://e2e.ti.com/support/arm/sitara_arm/f/791/p/284639/992880#992880
I've gotten the BeagleBone Black to work, but have had issues with the BeagleBone Green Wireless and some custom hardware using the AM3352/AM3358. I can successfully boot all of the boards of of the USB interface using a different machine, but am unable to run wiretrace or netcat on that system. If I load the SPL image using another protocol then there is no problem - U-Boot is able to read the BOOTP server and pull images through TFTP with no problem.
Board | BeagleBone Black | BeagleBone Green Wireless | Custom Board 1 | Custom Board 2 |
Processor | AM3359A | AM3358B | AM3352B | AM3358B |
Able to boot off of ? | Yes | No | No | No |
I ran some wireshark captures, and I see no difference in the packets that are sent to the working/non-working devices. I don't have any more hardware using the rev 2.1 silicon in order to test with, but am wondering if there may be some change in the required BOOTP parameters.
As far as I can tell, I'm sending all the required parameters in the BOOTP reply that is recieved. From section 26.1.9.4.2 of the TRM:
- Device IP address from “yiaddr” field
- Subnetmask from extended option 1 (RFC 1497, RFC 1533)
- Gateway IP from extended option number 3 (RFC 1497, RFC 1533) or from “giaddr” field of BOOTP response.
- Boot image filename from “file” field • TFTP server IP address from the “siaddr” field
Here are some .pcapng files that show the relevant traffic. The device makes a BOOTP request and receives a reply in both cases, but with the Rev2.1 silicon it seems like we don't see a reply. You will need Wireshark or similar to open these files.
Thanks!
--Keegan