iMX287 eth0: tx queue full!

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

iMX287 eth0: tx queue full!

1,885件の閲覧回数
f43067
Contributor II

Hello everyone,

    I'm using the fec0 of the iMX287 with 10M/Half duplex mode,but sometimes the fec0 will enter error state with the error message is "eth0: tx queue full!",and this state will keep on until I send "ifconfig eth0 down" and "ifconfig eth0 up".After these two commands,the fec0 will word correctly.I find the location of the error message "eth0: tx queue full!" is in the function of fec_enet_start_xmit in /drivers/net/fec.c, the resaon is the status bit BD_ENET_TX_READY is set. What's this bit mean? and in what condition this bit will be set? and when this bit is set, where and how to reset it?

    Best Regards.


ラベル(2)
タグ(4)
0 件の賞賛
返信
3 返答(返信)

1,081件の閲覧回数
Yuri
NXP Employee
NXP Employee

  The following may be helpful.

eth0: tx queue full

Have a great day,
Yuri

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 件の賞賛
返信

1,081件の閲覧回数
f43067
Contributor II

Thanks very much! But this article don't solve my problem,it seems no effect. After testing, I find when enter to the error state, the driver can't get in the "fec_timeout" function, so the way to modify the  "fec_timeout" function doesn't work.

0 件の賞賛
返信

1,081件の閲覧回数
Yuri
NXP Employee
NXP Employee

   The status bit BD_ENET_TX_READY means, that current Tx buffer cannot be
send in time. If there are no hardware errors, it is needed just wait the Tx buffer transmitting.

Looks like the current BSP implementation is not optimal for 10M half duplex mode.


~Yuri.



 

0 件の賞賛
返信