|
8#
楼主 |
发表于 2017-4-21 15:31:34
|
只看该作者
vefone 发表于 2017-4-17 20:40
, w* c( [! t! S2 T; b( |6 S! Rlinux的网络驱动部分基本不用你去作修改。因为板级和底层的驱动都已经写好。# d$ n+ `' w" ^, U
一般来说,板级的emac驱动都 ...
6 U9 H* r+ ?) j5 @vefone您好,有些还需要请教下您。
5 N+ n- f2 D- j8 i然后,我另一个板子的PHY芯片是KSZ8893,是RMII接口的,我没找到在哪里修改为RMII,我就在最初配置的时候将rmii_en设置为1% W* G9 ~3 O O$ |7 T6 A7 @
3 X7 I+ Q: ^4 b5 O5 T3 nvoid __init davinci_common_init(struct davinci_soc_info *soc_info)
) X0 K6 J/ _, W% }- Y
, a/ k4 L0 B- O6 z9 i{
2 Y8 d* | K6 M6 m8 Y: z4 f H0 ~* _" Y, I* A
davinci_soc_info.emac_pdata->rmii_en = 1; //在后面验证了一下是没有被清零,一直为1,说明使用的是rmii接口 y% S7 a2 O0 s( L" d
( O. p+ D9 _6 U' P9 L}6 H" j' @7 r0 [+ K" D
( T9 F& K& y9 ?! j, C. W
//XXX 还是前面的# V4 V5 V/ M: Q8 M" F) V3 M% F, u' c
[ 2.111605] davinci_mdio davinci_mdio.0: phy[1]: device davinci_mdio-0:01, driver unknown // 这里我发现是device davinci_mdio-0:01,
- M) m; K8 Y2 N' |, m5 q[ 2.119866] davinci_mdio davinci_mdio.0: phy[2]: device davinci_mdio-0:02, driver unknown
& A# ~4 [$ q" S0 i& }[ 2.128281] davinci_mdio davinci_mdio.0: phy[3]: device davinci_mdio-0:03, driver unknown7 W# t# c( Z9 e
2 w6 u( \7 _9 F! G; @$ y
在后面
+ t+ r0 ^) T$ [5 B/ g, M
" E( O! S+ x3 a* n7 q) E[ 2.387752] PHY davinci_mdio-0:00 not found // 这里应该是没有和前面匹配好。这里就是davinci_mdio-0:00了% x* t. Z( F; v# [+ ~0 Y" }2 f
[ 2.392184] net eth0: could not connect to phy davinci_mdio-0:00& y$ k+ o% C" q- ~6 n! M
+ @, \1 J$ z8 p' H% x" s
请问下这是什么原因?9 V: O, l. H" D* u" X- L
, L- K* @3 _) u6 w# c1 G* A0 O" E我百度了一下相关的问题:有介绍的说
' ?; A2 S- C+ M5 ^9 L/ t& q+ U% [6 {; f4 f' [: A2 X# Q
由于TI的SDK包中使用的general PHY driver,所以修改很简单,更明确地说,是确认配置。( ?6 y6 {+ J5 q8 t
" G' w& r; ~# t1 {( j# E建议调试在u-boot中进行,方便确认问题。8 z9 ~+ R0 T( {/ Z* G$ ^
* r( t) C/ W) A/ r; {
u-boot下主要确认三点:
( d. P8 V( J) [; ? A+ B) |2 I) c! _) c) z" q
1)Program GMII_SEL in control module with 0x5 for RMII Interface // 请问下对于omapl138 如何操作
7 w' r1 n" l5 A, D, O/ s7 \) H |* M* s: E+ q' U8 I
2)Pinmux configuration to support rmii interface //这个我应该已经满足
% b" h @, ~5 r. X
- @" O1 B2 V' j# E! a" d3)Phy ID setting in Platform data(由PHY的硬件电路决定,通过在PHY_ID的三个管脚上下拉来决定) //这里我一直没有找到配置的具体地方??
' F% {2 `$ @* @6 t; E
Z3 p& _8 k$ e T4 GLinux下调试也是确认以上三点。, o5 `, ^; V) y7 V! X& A; @6 h
& O4 t' w! \0 K P
可以指点下吗? |
|