USB0 인터페이스 buildroot의 SSH에 문제가 있습니다.

USB0 인터페이스 buildroot의 SSH에 문제가 있습니다.

저는 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"

IP 주소를 할당하고 usb0 인터페이스에 대한 업링크를 활성화하기 위해 /etc/network/interfaces에 다음을 추가했습니다.

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를 활성화하는 데 필요한 드라이버나 구성이 누락되었습니까?

관련 정보