我正在使用 Buildroot 为 beaglebone black 构建自定义操作系统。
配置:
Linux 内核版本 4.19.29
我已经为 SSH 启用了 Dropbear。
在启动时加载驱动程序的脚本是:
#!/bin/sh
# set -e
GADGET_DIR=/config/usb_gadget/g1
OLDPWD=$(pwd)
printf "Starting USB gadget: "
modprobe cppi41
modprobe musb-am335x
modprobe musb-dsps
modprobe phy-am335x
modprobe libcomposite
mkdir /config
mount -t configfs none /config
mkdir ${GADGET_DIR}
cd ${GADGET_DIR}
echo "0x05e8" > idVendor
echo "0xa4a1" > idProduct
mkdir strings/0x409
echo "serialnumber" > strings/0x409/serialnumber
echo "manufacturer" > strings/0x409/manufacturer
echo "ECM Gadget" > strings/0x409/product
mkdir functions/ecm.usb0
mkdir configs/c.1
mkdir configs/c.1/strings/0x409
echo Conf 1 > configs/c.1/strings/0x409/configuration
echo 120 > configs/c.1/MaxPower
echo "06:32:9b:a9:9d:a5" > functions/ecm.usb0/host_addr
ln -s functions/ecm.usb0 configs/c.1
echo musb-hdrc.0 > UDC
cd ${OLDPWD}
echo "OK"
我在 /etc/network/interfaces 中添加了以下内容来分配 IP 地址并启用 usb0 接口的上行链路:
auto usb0
iface usb0 inet static
address *.*.*.*
netmask *.*.*.*
network *.*.*.*
gateway *.*.*.*
“*”代表ip地址(这只是一个演示示例,我在实现中添加了ip地址。)
我的 lsmod 输出:
Module Size Used by Not tainted
usb_f_ecm 16384 2
u_ether 24576 1 usb_f_ecm
libcomposite 61440 10 usb_f_ecm
phy_am335x 16384 2
phy_am335x_control 16384 1 phy_am335x
phy_generic 16384 1 phy_am335x
musb_dsps 20480 0
musb_hdrc 135168 1 musb_dsps
udc_core 53248 4 usb_f_ecm,u_ether,libcomposite,musb_hdrc
usbcore 217088 1 musb_hdrc
usb_common 16384 6 libcomposite,phy_am335x,musb_dsps,musb_hdrc,udc_core,usbcore
musb_am335x 16384 0 [permanent]
cppi41 20480 60
尽管如此,我仍无法使用 USB 接口进行 SSH。
问题:
我是否缺少启用 SSH 所需的任何驱动程序或配置?