我有一个基于着名的ASIX AX88772B芯片的Edimax USB转以太网适配器,我希望能够使用我的主板,这是一个基于ARM的主板,运行嵌入式Linux,内核为2.6.32.17
根据Asix的文档,这个芯片应该可以在这个内核中运行而不会出现问题,但它在我的情况下不起作用。我在内核中选择了必要的组件作为模块(asix,mii,usbnet),编译内核后我有mii.ko,usbnet.ko和asix.ko文件。所以我把它们复制到了正确的地方。 将适配器插入硬件后,我可以看到lsusb已经识别出具有PID和VID的新ASIX USB设备。在此之后我跑了:
root @ dm368-evm:〜#modprobe asix
usbcore:注册新的接口驱动程序asix
你可以看到模块已经加载到内存中没有任何错误或问题(显然modprobe是自动管理依赖项,我不需要手动插入mii.ko和usbnet.ko)
root @ dm368-evm:〜#lsmod
用于的模块尺寸 asix 11444 0
usbnet 11657 1 asix
mii 3392 2 asix,usbnet
但是在命令
下运行后我没有看到以太网接口ifconfig -a
我也没有在dmesg中看到任何消息。根据我在插入适配器时在Ubuntu中看到的内容,我本来期望得到像“eth0已注册”这样的消息。我还将此适配器与另一个具有内核3.50的ARM硬件一起使用,并且它工作正常,所以我不知道为什么它不起作用。
一旦我尝试将必要的驱动程序静态地构建到内核中,但它也没有任何区别。
我真的需要这样做,因为主板没有以太网连接,我想要一个用作调试接口和FTP文件传输。
答案 0 :(得分:2)
2.6.28配置的sdiff
(左侧)与 .config (右侧)的摘录如下:
# #
# USB Network Adapters # USB Network Adapters
# #
# CONFIG_USB_CATC is not set # CONFIG_USB_CATC is not set
# CONFIG_USB_KAWETH is not set # CONFIG_USB_KAWETH is not set
# CONFIG_USB_PEGASUS is not set # CONFIG_USB_PEGASUS is not set
# CONFIG_USB_RTL8150 is not set # CONFIG_USB_RTL8150 is not set
CONFIG_USB_USBNET=y | CONFIG_USB_USBNET=m
CONFIG_USB_NET_AX8817X=y | CONFIG_USB_NET_AX8817X=m
# CONFIG_USB_NET_CDCETHER is not set | CONFIG_USB_NET_CDCETHER=m
> CONFIG_USB_NET_CDC_EEM=m
# CONFIG_USB_NET_DM9601 is not set # CONFIG_USB_NET_DM9601 is not set
# CONFIG_USB_NET_SMSC95XX is not set # CONFIG_USB_NET_SMSC95XX is not set
# CONFIG_USB_NET_GL620A is not set # CONFIG_USB_NET_GL620A is not set
# CONFIG_USB_NET_NET1080 is not set | CONFIG_USB_NET_NET1080=m
# CONFIG_USB_NET_PLUSB is not set # CONFIG_USB_NET_PLUSB is not set
# CONFIG_USB_NET_MCS7830 is not set # CONFIG_USB_NET_MCS7830 is not set
# CONFIG_USB_NET_RNDIS_HOST is not set # CONFIG_USB_NET_RNDIS_HOST is not set
# CONFIG_USB_NET_CDC_SUBSET is not set | CONFIG_USB_NET_CDC_SUBSET=m
# CONFIG_USB_NET_ZAURUS is not set | # CONFIG_USB_ALI_M5632 is not set
> # CONFIG_USB_AN2720 is not set
> CONFIG_USB_BELKIN=y
> CONFIG_USB_ARMLINUX=y
> # CONFIG_USB_EPSON2888 is not set
> # CONFIG_USB_KC2190 is not set
> CONFIG_USB_NET_ZAURUS=m
> # CONFIG_USB_NET_INT51X1 is not set
# CONFIG_WAN is not set # CONFIG_WAN is not set
# CONFIG_PPP is not set | CONFIG_PPP=m
> # CONFIG_PPP_MULTILINK is not set
> # CONFIG_PPP_FILTER is not set
> CONFIG_PPP_ASYNC=m
> CONFIG_PPP_SYNC_TTY=m
> CONFIG_PPP_DEFLATE=m
> # CONFIG_PPP_BSDCOMP is not set
> # CONFIG_PPP_MPPE is not set
> # CONFIG_PPPOE is not set
> # CONFIG_PPPOL2TP is not set
# CONFIG_SLIP is not set # CONFIG_SLIP is not set
# CONFIG_NETCONSOLE is not set | CONFIG_SLHC=m
# CONFIG_NETPOLL is not set | CONFIG_NETCONSOLE=y
# CONFIG_NET_POLL_CONTROLLER is not set | # CONFIG_NETCONSOLE_DYNAMIC is not set
> CONFIG_NETPOLL=y
> CONFIG_NETPOLL_TRAP=y
> CONFIG_NET_POLL_CONTROLLER=y
# CONFIG_ISDN is not set # CONFIG_ISDN is not set
> # CONFIG_PHONE is not set
...
CONFIG_USB_SUPPORT=y CONFIG_USB_SUPPORT=y
CONFIG_USB_ARCH_HAS_HCD=y CONFIG_USB_ARCH_HAS_HCD=y
CONFIG_USB_ARCH_HAS_OHCI=y | # CONFIG_USB_ARCH_HAS_OHCI is not set
# CONFIG_USB_ARCH_HAS_EHCI is not set # CONFIG_USB_ARCH_HAS_EHCI is not set
CONFIG_USB=y CONFIG_USB=y
CONFIG_USB_DEBUG=y | # CONFIG_USB_DEBUG is not set
CONFIG_USB_ANNOUNCE_NEW_DEVICES=y | # CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set
# #
# Miscellaneous USB options # Miscellaneous USB options
# #
# CONFIG_USB_DEVICEFS is not set | CONFIG_USB_DEVICEFS=y
# CONFIG_USB_DEVICE_CLASS is not set | CONFIG_USB_DEVICE_CLASS=y
CONFIG_USB_DYNAMIC_MINORS=y | # CONFIG_USB_DYNAMIC_MINORS is not set
# CONFIG_USB_OTG is not set # CONFIG_USB_OTG is not set
# CONFIG_USB_OTG_WHITELIST is not set # CONFIG_USB_OTG_WHITELIST is not set
# CONFIG_USB_OTG_BLACKLIST_HUB is not set # CONFIG_USB_OTG_BLACKLIST_HUB is not set
# CONFIG_USB_MON is not set # CONFIG_USB_MON is not set
# CONFIG_USB_WUSB is not set # CONFIG_USB_WUSB is not set
# CONFIG_USB_WUSB_CBAF is not set # CONFIG_USB_WUSB_CBAF is not set
# #
# USB Host Controller Drivers # USB Host Controller Drivers
# #
# CONFIG_USB_C67X00_HCD is not set # CONFIG_USB_C67X00_HCD is not set
> # CONFIG_USB_OXU210HP_HCD is not set
# CONFIG_USB_ISP116X_HCD is not set # CONFIG_USB_ISP116X_HCD is not set
CONFIG_USB_OHCI_HCD=y | # CONFIG_USB_ISP1760_HCD is not set
# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set | # CONFIG_USB_ISP1362_HCD is not set
# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set <
CONFIG_USB_OHCI_LITTLE_ENDIAN=y <
# CONFIG_USB_SL811_HCD is not set # CONFIG_USB_SL811_HCD is not set
# CONFIG_USB_R8A66597_HCD is not set # CONFIG_USB_R8A66597_HCD is not set
# CONFIG_USB_HWA_HCD is not set # CONFIG_USB_HWA_HCD is not set
# CONFIG_USB_MUSB_HDRC is not set | CONFIG_USB_MUSB_HDRC=y
> CONFIG_USB_MUSB_SOC=y
>
您应该调查您的SoC是否支持CONFIG_USB_ARCH_HAS_OHCI和CONFIG_USB_OHCI_HCD
我建议您使用make menuconfig
启用
Drivers
USB support
Support for Host-side USB
USB verbose debug messages
USB announce new devices