您好!
我正在使用 AM5728处理器的定制板、我需要 TI Sitara 作为 USB 主机、我需要使用外部子卡作为 USB 外设。 我已经成功地将 TI Sitara 设置和配置为主机、但是当我给 USB 子卡上电时、am5728不枚举器件、因为在中、它似乎无法识别已连接外部外设。
在打开 USB 设备之前以及之后、我在下面的文本文件中附加了 dmesg 日志。 我还显示了可用总线的屏幕截图。 我还运行了一个名为 check_usb.sh 的脚本、我在 TI 论坛上找到了该脚本、我附加了该脚本的文本文件以及输出。 如果还有其他问题、请告诉我。 了解 Sitara 上的 USB_dm 和 USB_DP 线路直接连接到子卡上的 USB 线路也是有益的、因此没有软件狗。
谢谢、
TIA
下面是我们打开连接的 USB 设备之前和之后的 dmesg | grep USB 日志:
以前:
root@am57xx-EVM:~# dmesg | grep USB [0.4797] usbcore:registered new interface driver usbfs [0.479845] usbcore:registered new interface driver hub [0.479938] usbcore:registered new device driver usb [3.065171] dwc3 48890000.usb: failed to get clk res'f':-2177] USB [3.12b1:] 找到新的 USB 器件、idVendor=1d6b、idProduct=0002、bcdDevice=4.19 [3.130481] USB USB1:新的 USB 器件字符串:mfr=3、Product=2、SerialNumber=1 [3.138106] USB USB1:产品:xHCI 主机控制 器[3.143023] USB USB1:制造商:Linux 4.1480] USB SerialNumber=1 [3.1480] USB USB2b1] USB USB2b1:xhci-hcd.0.auto 我们不知道该主机的 LPM 算法、禁用 LPM。 [3.191151] USB USB2:找到新的 USB 器件、idVendor=1d6b、idProduct=0003、bcdDevice= 4.19 [3.199474] USB USB2:新的 USB 器件字符串:mFR=3、Product=2、SerialNumber=1 [3.206747] USB USB2:产品:xHCI 主机控制 器[3.2116264b2]USB 3.3b2 xhci-hcd.0.auto :tb2:tb2@:tb2 USB 24802[3.90b2]USB 3.3b2:tb2:tb2:tb2:tb2 USB 3.3b2:tb2:tb2 耗电元件 ID [3.442506] Palms-USB 48070000.i2c:tps659038@ /ocp/i2c@@ /ocp/i2c@@ @ @58:tps659038_usb:使用器件树进行 GPIO 查找[3.442524] of_get_named_gpiod_flags:cid 'id-gp7009038_usb[3.442538] tps48024_gp8024_gp100_gp8024_gp8024_gp_gp100_gp8024_gp8024_gp8024_gp8024_gp8024_gp8024_gp8024_gp8024_gps_gp100_gp8024_gp8024_gp8024_gp8024_gp8024_gp8024_gp8024_gp8024_gp8024_gp8024_gp8024_gp8024_gp8024_gp100_gp8099_gp8024_gp8024_gp8024_gp8024_gps_ 使用器件树进行 GPIO 查找 [3.442614] of_get_named_gpio_FLAGS:无法解析节点'/ocp/i2c@48070000/tps659038@58/tps659038_USB[0] 的'VBUS-GPIO'属性[3.442637] of_get_named_gpode_s659038 /ocp/i2c@@58'tps659038_USB[0] 488d0000.usb:'tps5993'tps_gp2'属性'dw24'dw_dw_gp8024'tps_gp2'() 找到新的 USB 器件、idVendor=1d6b、idProduct=0002、bcdDevice=4.19 [ 3.890968] USB USB3:新的 USB 器件串:mfr=3、Product=2、fabNumber=1 [ 3.898233] USB USB3:产品:xHCI 主机控制器 [ 3.903140] USB USB3:制造商:Linux 3.9086] USB 闪存[3.90879b4] USB 闪存[USB 闪存盘:3.90b3:xhci-hcd.1.auto 我们不知道该主机的 LPM 算法、禁用 LPM。 [3.950895] USB USB4:找到新的 USB 器件、idVendor=1d6b、idProduct=0003、bcdDevice= 4.19 [ 3.959203] USB USB4:新的 USB 器件字符串:mfr=3、Product=2、SerialNumber=1 [ 3.96466] USB USB4:产品:xHCI 主机控制 器[ 3.9713106] USB fabrgr:3.9764b4:USB 5.976b4:gb、USB 1.456] USB fabrgcr:[3.97gcr:3.97gcr:3.97cr:gr USB 5.97cr:3.97gr:gr USB 1. xhci-hcd.1.auto 导出重复符号 of _USB_get_dr_mode_by_phy (由内核拥有) [ 6.037833] USB_common:导出重复符号 of _USB_get_dr_mode_by_phy (由内核拥有) [ 7.611306]错误:驱动程序'Palms-USB'已注册、正在中止... [7.705626]错误:驱动程序'Palms-USB'已注册,正在中止... [8.441897] USB_common:导出重复的符号 of _USB_get_dr_mode_by_phy (由内核拥有) [8.521729] USB_common:导出重复的符号 of _USB_get_dr_mode_by_phy (由内核拥有) [8.5499491] phy_omap_u_u_u_ue_kernel_b2:导出重复的符号 OMAP-USb2:[8.6704_common_b2_u_kernel 拥有][8.123_kernel:[8.99_kernel_b2_uel_exce_kernel_b2_b2_u_b2_u_b2][ 导出重复符号 omap_USB2_set_comparator (内核拥有) [ 8.73782] usb_common:导出重复符号 of _usb_get_dr_mode_by_phy (内核拥有) [ 8.771832] phy_omap_usb2:导出重复符号 OMAP-USB2_set_comparator (内核拥有) [ 8.812310] USB_common_kernel_exports [8.97_unc:OMAP-uel_kernel 拥有] (omap_omap_unc:8.957_kernel 拥有 OMA_kernel 拥有)[8.59]符号:USb2_common_kernel 拥有 导出重复符号 of _USB_get_dr_mode_by_phy (由内核拥有) [ 8.962582] phy_omap_u2:导出重复符号 OMAP-USB2_set_comparator (由内核拥有) [ 9.002413] USB_common:导出重复符号 of _USB_get_mode_by_phy (由内核拥有) [ 9.002413]( 由 OMAP-b2_common 拥有] USb2_common:USb2_d_ap_excPhy (由 OMAP-d_ap_b2_u_ap_ap_un_b2拥有)[9.77_kernel 拥有][9.77_set (由 OMAP-b2_common:USb2_u_kernel 拥有)[9.77_ 导出重复符号 omap_USB2_set_comparator (内核拥有) [ 9.292870] phy_omap_usb2:导出重复符号 omap_USB2_set_comparator (内核拥有) [ 9.393394] usb_common:导出重复符号 of usb_get_dr_mode_by_by_by_comparator (由 phy 拥有) [ 9.482114] usb 命令共模 :exce_kernel_exports [9.56_kernel_ap_exports [9.56_common_kernel_exports (由 phy_kernel 拥有)[9.48_kernel_ap_ap_ap_ap_ap_ap_ap_ap_ap_ap_ap_unic ( 由 ph 导出重复符号 of _USB_get_dr_mode_by_phy (由内核拥有) [ 9.692259] USB_common:导出重复符号 of _USB_get_dr_mode_by_phy (由内核拥有) [ 9.771784] USB_common:导出重复符号 of _USB_get_dr_mode_by_phy (由内核 拥有)[9.85_common_b_b_b_b_b_b_ex][9.188632](由 USB_kernel_common 拥有)[_common:导出重复符号 :USB _common [_exce_exce_b_b_exc_dr [9.188632](由 USB_kernel_kernel_b_b_b_b_ 导出重复符号 of _USB_get_dr_mode_by_phy (由内核拥有) [ 10.142375] USB_common:导出重复符号 of _USB_get_dr_mode_by_phy (由内核拥有) [ 10.212430] USB_common:导出重复符号 of _USB_get_dr_mode_by_phy (由内核拥有)[10.37_common ( 由内核拥有)[USB_common:10.37_exc_dc:10.37_exc_dc:x_kernel 拥有] 导出重复符号 of _USB_get_dr_mode_by_phy (由内核拥有) [ 10.571773] USB_common:导出重复符号 of _USB_get_dr_mode_by_phy (由内核拥有) [ 10.686216] USB_common:导出重复符号 of _USB_get_dr_mode_by_phy (由内核拥有)
之后:
root@am57xx-EVM:~# dmesg | grep USB [0.4797] usbcore:registered new interface driver usbfs [0.479845] usbcore:registered new interface driver hub [0.479938] usbcore:registered new device driver usb [3.065171] dwc3 48890000.usb: failed to get clk res'f':-2177] USB [3.12b1:] 找到新的 USB 器件、idVendor=1d6b、idProduct=0002、bcdDevice=4.19 [3.130481] USB USB1:新的 USB 器件字符串:mfr=3、Product=2、SerialNumber=1 [3.138106] USB USB1:产品:xHCI 主机控制 器[3.143023] USB USB1:制造商:Linux 4.1480] USB SerialNumber=1 [3.1480] USB USB2b1] USB USB2b1:xhci-hcd.0.auto 我们不知道该主机的 LPM 算法、禁用 LPM。 [3.191151] USB USB2:找到新的 USB 器件、idVendor=1d6b、idProduct=0003、bcdDevice= 4.19 [3.199474] USB USB2:新的 USB 器件字符串:mFR=3、Product=2、SerialNumber=1 [3.206747] USB USB2:产品:xHCI 主机控制 器[3.2116264b2]USB 3.3b2 xhci-hcd.0.auto :tb2:tb2@:tb2 USB 24802[3.90b2]USB 3.3b2:tb2:tb2:tb2:tb2 USB 3.3b2:tb2:tb2 耗电元件 ID [3.442506] Palms-USB 48070000.i2c:tps659038@ /ocp/i2c@@ /ocp/i2c@@ @ @58:tps659038_usb:使用器件树进行 GPIO 查找[3.442524] of_get_named_gpiod_flags:cid 'id-gp7009038_usb[3.442538] tps48024_gp8024_gp100_gp8024_gp8024_gp_gp100_gp8024_gp8024_gp8024_gp8024_gp8024_gp8024_gp8024_gp8024_gps_gp100_gp8024_gp8024_gp8024_gp8024_gp8024_gp8024_gp8024_gp8024_gp8024_gp8024_gp8024_gp8024_gp8024_gp100_gp8099_gp8024_gp8024_gp8024_gp8024_gps_ 使用器件树进行 GPIO 查找 [3.442614] of_get_named_gpio_FLAGS:无法解析节点'/ocp/i2c@48070000/tps659038@58/tps659038_USB[0] 的'VBUS-GPIO'属性[3.442637] of_get_named_gpode_s659038 /ocp/i2c@@58'tps659038_USB[0] 488d0000.usb:'tps5993'tps_gp2'属性'dw24'dw_dw_gp8024'tps_gp2'() 找到新的 USB 器件、idVendor=1d6b、idProduct=0002、bcdDevice=4.19 [ 3.890968] USB USB3:新的 USB 器件串:mfr=3、Product=2、fabNumber=1 [ 3.898233] USB USB3:产品:xHCI 主机控制器 [ 3.903140] USB USB3:制造商:Linux 3.9086] USB 闪存[3.90879b4] USB 闪存[USB 闪存盘:3.90b3:xhci-hcd.1.auto 我们不知道该主机的 LPM 算法、禁用 LPM。 [3.950895] USB USB4:找到新的 USB 器件、idVendor=1d6b、idProduct=0003、bcdDevice= 4.19 [ 3.959203] USB USB4:新的 USB 器件字符串:mfr=3、Product=2、SerialNumber=1 [ 3.96466] USB USB4:产品:xHCI 主机控制 器[ 3.9713106] USB fabrgr:3.9764b4:USB 5.976b4:gb、USB 1.456] USB fabrgcr:[3.97gcr:3.97gcr:3.97cr:gr USB 5.97cr:3.97gr:gr USB 1. xhci-hcd.1.auto 导出重复符号 of _USB_get_dr_mode_by_phy (由内核拥有) [ 6.037833] USB_common:导出重复符号 of _USB_get_dr_mode_by_phy (由内核拥有) [ 7.611306]错误:驱动程序'Palms-USB'已注册、正在中止... [7.705626]错误:驱动程序'Palms-USB'已注册,正在中止... [8.441897] USB_common:导出重复的符号 of _USB_get_dr_mode_by_phy (由内核拥有) [8.521729] USB_common:导出重复的符号 of _USB_get_dr_mode_by_phy (由内核拥有) [8.5499491] phy_omap_u_u_u_ue_kernel_b2:导出重复的符号 OMAP-USb2:[8.6704_common_b2_u_kernel 拥有][8.123_kernel:[8.99_kernel_b2_uel_exce_kernel_b2_b2_u_b2_u_b2][ 导出重复符号 omap_USB2_set_comparator (内核拥有) [ 8.73782] usb_common:导出重复符号 of _usb_get_dr_mode_by_phy (内核拥有) [ 8.771832] phy_omap_usb2:导出重复符号 OMAP-USB2_set_comparator (内核拥有) [ 8.812310] USB_common_kernel_exports [8.97_unc:OMAP-uel_kernel 拥有] (omap_omap_unc:8.957_kernel 拥有 OMA_kernel 拥有)[8.59]符号:USb2_common_kernel 拥有 导出重复符号 of _USB_get_dr_mode_by_phy (由内核拥有) [ 8.962582] phy_omap_u2:导出重复符号 OMAP-USB2_set_comparator (由内核拥有) [ 9.002413] USB_common:导出重复符号 of _USB_get_mode_by_phy (由内核拥有) [ 9.002413]( 由 OMAP-b2_common 拥有] USb2_common:USb2_d_ap_excPhy (由 OMAP-d_ap_b2_u_ap_ap_un_b2拥有)[9.77_kernel 拥有][9.77_set (由 OMAP-b2_common:USb2_u_kernel 拥有)[9.77_ 导出重复符号 omap_USB2_set_comparator (内核拥有) [ 9.292870] phy_omap_usb2:导出重复符号 omap_USB2_set_comparator (内核拥有) [ 9.393394] usb_common:导出重复符号 of usb_get_dr_mode_by_by_by_comparator (由 phy 拥有) [ 9.482114] usb 命令共模 :exce_kernel_exports [9.56_kernel_ap_exports [9.56_common_kernel_exports (由 phy_kernel 拥有)[9.48_kernel_ap_ap_ap_ap_ap_ap_ap_ap_ap_ap_ap_unic ( 由 ph 导出重复符号 of _USB_get_dr_mode_by_phy (由内核拥有) [ 9.692259] USB_common:导出重复符号 of _USB_get_dr_mode_by_phy (由内核拥有) [ 9.771784] USB_common:导出重复符号 of _USB_get_dr_mode_by_phy (由内核 拥有)[9.85_common_b_b_b_b_b_b_ex][9.188632](由 USB_kernel_common 拥有)[_common:导出重复符号 :USB _common [_exce_exce_b_b_exc_dr [9.188632](由 USB_kernel_kernel_b_b_b_b_ 导出重复符号 of _USB_get_dr_mode_by_phy (由内核拥有) [ 10.142375] USB_common:导出重复符号 of _USB_get_dr_mode_by_phy (由内核拥有) [ 10.212430] USB_common:导出重复符号 of _USB_get_dr_mode_by_phy (由内核拥有)[10.37_common ( 由内核拥有)[USB_common:10.37_exc_dc:10.37_exc_dc:x_kernel 拥有] 导出重复符号 of _USB_get_dr_mode_by_phy (由内核拥有) [ 10.571773] USB_common:导出重复符号 of _USB_get_dr_mode_by_phy (由内核拥有) [ 10.686216] USB_common:导出重复符号 of _USB_get_dr_mode_by_phy (由内核拥有)
运行屏幕截图:lsusb
Check_USB.sh
#!/bin/sh
#
# Util to check USB subsystem on for Linux kernel 3.12+
#
# TODO:Usage
version=0.2.0
### functions ###
has _supported_kernel(){
local _ver
local _t
_ver=`uname -r`
DBG_PRINT "内核$_ver"
_t=${_v%.*}
# 2.x.x、不受支持
[$_t -GE 3]||返回1
# 4.x.x、受支持
[$_t -lt 4]||返回0
_ver=${_ver#*。}
_t=${_v%.*}
#< 3.12.x、不支持
[$_t -GE 12]||返回1.
返回0
}
CHECK_PLAND (){
LOCAL _HW
_HW=`grep '^Hardware'/proc/cpuinfo`
DBG_PRINT $_HW
["${_HW#*AM33XX}"="$_HW"]||{
平台="AM335x"
USB0='USB@47400000/USB@47401000'
USB1='USB@47400000/USB@47401800'
返回0;
}
["${_HW#*AM43}"="$_HW"]||{
平台="AM437X"
USB0='OMAP-dwc3@48380000/USB@48390000'
USB1='OMAP-dwc3@483c0000/USB@483d0000'
返回0
}
["${_HW#* DRA74X}"="$_HW"]||{
platform="am57x"
USB0='OMAP-dwc3_1@48880000/USB@48890000'
USB1='OMAP-dwc3_2@488c0000/USB@488d0000'
返回0
}
回显"不支持的$_HW"
返回1
}#
检查内核配置选项
# params $1 -配置选项
# $2 ='-q'、静音输出
#返回0 -未定义
# 1 -定义为"m"、内核模块
# 2 -定义为'y'、内核内置
check_kernel_config(){
局部_cfg
[-n "$1"]||返回0
_cfg=`zcat /proc/config.gz | grep "^$1\>"`
中的案例${_cfg#*=}
"Y")返回2;
"m")返回1;;
*)["$2"="-q"]||
回显"错误:1美元在内核配置中未定义"
返回0;;
esac
}
#检查内核模块
#$1 -模块名称,从 drivers/获取的相对路径,并使用.ko surfix
# return 0 - Found
# 1-错误
CHECK_MODULE(){
局部_modname
局部_moddep
[-n "$1"]||返回1
_modname="/lib/modules`uname -r`/kernel/drivers /${1}.ko"
modep="/lib/modules`uname -r` modules.dep"
DBG_PRINT 1.
[-f $_modname ]||{
回显"错误:未找到$_modname。"
回波" 请确保正确完成'make module_install'。"
返回1
}
DBG_PRINT 2.
[-f $_moddep ]||$modep_checked ||{
回显"错误:未找到$_moddep。"
回波" 请确保正确完成'make module_install'。"
modep_checked=true
}
DBG_PRINT 3.
lsmod | grep `basename $1 | tr '-''_'`>/dev/null ||{
DBG_PRINT ">>>>${1}.ko:"
如果 grep "${1}.ko:"$_moddep >/dev/null;那么
DBG_PRINT 5.
回显"错误:$_moddep 似乎有效、"
回波" 但未加载`basename $1`.ko。"
回波" 请`/proc/config.gz 和/lib/module`uname -r /*"
回波" 以供进一步调查。"
其他
DBG_PRINT 6.
回显"错误:`basename $1`:$_moddep 无效。"
回波" 请在目标上运行命令'epmod'以重新生成它、"
回波" 然后重新引导目标。 如果问题仍然存在、请"
回波" 确保正确完成'make module_install'。"
FI
DBG_PRINT 7.
返回1
}
DBG_PRINT 8.
返回0
}
check_musb_drivers(){
CHECK_kernel_config CONFIG_USB_MUSB_HDRC
[美元? != 1 ]|| CHECK_MODULE 'USB/MUSB / MUSB Hdrc'
check_kernel_config config_USB_MUSB_dual_role -q
[美元? != 0 ]||回显"警告:CONFIG_USB_MUSB_DUAL_Role 未定义"。
CHECK_kernel_config CONFIG_USB_MUSB_DSP
[美元? != 1 ]||{
CHECK_MODULE 'USB/MUSB / MUSB _DSP'
CHECK_MODULE 'USB/MUSB / MUSB _ AM335x'
}
CHECK_kernel_config CONFIG_AM335X_PHY_USB
[美元? != 1 ]||{
CHECK_MODULE 'USB/phy/phy-AM335x'
CHECK_MODULE 'USB/phy/phy-AM335x-control'
}
check_kernel_config config_MUSB_PIO_only -q
[美元? != 0 ]||{
如果 check_kernel_config config_TI_CPPI41 -q;那么
回显"错误:MUSB CPPI DMA 模式已启用、但 DMA 引擎中未启用 CPPI 鼠标。"
回波" 请在内核配置中启用 DMA 引擎支持下的 CONFIG_TI_CPPI41。"
FI
}
}
check_dwc3_drivers(){
CHECK_kernel_config CONFIG_USB_DWC3
[美元? != 1 ]|| CHECK_MODULE 'USB/dwc3/dwc3'
check_kernel_config config_USB_DWC3_dual_role -q
[美元? != 0 ]||回显"警告:CONFIG_USB_DWC3_DUAL_LOWATE 未定义"。
CHECK_kernel_config CONFIG_USB_DWC3_OMAP
[美元? != 1 ]|| CHECK_MODULE 'USB/dwc3/dwc3-OMAP'
CHECK_kernel_config CONFIG_USB_XHCI_HCD
[美元? != 1 ]||{
CHECK_MODULE 'USB/主机/xhci-plat-hcd'
CHECK_MODULE 'USB/HOST/xhci-hcd'
}
CHECK_kernel_config CONFIG_OMAP_CONTRAL_PHY
[美元? != 1 ]|| CHECK_MODULE 'phy/phy-OMAP-CONTRAINS'
如果[$platform = AM437X];那么
CHECK_kernel_config CONFIG_OMAP_USB2
[美元? != 1 ]|| CHECK_MODULE 'phy/phy-OMAP-USB2'
其他
CHECK_kernel_config CONFIG_TI_PIPE3
[美元? != 1 ]|| CHECK_MODULE 'phy/phy-ti-pipe3'
Fi
}
### debug ###
g_log_file=/tmp/chmusb.log
DBG_enable(){g_dbg_enable=true;}
DBG_disable(){g_dbg_enable=fals;}
DBG_log_reset (){! $g_dbg_enabled || echo >$g_log_file;}
DBG_PRINT(){! $g_dbg_enabled || echo "$(date +%H:%M:%S)[$(basename $0)]:$*";}
DBG_log (){DBG_PRINT $*>>$g_LOG_FILE;}
DBG_LOG_MARG(){DBG_PRINT "--- ">>$g_log_file;}
### main ####
modep_checked=false
echo "chkusb.sh Version $version"
["$V"="1"]&& DBG_ENABLE && DBG_LOG_RESET || DBG_DISABLE
HS_SUPPORTED kernel_||
{echo "不支持的内核版本:`uname -r`";exit 1;}
check_platform || exit 2
DBG_print device:$platform
which lsusb >/dev/null ||
{echo "Error; lsusb command not found";exit 3;}
如果 lsusb >/dev/null 2>&1;那么
回显"USB is initialized"
else
回显"USB 初始化失败"
#失败,继续检查
[-f /proc/config.gz ]||
{ echo "Error:/proc/config.gz not found";exit 4;}
中的案例$platform
AM335x) check_musb_drivers;;
AM437x | am57x) check_dwc3_drivers;;
*)
回显"错误:不受支持的平台$platform"
出口5;;
esac
fi
# check dr_mode & gadget drivers
[-d /proc/device-tree ]||{
ECHO "警告:/proc/device-tree 未找到"
如果[-d "/lib/modules`uname -r`/"];则
回显"The list of USB gadget drivers installed:"
LS -1Rp "/lib/modules`uname -r`/kernel/drivers/usb/gadget
FI
在
"${USB0}""${USB1}"中为_USB 退出0};执行
_usb_dir="/proc/device-tree/ocp{_usb}"
_status=`cat $_USB_dir/status 2>/dev/null`
_ddr_mode=__LW_AT__`cat $_USB_dir/dr_mode`
echo `basename $_USB`:$_DR_MODE、$_STATUS
["$_STATUS"="禁用"-o "$_DR_MODE"="主机"]||小工具模式=true
DONE
DBG_PRINT $gadget_mode
$gadget_mode ||退出0
echo
check_kernel_config config_USB_LIBCOMPOSITE
case $? 在中
0)回显"错误:未启用任何小工具驱动程序"
出口6;
1) IS_Gadget_builtin=false;
2) 2)回显"内置小工具驱动程序"
iS_gadget_builtin=true;
esac
check_kernel_config config_USB_zero -q ||
回显"小工具内核配置:启用了 G_ZERO "
CHECK_kernel_config CONFIG_USB_AUDIO -q ||
回显"小工具内核配置:启用了 G_AUDIO "
CHECK_kernel_config CONFIG_USB_ETH -q ||
回显"小工具内核配置:启用了 G_ether "
CHECK_kernel_config CONFIG_USB_G_NCM -q ||
回显"小工具内核配置:启用了 G_NCM "
CHECK_kernel_config CONFIG_USB_MUS_STORAGE -q ||
回显"小工具内核配置:启用了 G_MALL_STORAGE "
CHECK_kernel_config CONFIG_USB_G_serial -q ||
回显"小工具内核配置:启用了 G_serial "
check_kernel_config config_USB_G_printer -q ||
echo "Gadget Kernel Config:G_printer is enabled"
g_driver=`grep '^driver='/sys/class/udc /*/uevent 2>/dev/null`
echo "gadget driver loaded:${g_driver:-(none)}"
echo
if! 然后、$IS_Gadget_builtin
如果[-d "/lib/modules`uname -r`/"];则
回显"The list of USB gadget drivers installed:"
LS -1Rp "/lib/modules`uname -r`/kernel/drivers/usb/gadget
其他
回显"错误:/lib/modules`uname -r`/未找到"
回波" 请确保正确完成'make module_install'。"
退出7.
FI
# vim:ft=sh:ts=4:sw=4:et
check_USB.sh 的输出