|
你好:
; y5 g6 w' Y% M# g/ n. i' S$ d3 V9 b
我们公司在OMAPL138_StarterWare_1_10_04_01的基础上( OMAPL138_StarterWare_1_10_04_01\examples\evmOMAPL138\usb_dev_msc),+ O& z( a! S* Q
: I; p& J+ }6 U! J/ k: D* h8 l 实现了usb mass storage功能,在win7系统下面u盘功能够顺利实际,但是在电脑上接一个hub后,然后将u盘接到hub上,u盘不能正解识别。
6 E- r$ e! z2 Q, o( @6 ~
% F/ {4 d) S. G& f0 o4 y4 Y; s 目前分析代码发现经hub转接后,电脑发(SCSI_READ_10 0x28)这个命令,usb 复位。2 P+ A+ E5 t( H# @& n3 H% b
: H' @2 T R& `" g0 E UsbPhyOn 代码如下,外部时钟配为19.2M. device mode:$ \" l# R0 q1 F3 K! ]4 H$ X
" {; @: A3 \; V2 ?: _ 请问个和我们的设备电流是否有关:
5 \2 D- H0 i0 q' b$ Y) K# d* t* t$ Q
void UsbPhyOn(unsigned int ulIndex)
4 n z) x6 ?% Z. m7 h8 x9 H{
; T; k. v; O! O8 `: ] : i" G3 P' e( x* N0 S+ ~
unsigned int reg = 0;
) X! k! m9 K( S( O; h BSP_KickUnlock();
3 n9 s0 t2 Y: @. \5 | reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);5 `' J$ s d; @2 q! y
reg &= ~(CFGCHIP2_REFFREQ);
/ k5 B9 D/ s& K, ]# q- i7 y reg |= CFGCHIP2_REFFREQ_19_2MHZ;& m: `+ X/ R& Q! z2 u0 H
//reg |=CFGCHIP2_REFFREQ_24MHZ;
2 v$ y2 ]' P) }8 O$ X! k( u HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr)=reg;
. {5 k: c# C4 S+ @1 ?# O \+ I0 |4 W- }& k I) l# a. G
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);0 I5 d4 [8 {- F
tprintf("\r\n clk==0x%08x:\r\n", reg &= (CFGCHIP2_REFFREQ));
# W5 a; [% d0 z; ? h# G8 b ?1 W
#if debug
, A$ N1 s3 r6 S0 L. a9 }( M2 |# f/***internal 2.0***/ //aux_clk
- \4 Z6 ]# r/ U3 N
, S8 W9 Q) m) J/ u reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
; g2 N3 H5 I5 m1 @8 ` reg &= ~(CFGCHIP2_USB2PHYCLKMUX);
& s! {& D' _( |% L& M; j reg |= (CFGCHIP2_USB2PHYCLKMUX);' X/ _4 ^' H* n( r
HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;) a7 g! S! D# Q5 e" v6 n0 y
! ^, A2 ]7 s; f' t7 M' `3 t
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);/ A: S. @. c7 P+ d4 d( q4 p; ]
tprintf("\r\n 2.0clk source=0x%08x:\r\n", reg &= (CFGCHIP2_USB2PHYCLKMUX));8 W0 h% p: y7 i9 C4 W
+ H8 z3 K- c- l9 Z, {1 K# W
/***internal 1.0***/ ///phy out
~2 N4 Z" B! ]. S3 L% e: t g# P, V2 P
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
! G" O) D7 j. ~: m) V* a: Z reg &= ~(CFGCHIP2_USB1PHYCLKMUX);3 }7 D, u0 H% y- n8 w
//reg |= (CFGCHIP2_USB1PHYCLKMUX);" i" p6 E! O- O. Y4 D2 t
HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;
! e `8 a2 Z/ z# }. F9 P9 n+ r% C% C
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
2 B) B; y( K1 W0 W. L$ z2 |9 _ tprintf("\r\n 1.0clk source=0x%08x:\r\n", reg &= (CFGCHIP2_USB1PHYCLKMUX));
; D, Z/ m. r+ l" O/ I/ n2 G8 c7 T9 ]- n. w8 V
. M' O* U% q8 O2 J+ `6 x/***phy run***/ //phy out' R k% f8 \$ O4 L/ W
( q- v, S2 v! J9 ^5 z( f
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);8 f" `* ~. [% \: e3 L
//tprintf("\r\n CFGCHIP2_PHYPWRDN=0x%08x:\r\n", reg &= (CFGCHIP2_PHYPWRDN));
+ j$ [, r# [! h4 x
r: B( h7 ~" O. [6 Q" I6 A reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);* ?: `( g) ]% j; k
reg &= ~(CFGCHIP2_VBDTCTEN);
! r3 m6 {* t4 ` reg |= (CFGCHIP2_VBDTCTEN);* ?5 a M) e6 u9 x8 ?6 i) ^
tprintf("\r\n phy CFGCHIP2_VBDTCTEN=0x%08x:\r\n", reg &= (CFGCHIP2_VBDTCTEN));
6 w/ V; W7 g) n! _#endif
) s- U0 q" q- V$ b+ V' l
9 z, d% Y, x4 ~& z+ J+ ? reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr); / v; n! r. D0 }; J2 h7 A7 S
reg &= ~(CFGCHIP2_RESET | CFGCHIP2_PHYPWRDN | CFGCHIP2_OTGPWRDN);
) G; a" ] G% ]( N2 C/ D
4 B1 N+ k% Y* Z3 u9 E reg |= CFGCHIP2_PHY_PLLON;) a& [3 k5 V2 O# @: D9 k
* ~6 d+ ^7 F6 c. Z1 e s HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;' a" l; @6 w# u# D) R# K
2 [4 i, I( {" m
while (!(HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) & CFGCHIP2_PHYCLKGD));
8 C ^) [ h3 y, J3 B" [$ ~
) D/ K5 A/ d! {1 ?4 J% p0 i. Z5 z//#ifdef USB_MODE_FULLSPEED9 u0 [, R1 o1 D9 S! N0 G
HWREGB(USB0_BASE + USB_O_POWER) &= 0xdf;
' j- `$ X8 V! J( R9 |" K) p- u) d//#endif /* USB_MODE_HS_DISABLE */
b& a B$ Z& i9 H- c( f2 @/ P$ j& J0 E3 s$ H2 n
tprintf("\r\n USB0_BASE + USB_O_POWER=0x%08x:\r\n", HWREG(USB0_BASE + USB_O_POWER));& D3 h R- \, P7 l o/ \
}
% j) E4 Q6 ~% F8 \6 r d( b
% m0 x8 Y- v& M2 S7 d) U" K, J
8 ]& w, A6 K% m; g/ F 附件有我们的电路图:
# G2 [9 H' o* ^9 m, d, x. |. j 请问能否帮助分析,谢谢.
, J7 t1 u8 @( a& U8 d4 \- b9 f& A
- H4 |: H9 G* ?1 z2 v# D/ |; B3 B% l4 R% Z b' N; A7 ?) X Q! o9 I& F
' R t+ W2 t: t* f% K
, B# p' H2 \4 S. g
2 E4 ?1 O) {6 ], @# [) g' Z
3 U5 e! w+ { o8 E5 F) O6 s. w' @ |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|