|
|
8#

楼主 |
发表于 2017-4-21 15:31:34
|
只看该作者
vefone 发表于 2017-4-17 20:403 |1 ?. w ]$ A9 r3 G
linux的网络驱动部分基本不用你去作修改。因为板级和底层的驱动都已经写好。
, {) T3 f, G# }) @' x3 G, _" P一般来说,板级的emac驱动都 ...
! |7 ~4 y, u; ^1 X& _$ }vefone您好,有些还需要请教下您。, u& C, q6 S. M: Q7 d: K0 m b6 F- w
然后,我另一个板子的PHY芯片是KSZ8893,是RMII接口的,我没找到在哪里修改为RMII,我就在最初配置的时候将rmii_en设置为1
- b& G0 }! U" x% D$ E3 V8 R! L$ ^1 p- c. t0 Q: A7 u" P( @3 d
void __init davinci_common_init(struct davinci_soc_info *soc_info)
+ Z; n- H# c3 J+ s+ ~1 q. z# N. g9 M; s. k% @, b3 c
{
) _7 f+ k9 K4 a( h/ ^. y% n# _
: x& M% o' L# ^9 o* e* f, t davinci_soc_info.emac_pdata->rmii_en = 1; //在后面验证了一下是没有被清零,一直为1,说明使用的是rmii接口- [+ T4 I; B: L9 e7 f
! F: _, Z. H2 c( M9 L8 H1 _}
# g2 T- f* I+ W& A) T& a7 x8 a! w" M4 }0 c( }
//XXX 还是前面的
, P* Z0 \/ V" P4 Q: ~[ 2.111605] davinci_mdio davinci_mdio.0: phy[1]: device davinci_mdio-0:01, driver unknown // 这里我发现是device davinci_mdio-0:01, ) ?, X. v% } s+ _% @6 n7 k2 ?# c
[ 2.119866] davinci_mdio davinci_mdio.0: phy[2]: device davinci_mdio-0:02, driver unknown
' J4 s6 b+ |2 Z9 q3 ?4 F+ o[ 2.128281] davinci_mdio davinci_mdio.0: phy[3]: device davinci_mdio-0:03, driver unknown
7 X3 j8 [; d1 K. Y6 W' L. ^6 \. N/ z* F" p, k1 R& d5 _" f* w* `
在后面
# V' F2 @9 M; |6 Q0 \+ ?; S" n x# _/ M+ g: z
[ 2.387752] PHY davinci_mdio-0:00 not found // 这里应该是没有和前面匹配好。这里就是davinci_mdio-0:00了
# {1 h- a O. f! O) g0 H E8 O[ 2.392184] net eth0: could not connect to phy davinci_mdio-0:000 H6 Z, G& x/ X: S0 a% U' B
: {! H: Y- N F' T" C7 m: P' z请问下这是什么原因?+ P# a% Y! a. m! J; m# f, S- d" U+ q( l
) x) E- D& ]" w. o1 S我百度了一下相关的问题:有介绍的说: q7 C. N& G8 ~. Z3 r) P
! L0 ?7 n$ _3 H" Q
由于TI的SDK包中使用的general PHY driver,所以修改很简单,更明确地说,是确认配置。& b5 j* [! ~5 I) j2 g* }
# a) D2 k% [+ R# J$ [
建议调试在u-boot中进行,方便确认问题。
; {, p. d! [1 ]9 D7 t1 j& F8 o) w7 B+ y8 F
& B" o7 Y0 _3 V5 B1 mu-boot下主要确认三点:; i" U+ F @ P i6 Q2 F# P
" M) M/ e! L# h
1)Program GMII_SEL in control module with 0x5 for RMII Interface // 请问下对于omapl138 如何操作
. W, g. I3 \% [' t* X( D. O: n$ E3 ^! q8 N: X
2)Pinmux configuration to support rmii interface //这个我应该已经满足
5 B! M, @- E6 ~# p) M5 o7 J% r5 s* {* E3 V/ J+ r
3)Phy ID setting in Platform data(由PHY的硬件电路决定,通过在PHY_ID的三个管脚上下拉来决定) //这里我一直没有找到配置的具体地方??) Q" d/ r+ ~- D0 P. v
( }* W# S$ W& g7 n9 CLinux下调试也是确认以上三点。
' O8 D. j2 h( B6 T0 X9 v
6 v- h6 f8 [, m' _" f可以指点下吗? |
|