|
|
8#

楼主 |
发表于 2017-4-21 15:31:34
|
只看该作者
vefone 发表于 2017-4-17 20:40
; G( B8 }/ I( K1 [9 b3 I0 M i# Dlinux的网络驱动部分基本不用你去作修改。因为板级和底层的驱动都已经写好。- G( L ?8 g' k2 ?+ U
一般来说,板级的emac驱动都 ... ! ^8 Q1 R, r5 q; @8 y
vefone您好,有些还需要请教下您。+ y% ^% V7 A7 _
然后,我另一个板子的PHY芯片是KSZ8893,是RMII接口的,我没找到在哪里修改为RMII,我就在最初配置的时候将rmii_en设置为1
( f9 T, _2 s7 u( k4 P0 v/ c# w( j0 R1 x% q5 A% l" Y
void __init davinci_common_init(struct davinci_soc_info *soc_info)
& D7 P0 s2 k( g; M. O
' f+ d5 s% F( R4 F{7 D0 A# q- N# j- g1 N0 \
0 O# V; s+ N- e3 C davinci_soc_info.emac_pdata->rmii_en = 1; //在后面验证了一下是没有被清零,一直为1,说明使用的是rmii接口: I8 r( h$ I0 y& i+ j( S: L+ A8 @
' \* d5 I7 g- ~2 H3 P
}- _9 ?3 R8 d( b Z" f% k
& ]# p8 A k& z' g: D# p: [2 i//XXX 还是前面的
5 k; z- q' D @2 o2 A[ 2.111605] davinci_mdio davinci_mdio.0: phy[1]: device davinci_mdio-0:01, driver unknown // 这里我发现是device davinci_mdio-0:01,
5 P* j/ C2 ?5 L[ 2.119866] davinci_mdio davinci_mdio.0: phy[2]: device davinci_mdio-0:02, driver unknown, i# \$ D8 F! ?% A7 b& V
[ 2.128281] davinci_mdio davinci_mdio.0: phy[3]: device davinci_mdio-0:03, driver unknown5 g+ ?- `6 L& m" m- X0 G* z
( {7 v0 r! [* E& E
在后面! s( X2 _6 Z) P. m
/ f' i3 O3 q( O2 ?[ 2.387752] PHY davinci_mdio-0:00 not found // 这里应该是没有和前面匹配好。这里就是davinci_mdio-0:00了& w- V1 {, W X
[ 2.392184] net eth0: could not connect to phy davinci_mdio-0:001 V; w( S6 _* c% K/ @
5 T' N- r0 E6 x1 M- T6 V9 |
请问下这是什么原因?
# p$ L4 ]2 t' u) \, \! F+ i
: A0 Z5 C# K! i, r我百度了一下相关的问题:有介绍的说
- b4 [6 Q+ e A. R4 W: r: J h
) r! w! q0 R3 x- J由于TI的SDK包中使用的general PHY driver,所以修改很简单,更明确地说,是确认配置。) j4 X4 b, \9 S: [" g. c: o
, T# V. G3 A% j8 V( a( }, K建议调试在u-boot中进行,方便确认问题。
& d0 W2 k* R" m& Q$ o' Q3 Y- C. x, f$ [
u-boot下主要确认三点:4 E; u1 `* b9 R( L- R6 o5 n
$ R+ d* R( L) v5 C L w6 K* U
1)Program GMII_SEL in control module with 0x5 for RMII Interface // 请问下对于omapl138 如何操作
7 a9 r4 b: P* Q
, s$ p8 P+ O( t( t1 I1 d* i2)Pinmux configuration to support rmii interface //这个我应该已经满足: j& x- h2 s, M" v* ?
: L( R5 ]+ I; E; ~& V T. `$ u
3)Phy ID setting in Platform data(由PHY的硬件电路决定,通过在PHY_ID的三个管脚上下拉来决定) //这里我一直没有找到配置的具体地方??
% b9 l! F+ V) _- i9 I7 z2 `& [* u9 u9 S$ X/ J
Linux下调试也是确认以上三点。
2 o) Q" m9 V+ U0 i6 m7 t2 C* Z3 p, `- ?! P c9 M
可以指点下吗? |
|