|
大家好,我准备在omapl138上ARM核实现移植linux系统,网络驱动出现了问题/ n* b1 ~( F& T, q" y
[ 2.096413] davinci_mdio davinci_mdio.0: detected phy mask fffffff1
. [# K. P5 _$ N' P O[ 2.107743] davinci_mdio.0: probed
0 C5 V1 j4 `# |7 A[ 2.111605] davinci_mdio davinci_mdio.0: phy[1]: device davinci_mdio-0:01, driver unknown //在这里有问题
6 [& B* {( F7 J7 N[ 2.119866] davinci_mdio davinci_mdio.0: phy[2]: device davinci_mdio-0:02, driver unknown
2 Q9 x' I4 S1 n3 C9 g2 K[ 2.128281] davinci_mdio davinci_mdio.0: phy[3]: device davinci_mdio-0:03, driver unknown
: r3 u1 B1 }4 B" i) E3 }" j) g0 U% ]5 b, ] b
[ 2.137188] PPP generic driver version 2.4.2
* `( U+ V, G7 V* P' w$ n[ 2.143236] PPP BSD Compression module registered* K4 T" c' x. |$ Z3 i7 k) m
: d! l/ i9 Z' z2 R; V% M4 }8 E2 C' p) |7 F8 z
在linux内核中的代码应该是以下:
, H2 b8 k( x7 D. `# Z8 k9 e. y // 注册mii_bus
/ N: ~1 |# c1 w3 P( L /* register the mii bus 2. 注册mii bus 2*/
2 M3 n; C4 W8 z& M8 x2 W- L ret = mdiobus_register(data->bus);* v! B0 I) l) J& j
if (ret)7 B9 R. v, B2 s) i9 O; I! n
goto bail_out;: N+ ^- |3 T+ Q( ~( h
& i7 l& g: i" V- Y) l# D$ ~
/* scan and dump the bus 扫描和转储总线*/& D8 R9 b/ ^; \ P
for (addr = 0; addr < PHY_MAX_ADDR; addr++) {8 j# j5 Y& \& w" A% Z/ A1 i0 _
phy = data->bus->phy_map[addr]; // 应该从 phy_map下手 phy_map[0] 没有数据/ e+ l% t# q0 D' b+ w* s" H( Y+ h
if (phy) {
1 [3 ~+ r# [( y+ K d& M dev_info(dev, "phy[%d]: device %s, driver %s\n",
% l/ @( B) q6 I" Z0 S$ X phy->addr, dev_name(&phy->dev),
4 G2 {- w6 ~. x" M1 ~" c! q7 b phy->drv ? phy->drv->name : "unknown");+ t9 H; A( ]! \+ B4 M4 _; L
}( U0 w( j, o) ^& n8 ]& l% j
}
6 I# n) V( l' x) T* w3 h; A2 k4 ?0 R. Q
8 i1 J5 m! A$ k+ Y: x, n
最终在后面 网络启动有问题
5 [! O/ ?: y8 @# e0 H) p+ C[ 2.387752] PHY davinci_mdio-0:00 not found/ x# t$ K, Y' ?* o
[ 2.392184] net eth0: could not connect to phy davinci_mdio-0:00- N- p0 x% l! Z1 W! G- ~3 x
[ 2.398254] IP-Config: Failed to open eth05 K$ P% V' x$ ?# u1 i
[ 2.402589] IP-Config: No network devices available.' u0 i X! ^- B' q+ O6 [
, O! t% I( l& R. Y. v+ F: z6 f
+ f( j( X3 F9 O( d+ |; x, s% s$ }! V7 h
1,请问下,这是什么原因造成的?
0 l2 y4 J( _% X2,phy模块 和网络驱动开发的过程 是什么样的关系?
! X& ]! P$ K" k+ o$ r谢谢 D% k, w$ t# [4 Y9 y* ?7 W
|
|