If I understand correctly the AM3358 TRM, the device cannot boot from an external USB drive connected to the USB host port. This means that Linux from the eMMC/SD should be starting fine, but at some point that hangs because of the presence of the external disk. If you cannot trace what's happening some other way, consider connecting a UART adapter to the 5x1 pin header (J1) on the BBB:
That will show the linux log as it boots and eventually provide a console to log in into the device. It could be useful to debug what's happening.