This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
器件型号:BEAGLEBK
工具/软件:Linux
您好!
我将使用 BeagleBone Black 测试 AM335x 处理器。 我正在尝试使用 RNDIS 和 tftp 进行引导以执行初始数据加载。 如果可以从 VirtualBox Linux 计算机管理,则会使生活变得更轻松。
在 BeagleBone 上、我已将 eMMC 归零、因此电路板上没有任何内容。 插入 USB 迷你电缆后、我会在 Linux 主机上获得 USB RNDIS 设备。 我可以通过 USB 网络设备看到 DHCP 请求。
要将其移动到 VirtualBox,我使用了 vagrant 来配置虚拟机,如下所示:
vagrant.configure ("2")执行|config|
config.vm.box ="ubuntu/xenial64"
config.vm.box_check_update = false
config.ssh.forward_agent = true
config.vm.SYMODED_folder "../../tisdk/build/arago-tmp-external-linaro-toolchain/deploy、"/Yocto_deploy"
config.vm.provider "VirtualBox "执行|Vb|
vb.memory ='256'
vb.custom['modifyvm'、:id、'--usb'、'on'、'--usbehci'、 '打开'
vb.custom["modifyvm"、:id、"-ioapic"、"on"
vb.custom['usbfilter'、'add'、'0'、'--target'、:id、 '--name'、'Texas Instruments AM335x USB'、'--VendorID'、'0x0451'、'--ProductID'、'0x6141']
vb.custom["modifyvm"、:id、"-hwvirtex"、"on"
结束
config.vm.provision "shell"、内联:<-shell
APT-Get 更新
apt-get dist-upgrade -y
apt-get install -y tftpd-hPA tftp iSC-dhcp-server
外壳
结束
但是 、插入 BeagleBone Black 后、VirtualBox 日志文件会显示:
00:09:35.220858错误[COM]:arc=ns_error_failure (0x80004005) aIID={872da645-4a9b-1727-bee2-5585105b9eed}aComponent={ConsoleWraps}aText={无法为 USB 设备创建代理设备。 (错误:verr_read_error)}、preserve=false a ResultDetail=0
可以将其他 USB 设备插入到虚拟机中,而不会出现任何问题。 只有处于 USB 引导模式的 AM335x 处理器存在问题。
使用主机的 VBoxManage 列表
UUID: 8424bdc3-bbf3-4be4-bb8e-7d691bb91b2a
VendorID: 0x0451 (0451)
产品 ID: 0x6141 (6141)
修订版本: 0.0 (0000)
端口: 2.
USB 版本/速度: 2/full
制造商: 德州仪器(TI)
产品: AM335x USB
地址: sysfs:/sys/devices/pci0000:00/0000:00:14.0/USB1/1-3//器件:/dev/vboxusb/001/044
当前状态: 可用
是否有人设法在 VirtualBox 下使用 AM335x 处理器获取 USB 引导?
谢谢、
Matt
VMware 或 VirtualBox 中的 USB RNDIS 引导从未如此幸运。
Linux Box 步骤如下(必须在 Ubuntu 中删除网络管理器): e2e.ti.com/.../1139985
但在 Win7中使用 Uniflash 也不算太糟糕(包括步骤和屏幕截图)、网址 为:e2e.ti.com/.../1165070
器件型号:BEAGLEBK
工具/软件:Linux
这不是一个实际的问题、我只是想发布对我的原始问题的后续操作、该问题现已锁定:
无法使用虚拟机对我来说是一个真正的问题、因为我运行 Ubuntu、并且不想用 RNDIS / DHCP 配置破坏我的计算机配置。
虽然 VirtualBox 当前不支持 RNDIS 设备(至少我找不到解决方案),但我发现了一个解决方法,就是将网络设备桥接到虚拟机中。
1. 在 Linux 主机上、设置 udev 在插入 Sitara RNDIS 设备时运行脚本:
/etc/udev/rules.d/40-setup_rndis.rules:
action="add"、subsystem="net"、kernel="usb*"、run+="/usr/local/bin/setup_rndis.sh start '%E{interface}'%k %n"
action="remove"、subsystem="net"、kernel="usb*"、run+="/usr/local/bin/setup_rndis.sh stop"
2. 在 Linux 主机上,编辑/usr/local/bin/setup_rndis.sh
if =${interface}
CAT < /etc/NetworkManager/conf.d /$if.conf
[密钥文件]
非受管设备=Mac:$(ifconfig $if | head -n 1 | awk '{print $5}')
EOF
服务网络管理器强制重新加载
ifconfig ${if}0.0.0.0及以上
ifconfig br0 up || brctl addbr br0
brctl addif br0 ${if}
3. 在 VirtualBox 中,将网络接口“桥接”为 br0
是的、您正在将 VBox 接口桥接至桥接器。 :) USB 接口经常上下移动,因此将其添加到桥接器可以稳定主机和 VM 之间的连接。
现在、只要插入 RNDIS 设备、USB 接口就会添加到 br0桥接器中。 虚拟机桥接到该接口、因此它将从 Sitara 获取所有网络流量。 VirtualMachine 可以运行 DHCP 服务器和 TFTP、并为 Sitara 提供 u-boot、zImage 等。