|
|
你好:# g0 R0 S: x% l' o$ K; ]! ?
5 T& f! k* g; }: k7 `' X- _
我们公司在OMAPL138_StarterWare_1_10_04_01的基础上( OMAPL138_StarterWare_1_10_04_01\examples\evmOMAPL138\usb_dev_msc),
+ R! s0 c5 F7 ^2 ^/ i; R) T q' K- |# {3 N) V( r4 I2 e# d" Z x
实现了usb mass storage功能,在win7系统下面u盘功能够顺利实际,但是在电脑上接一个hub后,然后将u盘接到hub上,u盘不能正解识别。
$ b7 A# R- @- h6 j6 P+ X
0 D$ M p' D* v 目前分析代码发现经hub转接后,电脑发(SCSI_READ_10 0x28)这个命令,usb 复位。. I% g$ t. j: Y3 Q0 E
, p' _! b) B' i( H UsbPhyOn 代码如下,外部时钟配为19.2M. device mode:
' ^. b1 \- y$ z% h0 g8 J
+ k T I8 P$ R* n* B" g) n 请问个和我们的设备电流是否有关:9 w$ f1 U/ f* R8 d8 h
7 J/ S# q1 J1 w7 _& f
void UsbPhyOn(unsigned int ulIndex)
2 O5 a2 e* T! M) F4 N( ?5 O- F{
9 m7 |3 m# y5 M& ?/ E' n2 x. w; P
1 N# A! R- M2 T) T! N! i# H' p; S, @ unsigned int reg = 0;7 w4 K- E: a7 q. z1 F) L, _
BSP_KickUnlock();0 j9 f; t! s0 ^0 H6 O }
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);) B2 {7 r. u6 }( P# B0 U
reg &= ~(CFGCHIP2_REFFREQ);
* ?' l0 l" O4 R6 B, I* q% C X reg |= CFGCHIP2_REFFREQ_19_2MHZ;
# x0 s/ _* K% Z. O //reg |=CFGCHIP2_REFFREQ_24MHZ;! h5 ^6 _7 z0 i
HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr)=reg;* q& N5 a7 @: m \# a5 s
& ], L3 C0 h$ M5 x/ D$ @& D8 Y reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);/ z" t! I# B0 \* ?3 X# g& V
tprintf("\r\n clk==0x%08x:\r\n", reg &= (CFGCHIP2_REFFREQ));
6 a& Y+ H' z! [/ v% l) i n# y3 C3 N7 {
#if debug
. \9 G% U: ^" Y; W/***internal 2.0***/ //aux_clk8 Q1 Z' w5 A3 ?: o/ c' z9 Z; h
2 z8 }$ k' m; k: n7 H3 Y0 u( H9 T
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);1 s6 ]9 p3 G) O _
reg &= ~(CFGCHIP2_USB2PHYCLKMUX);) [% r# U- i3 \( ~) `5 w
reg |= (CFGCHIP2_USB2PHYCLKMUX);
# q( O0 l* A! b( `3 U( V HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;6 K+ ]1 V$ F5 } G, c( I
8 @9 M/ W$ M& H; C3 I4 `& P
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);6 B* A0 N( |9 p8 s( ~1 b
tprintf("\r\n 2.0clk source=0x%08x:\r\n", reg &= (CFGCHIP2_USB2PHYCLKMUX));6 F& a9 L) v6 L) X& k
, `' B( n5 |9 A/ Q
/***internal 1.0***/ ///phy out$ G8 }0 E; ^3 J8 E
$ K: l- Z ?) w! y+ C& u- j( j2 O reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
) {( T- E& j5 J" ` reg &= ~(CFGCHIP2_USB1PHYCLKMUX);0 J. X" j' j3 L3 V
//reg |= (CFGCHIP2_USB1PHYCLKMUX);
/ \* C0 W, O J s9 ^# G, r, t HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;$ a8 i+ T# _ L+ T8 ^
8 S3 E6 _, q7 n- a! E, e reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
) }- o: A3 A6 B4 }6 T0 j! ^6 o tprintf("\r\n 1.0clk source=0x%08x:\r\n", reg &= (CFGCHIP2_USB1PHYCLKMUX));
. K2 t, X) O; f; f- Q2 B; W/ f) V* Z4 H
" l3 r3 `4 ?. e0 w% S2 m, A/***phy run***/ //phy out" E4 t* Q# ~. u3 [- v
$ d$ C+ o# E# F) n reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);# O' E) M3 I9 I5 v9 T! Y* s& K
//tprintf("\r\n CFGCHIP2_PHYPWRDN=0x%08x:\r\n", reg &= (CFGCHIP2_PHYPWRDN));
+ }, R6 v7 F( U' ]* D1 n# R4 a4 Q* n2 |. _
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);2 n# K0 s1 S( l
reg &= ~(CFGCHIP2_VBDTCTEN);
& P9 |. w8 \- y; N/ h8 [' C8 { reg |= (CFGCHIP2_VBDTCTEN);3 b# g, d" s. ?
tprintf("\r\n phy CFGCHIP2_VBDTCTEN=0x%08x:\r\n", reg &= (CFGCHIP2_VBDTCTEN));
# U( r8 b3 }8 a/ N$ c Y#endif
: b3 |9 P+ {. n/ I) y$ e9 o
' d3 p% q. ~8 x5 q reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
7 O3 r/ L8 P6 }. D% J4 e3 {0 c. t; ] reg &= ~(CFGCHIP2_RESET | CFGCHIP2_PHYPWRDN | CFGCHIP2_OTGPWRDN); 6 g' ]! p# }7 J+ o" O- f
2 D0 S# X9 v x
reg |= CFGCHIP2_PHY_PLLON;
( r0 D: ~, ^" R9 i0 N. R5 R; c8 i: P* o
HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;
( B8 ^, h4 s% p( Y/ w
4 A5 \- J; A4 |: u while (!(HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) & CFGCHIP2_PHYCLKGD));
0 {& {6 ?8 T6 g( u/ a4 d X% e) C a: S7 v2 f5 [. Q
//#ifdef USB_MODE_FULLSPEED$ S2 V7 c# R) |5 B+ C+ E
HWREGB(USB0_BASE + USB_O_POWER) &= 0xdf;$ s) h" x6 d% U+ W) m% E
//#endif /* USB_MODE_HS_DISABLE */
8 l% T' [) E; a
( H9 Y! V8 `5 s( K1 ?% Q* Ktprintf("\r\n USB0_BASE + USB_O_POWER=0x%08x:\r\n", HWREG(USB0_BASE + USB_O_POWER));
5 \. T4 B" m' E9 J& {0 ~}
, I( L% C/ M' H4 [; W" n2 g; K1 \' [' T1 B
: Y8 r9 ~& m" L" d( |( S 附件有我们的电路图:: i, h! {8 R4 L4 z/ j
请问能否帮助分析,谢谢.) @5 n4 A3 g( n4 s- k: n8 c
, N- X( |. m: f0 X; G) C- b7 h
1 Z! g3 m1 N5 P5 B8 d! S2 ?
2 B, d. B) N# R: L
! I! S! z- m! c Q2 ^9 d M- k2 k8 i+ O
2 Q% K! x1 M! E% w4 N- J7 q" ?( `
, J# ^# u9 b; s; [. P8 _ |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|