想查看usb设备的信息,输入:cat/proc/bus/usb/devices但我的ubuntu系统显示:没有这个文件或目录。在网上搜了很久,发现没人进行该问题的讨论,郁闷了很久。无意间看到了解决方法,哈哈,大喜......解决办法:$sudomount-tusbfsusbfs/proc/bus/usb/保证usbfs是挂载在/proc/bus/usb上的此外,还可以用lsusb命令查看,如果你喜欢看大量的输出信息,运行lsusb-v就可以满足你的这一欲望。lsusb另一个有用的选项是给出当前USB物理层次的树状信息,这可以更容易让你准确理解设备体系结构,这个命令就是lsusb-tlinux-2.6.28内核配置,支持网络,SCSI硬盘,USB配置发布时间:2010-10-0512:19来源:浏览:472010-04-1612:21转载地址:内核支持U盘--zImageforsbc-2410x#cdlinux-2.6.19#viarch/arm/mach-s3c2410/mach-smdk2410.c--------------------------------------------------(1)添加头文件//zxlforusbstart#includeasm/arch/usb-control.h#includeasm/arch/regs-clock.h#includelinux/device.h#includelinux/delay.h//zxlforusbend(2)以下内容加在staticvoid__initsmdk2410_map_io(void)前面/*****************zxladdstart*****************/staticstructs3c2410_hcd_infousb_sbc2410_info={.port[0]={.flags=S3C_HCDFLG_USED}};intusb_sbc2410_init(void){unsignedlongupllvalue=(0x7812)|(0x024)|(0x03);printk(USBControl,(c)2006sbc2410n);s3c_device_usb.dev.platform_data=&usb_sbc2410_info;while(upllvalue!=__raw_readl(S3C2410_UPLLCON)){__raw_writel(upllvalue,S3C2410_UPLLCON);mdelay(1);}return0;}/*****************zxladdend*****************/(3)在MACHINE_START与MACHINE_END之间加上.init_machine=&usb_sbc2410_init,结果变成了MACHINE_START(SMDK2410,SMDK2410)/*@TODO:requestanewidentifierandswitch*toSMDK2410*//*Maintainer:JonasDietsche*/.phys_ram=S3C2410_SDRAM_PA,.phys_io=S3C2410_PA_UART,.io_pg_offst=(((u32)S3C24XX_VA_UART)18)&0xfffc,.boot_params=S3C2410_SDRAM_PA+0x100,.map_io=smdk2410_map_io,.init_irq=smdk2410_init_irq,.timer=&s3c24xx_timer,//zxladd.init_machine=&usb_sbc2410_init,MACHINE_END(4)在smdk2410_map_io()函数里面添加usb_sbc2410_init()函数调用:staticvoid__initsmdk2410_map_io(void){s3c24xx_init_io(smdk2410_iodesc,ARRAY_SIZE(smdk2410_iodesc));s3c24xx_init_clocks(0);s3c24xx_init_uarts(smdk2410_uartcfgs,ARRAY_SIZE(smdk2410_uartcfgs));s3c24xx_set_board(&smdk2410_board);//zxladdusb_sbc2410_init();}内核配置(ForUSB)--------------------------------------------------让内核支持热插拔Generalsetup---[*]Configurestandardkernelfeatures(forsmallsystems)---[*]Supportforhot-pluggabledevices(NEW)DeviceDrivers---GenericDriverOptions---*Userspacefirmwareloadingsupport//(1)Blockdevices---*LowPerformanceUSBBlockdriverSCSIdevicesupport---*SCSIdevicesupport*SCSIdisksupport*SCSIgenericsupportUSBsupport---*SupportforHost-sideUSB[*]USBdevicefilesystem*OHCIHCDsupport---NOTE:USB_STORAGEenablesSCSI,and'SCSIdisksupport'---mayalsobeneeded;seeUSB_STORAGEHelpformoreinformation*USBMassStoragesupport[*]USBMonitorFilesystems---DOS/FAT/NTFilesystems---*MSDOSfssupport*VFAT(Windows-95)fssupport(936)DefaultcodepageforFAT(cp936)DefaultiocharsetforFATNTFSfilesystemsupportPartitionTypes---[*]PCBIOS(MSDOSpartitiontables)supportNativeLanguageSupport---*SimplifiedChinesecharset(CP936,GB2312)*NLSUTF8#makezImage注:系统正真支持U盘,busybox中还需要有udev应用程序(用户工具)将zImage下载到开发板上,然后挂载U盘#mount/dev/sda1/mnt=========================================================================转载地址:配置USBformini2440&Linux2.6.30.4U盘与鼠标的配置:配置:#makemenuconfig选上以下:DeviceDrivers---SCSIdevicesupport---*SCSIdevicesupport[*]legacy/proc/scsi/support*SCSIdisksupport[*]HIDDevices---*USBHumanInterfaceDevice(fullHID)support[*]/dev/hiddevrawHIDdevicesupport[*]USBsupport---*SupportforHost-sideUSB[*]USBdevicefilesystem[*]USBdeviceclass-devices(DEPRECATED)*OHCIHCDsupport*USBMassStoragesupport编译:#makezImageU盘和USB鼠标均可以使用!摄象头的配置:配置:#makemenuconfig选上以下:DeviceDrivers---Multimediadevices---*VideoForLinux[*]EnableVideoForLinuxAPI1(DEPRECATED)[*]Videocaptureadapters---[*]Autoselectpertinentencoders/decodersandotherhelperchip[*]V4LUSBdevices---*USBVideoClass(UVC)[*]UVCinputeventsdevicesupport*GSPCAbasedwebcams---如果不确定你的USB摄像头使用何种芯片,全部选上即可!编译:#makezImage友善之臂公司提供的基于Qt的USB摄像头测试程序可以使用!usb设备/proc/bus/usbUSB设备检测的一般过程作者pxe2USB设备检测也是通过/proc目录下的USB文件系统进行的。为了使一个USB设备能够正常工作,必须要现在系统中插入USB桥接器模块。在检测开始时,一般要先检测是否存在/proc/bus/usb目录,若不存在则尝试插入USB桥接模块。现在一般的USB桥接器模块有两种类型,UHCI和OHCI。在决定插入那一个桥接器模块时,可以察看/proc/pci文件来决定。打开此文件,您若发现USB节为I/Oat0xHHHH格式(例如出现I/Oat0xe000[0xe01f]),HHHH为16进制数,则桥接器类型为UHCI。若是它为32bitmemoryat0xHH000000形式(例如出现32bitmemoryat0xee000000),HH为16进制数,则桥接器类型为OHCI。但是若您的桥接器类型不满足上述任何一种情况,唯一的解决办法就是您尝试插入这两种模块,直到成功为止。一般而言,UHCI类型的桥接器它的插入模块是uhci或usb-uhci(由内核版本决定);而对于OHCI类型的桥接器它的插入模块是ohci或usb-ohci。您在正确的插入了桥接器模块之后,这时/proc文件系统下就会出现USB设备目录,不过这时这个目录是空的,没有任何文件。这时您就必须挂接usbdevfs文件系统,然后通过此文件系统检测连接的设备。在成功挂接usb文件系统之后,就会生成文件/proc/bus/usb/devices,/proc/bus/usb/drivers和目录/proc/bus/usb/busNo。挂接usbdevfs文件您可以通过如下操作实现:mount-tusbdevfsnone/proc/bus/usb或在/etc/fstab上加入none/proc/bus/usbusbdevfsdefaults00然后通过/proc/bus/usb/devices文件的内容,您就可以获得连接的设备信息,包括设备标识和制造商标是等信息。usb设备类型描述:设备规范设备类码接口类码应用程序特定-0xFE声音接口0x000x01通信设备0x02-CDC控制接口-0x02CDC数据接口-0x0AHID0x000x03HUB0x090x09批量存储设备0x000x08监视器sameasHIDsameasHID电源设备sameasHIDsameasHID物理设备-0x05打印机-0x07供应商特定-0xFF5.2usb文