微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 2440/2410上将usb device改成usb host

2440/2410上将usb device改成usb host

时间:11-09 来源:互联网 点击:

vices (DEPRECATED) (USB_DEVICE_CLASS) [N/y/?] n

Dynamic USB minor allocation (USB_DYNAMIC_MINORS) [N/y/?] n

USB Monitor (USB_MON) [N/m/y/?] n

Enable Wireless USB extensions (EXPERIMENTAL) (USB_WUSB) [N/m/y/?] n

Support WUSB Cable Based Association (CBA) (USB_WUSB_CBAF) [N/m/y/?] n

*

* USB Host Controller Drivers

*

Cypress C67x00 HCD support (USB_C67X00_HCD) [N/m/y/?] n

OXU210HP HCD support (USB_OXU210HP_HCD) [N/m/y/?] n

ISP116X HCD support (USB_ISP116X_HCD) [N/m/y/?] n

OHCI HCD support (USB_OHCI_HCD) [Y/n/m/?] y

SL811HS HCD support (USB_SL811_HCD) [N/m/y/?] n

R8A66597 HCD support (USB_R8A66597_HCD) [N/m/y/?] n

Host Wire Adapter (HWA) driver (EXPERIMENTAL) (USB_HWA_HCD) [N/m/y/?] n

Maximum port(s) of RootHub (MAX_ROOT_PORTS) [2] (NEW)

最后一项选的时候选成2就行了,因为config MAX_ROOT_PORTS为2代表使用两个host。

烧写生成的内核,结果大失所望,启动后在自己焊出的usb host口上插上设备没反应。不过郁闷重启之时,发现先在这之上插上设备启动时,设备就能识别出来了。而且插入无线网卡可以配置使用。不过使用摄像头确出现错误:

gspca: ISOC data error: [1] len=318, status=-84

gspca: ISOC data error: [4] len=274, status=-84

gspca: ISOC data error: [25] len=144, status=-84

gspca: ISOC data error: [1] len=240, status=-84

等等。这是又回到对内核的改动上,当改动内核时就感觉帖子文章中第二篇没什么用,跟第一篇有些重复之嫌,后来替代的在static void s3c2410_start_hc中的改动也是,感觉有些重复static int usb_hcd_s3c2410_probe中的内容,所以重新编译内核,将对static void s3c2410_start_hc的改动去掉,即不改s3c2410_start_hc,重新编译内核烧写,结果使用摄像头正常。

也就是说,usb device已经改成了usb host,可以当成usb host使用了,只不过,必需先插入设备再启动板子,分析这种情况的原因可能是因为bootloader中肯定有对usb部分的设置驱动之类的,(Nor Flash的时候可以使用usb device进行下载传输,说明肯定已经驱上了usb device),vivi的设置跟重新编译的内核对usb设置不一样,可能就导致了这种情况,我也不确定是不是这个原因。不插设备的时候启动信息改的usb 1-2提示:

usb 1-2: new full speed USB device using s3c2410-ohci and address 3

usb 1-2: device descriptor read/64, error -62

usb 1-2: device descriptor read/64, error -62

usb 1-2: new full speed USB device using s3c2410-ohci and address 4

usb 1-2: device descriptor read/64, error -62

usb 1-2: device descriptor read/64, error -62

usb 1-2: new full speed US. device using s3c2410-ohci and address 5

usb 1-2: device not accepting addre髎 5, error -62

usb 1-2: new full speed USB device using s3c2410-ohci and address 6

usb 1-2: device not accepting address 6, error -62

hub 1-0:1.0: unable to enumerate USB device on port 2

但是,插上设备比如无线网卡,就能找到设备,提示:

usb 1-2: new full speed USB device using s3c2410-o鑓i and address 3

usb 1-2: New USB device found, idVen鋙r=0ace, idProduct=1215

usb 1-2: New USB device strings: Mfr=16, Product=32, SerialNumber=0

usb 1-2: Product: USB2.0 WLAN

usb 1-2: Manufacturer: ZyDAS

usb 1-2: configuration #1 chosen from 1 choice

usb 1-2: reset full speed USB device using s3c2410-ohci and address 3

wmaster0 (zd1211rw): not using net_device_ops yet

wlan0 (zd1211rw): not using net_device_ops yet

zd1211rw 1-2:1.0: phy0

对于这种情况,上网搜了一下,好像修改vivi中的upll设置,在main中添加了ChangeUPllValue(56,2,2)一句后,问题可以解决。具体没有再试,先如此的用着吧。
我是在友善之臂的mini2440上实现的,基于2410与2440没有本质差别,2410上应该也可以。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top