|
你好:
1 q! n% I0 x0 ?% M: C$ W8 q `7 h1 `2 Y
我们公司在OMAPL138_StarterWare_1_10_04_01的基础上( OMAPL138_StarterWare_1_10_04_01\examples\evmOMAPL138\usb_dev_msc),
' R, P. K5 G# x% q- @1 a
" Z3 _" h/ p1 o 实现了usb mass storage功能,在win7系统下面u盘功能够顺利实际,但是在电脑上接一个hub后,然后将u盘接到hub上,u盘不能正解识别。- ^9 U# |# s0 E8 {# h
8 m" ~+ S, C( X 目前分析代码发现经hub转接后,电脑发(SCSI_READ_10 0x28)这个命令,usb 复位。
6 b$ M: M' {4 h# V0 M$ O7 m" R/ A" D/ Y% ?" A
UsbPhyOn 代码如下,外部时钟配为19.2M. device mode:
- b! O! a5 q2 K. X+ n5 d( P6 A0 F ~
请问个和我们的设备电流是否有关:1 f$ F2 C: Z1 z! g8 M7 ~
S: i; S8 s: X6 g9 T
void UsbPhyOn(unsigned int ulIndex): r0 k0 D7 ]/ N7 q+ k9 l
{( O F0 }" x. s" F8 @
8 k6 x4 G! _' o; ^- s) K unsigned int reg = 0;) G4 F' s5 ?: L: y: r
BSP_KickUnlock();
5 S* B, y$ [7 t) G2 H/ u" } reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);+ }9 Y) ?4 q: l+ N
reg &= ~(CFGCHIP2_REFFREQ);
+ o0 C" V0 N# z0 L6 t% H- x" s. p reg |= CFGCHIP2_REFFREQ_19_2MHZ;' W1 B- o$ `( O! g" D# y$ L
//reg |=CFGCHIP2_REFFREQ_24MHZ;
5 U; h: l5 \" v" N; b! O HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr)=reg;6 Y4 E0 k/ ~; Z1 U6 B; c
9 r$ V3 o" S# t2 l; R reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
Y$ A8 u' U4 Y6 m tprintf("\r\n clk==0x%08x:\r\n", reg &= (CFGCHIP2_REFFREQ));, `/ {, X/ \! L# e3 H0 j
5 Y( J$ [- ?0 ^0 u2 S9 E+ d; T
#if debug
- e1 R& U- D$ C9 @/ r1 g/***internal 2.0***/ //aux_clk
& E* L B) D! d4 Y- O$ Q/ j' N- E
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
% X. k( ]6 |0 [* w reg &= ~(CFGCHIP2_USB2PHYCLKMUX);& @$ D* r7 X# X1 M$ ?+ d5 L
reg |= (CFGCHIP2_USB2PHYCLKMUX);
: B( k D- L( t6 S' z HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;
/ I: S2 K: J. e5 I
: p! c; S W8 }# _ reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);/ Y: ?- y5 C5 H& [
tprintf("\r\n 2.0clk source=0x%08x:\r\n", reg &= (CFGCHIP2_USB2PHYCLKMUX));8 u2 w& Z ]$ @7 a7 E
# p5 ]( G- `2 Y% N, i/***internal 1.0***/ ///phy out
' {8 L' y, }5 \" Y$ l1 h
6 U" m ]7 E0 ?5 t: D$ \) L reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
4 y! v9 O8 _, J7 h7 D! D2 C reg &= ~(CFGCHIP2_USB1PHYCLKMUX);
9 |7 E# U' R2 h+ m //reg |= (CFGCHIP2_USB1PHYCLKMUX);
% b% I6 Y7 F' x) R: S$ U/ l+ N; @ HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;% r$ _# G: h9 u& ~5 ^2 a
( f% s& z& P: l$ \
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
/ h4 Z* U7 e- m, C ~ tprintf("\r\n 1.0clk source=0x%08x:\r\n", reg &= (CFGCHIP2_USB1PHYCLKMUX));3 _) J K) B. y7 J5 ^
1 b6 n3 c1 w) d
+ H) a [7 C0 Z/***phy run***/ //phy out% Q6 q. U" P" E9 G
. w+ t8 @; q$ ]- z6 G# }! Q2 Z reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
# p% O3 I% U) `7 J; x% \+ p //tprintf("\r\n CFGCHIP2_PHYPWRDN=0x%08x:\r\n", reg &= (CFGCHIP2_PHYPWRDN));
' S4 q1 K7 }, N
- a- B" F ^( T1 K% l+ [- U reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);$ C8 R' E7 P" k& W2 S- u& S; p
reg &= ~(CFGCHIP2_VBDTCTEN);
% r- \6 S% B+ z2 ], `5 r$ J7 e J reg |= (CFGCHIP2_VBDTCTEN);) Z" j& V$ S7 _7 a
tprintf("\r\n phy CFGCHIP2_VBDTCTEN=0x%08x:\r\n", reg &= (CFGCHIP2_VBDTCTEN));
R2 B% S3 d1 l0 |' L8 e#endif
, L8 t5 W8 r2 ^) f* u! r5 ]9 ^+ {, p) ~$ u' N1 F- u, _
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr); 4 L, i: E& S. ~
reg &= ~(CFGCHIP2_RESET | CFGCHIP2_PHYPWRDN | CFGCHIP2_OTGPWRDN);
b9 ?+ Z/ P" g/ @' T2 F
- q+ d7 ?! v2 \" h7 d reg |= CFGCHIP2_PHY_PLLON;
1 \2 y: H2 b8 A
9 D4 r# ]/ Q, i, b$ O' z HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;
5 [! m& c* W% j6 S% P2 o+ }: X5 z N W5 u7 w' t
while (!(HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) & CFGCHIP2_PHYCLKGD)); # s7 b9 l7 z8 ~& e
* X4 ]6 i. d' S6 [$ T//#ifdef USB_MODE_FULLSPEED
1 S- d3 ~7 H+ E( X; H HWREGB(USB0_BASE + USB_O_POWER) &= 0xdf;8 B3 ^2 ^( q; B( R! G' e
//#endif /* USB_MODE_HS_DISABLE */) U' S( D2 b3 g, H @$ s2 c
/ @% h' U, n8 Z( I+ }, n
tprintf("\r\n USB0_BASE + USB_O_POWER=0x%08x:\r\n", HWREG(USB0_BASE + USB_O_POWER));# [* o: W# y2 ]+ v7 w# m
}
$ ?8 J! w: v% K5 r% Y0 T/ A8 b; |8 O+ h
( U( {7 M, B" F) r& W 附件有我们的电路图:( u8 J9 ~2 }! t7 E! j0 ]
请问能否帮助分析,谢谢./ J. ]- m3 H5 C& Y, ~) U/ ^
. \2 b0 D6 n& H7 o4 ^4 Q8 W: V" p
- J( S1 r3 y/ ^/ B+ ?0 C, l. }: C6 D) S" v( w! Q: E6 W
1 I9 C4 @9 _+ F$ E7 Y. X# r
7 F, p3 v9 ] ]; F E2 L- ?) o; X/ l
: V* H+ ^0 S8 F7 W/ L' c
7 {" r0 _4 d4 w# U |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|