|
你好:. N9 A- L4 w T* e6 F( r
5 A1 z' D" G7 N2 h3 q4 X 我们公司在OMAPL138_StarterWare_1_10_04_01的基础上( OMAPL138_StarterWare_1_10_04_01\examples\evmOMAPL138\usb_dev_msc),
1 A' P G8 _" z1 L4 c
0 D/ g' d# Q3 F" j, l 实现了usb mass storage功能,在win7系统下面u盘功能够顺利实际,但是在电脑上接一个hub后,然后将u盘接到hub上,u盘不能正解识别。
/ L( N; {* ?, k5 V% `
) g+ v2 M* A, x+ J, l* H p7 t# E! o% u 目前分析代码发现经hub转接后,电脑发(SCSI_READ_10 0x28)这个命令,usb 复位。
' q M1 G6 K! D$ I& V% e7 x+ j+ U/ r) p. F2 x( Q* _( D! N3 r: P
UsbPhyOn 代码如下,外部时钟配为19.2M. device mode:) N& S" y; }8 f( g1 r1 F: I
+ R/ d) M x* L9 J3 u U 请问个和我们的设备电流是否有关:1 n% M: D* P( Z$ W: B1 @! u* D4 ?
+ N, q8 Z/ [( }, N7 Hvoid UsbPhyOn(unsigned int ulIndex)
0 E$ N8 I B! z. _% I( T( q5 z{; O8 d$ u" G: y/ l; t% U; t Q; i
" F# L L4 Z! J' a
unsigned int reg = 0;
( h$ g5 v, D6 W0 e4 [ BSP_KickUnlock();
4 O c0 r' }: @9 o1 k reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);( C( c$ }- j, j u# u
reg &= ~(CFGCHIP2_REFFREQ);, \& L- O! v1 s7 j+ B) t5 ]4 O3 I; U8 J
reg |= CFGCHIP2_REFFREQ_19_2MHZ;
' _# _; E P* n //reg |=CFGCHIP2_REFFREQ_24MHZ;
0 M/ P7 Q) b( A8 T+ n- a, N2 [/ _ HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr)=reg;
' r: k1 n2 k" x* { K3 Q3 [( {" W( `5 N7 K
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);0 h: F" ]# n: k2 J# d0 [( W
tprintf("\r\n clk==0x%08x:\r\n", reg &= (CFGCHIP2_REFFREQ));" O: D2 F' N5 \$ C
' U+ L% H: Q( P
#if debug
% B: |5 C0 q( m- [% q$ c/***internal 2.0***/ //aux_clk- d0 ?0 i( e2 M* J& M0 E0 b
- ^0 t" Y/ E6 y, l9 t' d. x/ N& A reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);8 ?- c; i$ c' s, f9 O7 e! S+ p
reg &= ~(CFGCHIP2_USB2PHYCLKMUX);7 r" n2 l% x @$ j/ m, m
reg |= (CFGCHIP2_USB2PHYCLKMUX);
, i% t8 ]4 W4 R HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;9 r- r; S/ a+ r" Q4 X% Q! X: O
0 S; O! D8 }/ H% C& q4 E
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);: l2 w5 l$ T" k, E
tprintf("\r\n 2.0clk source=0x%08x:\r\n", reg &= (CFGCHIP2_USB2PHYCLKMUX));
9 u7 {' f; c% i& W: V7 F* A: x7 h3 p# Y- \7 W- w: |
/***internal 1.0***/ ///phy out
0 J2 Z% h5 w* w- c2 Q3 O* [/ y/ b% @
5 d* t9 P3 Q3 ?- G, @ reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);- ~* N( `& r: _' b0 o
reg &= ~(CFGCHIP2_USB1PHYCLKMUX);- a$ j# k. F* w( U: G8 `
//reg |= (CFGCHIP2_USB1PHYCLKMUX);
, ^1 P+ w1 R9 K2 E4 U. [ HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg; k' z( A4 B9 i2 \- k" A2 i7 |. _
' X3 d, j7 N9 r: e; ~8 Z; [; w, w% }
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
+ U2 Y7 z4 O/ F8 E tprintf("\r\n 1.0clk source=0x%08x:\r\n", reg &= (CFGCHIP2_USB1PHYCLKMUX));0 e8 S$ B2 C1 T- z: a" l2 H
# ~7 J9 _* ]; ]* n* y
- i, f6 z$ f6 H/***phy run***/ //phy out' m. P: l9 f* W* G3 f) f; b) o
: {% C& f5 e" B' a3 b, z5 B
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);8 f5 s# d# }1 `& I; r
//tprintf("\r\n CFGCHIP2_PHYPWRDN=0x%08x:\r\n", reg &= (CFGCHIP2_PHYPWRDN));
0 V7 }3 g: k8 ?- P
5 R! ~8 E" }) X reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);9 X0 W5 d- y3 }- X; q
reg &= ~(CFGCHIP2_VBDTCTEN);
- k* P, w) R' V reg |= (CFGCHIP2_VBDTCTEN);2 L# S- M& |$ y1 O2 c9 `
tprintf("\r\n phy CFGCHIP2_VBDTCTEN=0x%08x:\r\n", reg &= (CFGCHIP2_VBDTCTEN));, X2 W: j* G+ C" w
#endif0 p7 P+ }1 D2 @8 P) Y) V' V- w
3 b& L% Z/ @9 D$ W" O6 A reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
, r( n1 g% W" h- c! f reg &= ~(CFGCHIP2_RESET | CFGCHIP2_PHYPWRDN | CFGCHIP2_OTGPWRDN); ( r7 P) ~/ w6 u7 X8 h
, h! _9 s7 t$ T/ I( M
reg |= CFGCHIP2_PHY_PLLON; w s0 Y2 Z& @) ?8 _5 r
, U' I+ J1 y) O: q6 C! { HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;
k* S9 `0 `" c) W c! Z: b8 F% ?) _
* S r8 e$ u5 V# T- a. { while (!(HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) & CFGCHIP2_PHYCLKGD)); . m% n3 {) [6 p
9 n) c3 r7 ?# U" \7 d+ E5 g
//#ifdef USB_MODE_FULLSPEED
$ X$ H# k: ]& ]! w2 Y' ]3 E4 J HWREGB(USB0_BASE + USB_O_POWER) &= 0xdf;
4 J' b/ m$ u! k8 o& u//#endif /* USB_MODE_HS_DISABLE */* A: t f+ T O( y Z! N. {
8 P0 ~3 |7 l& ~, X6 [
tprintf("\r\n USB0_BASE + USB_O_POWER=0x%08x:\r\n", HWREG(USB0_BASE + USB_O_POWER));
$ t+ ~! L; |3 E @9 o- E) U}* l1 E a `, j$ z0 i
$ b# [ G0 `5 p1 c& i
. \. N7 g1 f. W, z, E 附件有我们的电路图:
; j, E( c& d) W6 `+ `9 g5 `$ N 请问能否帮助分析,谢谢.8 j1 \: n+ c, Q6 X2 v j* P
- p( K% `% F2 F7 Y: U" t! i7 ?: \6 l4 @( d1 I: }3 U
6 | `' b+ ]( F6 N
$ T7 j* C8 i! O4 t: z& O% y) U1 H
- ?6 |5 X, W' a& C1 @# T% ^+ c
% J* V' x6 b# F" ]& R( E |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|