i.MX53 Has Anyone Tested CONFIG_FEC_NAPI?

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

i.MX53 Has Anyone Tested CONFIG_FEC_NAPI?

948件の閲覧回数
TomE
Specialist II

We are running Freescales Linux Kernel 2.6.35 on an i.MX53.

The Ethernet driver has the compile-time option of supporting NAPI or not.

The configuration defaults to "CONFIG_FEC_NAPI" being off.

Does anyone have experience with turning this on? Is it reliable. Are there any downsides with it?

It should decrease interrupt latency for other devices, which is what we're interested in.

I've done a very rough test by flood-pinging the device with this option on and off, and with NAPI on the packet rate drops by 5%.

Tom

ラベル(5)
2 返答(返信)

688件の閲覧回数
gusarambula
NXP TechSupport
NXP TechSupport

Hello Tom Evans,

There is no much information regarding this feature on the documentation other than it can be turned on with the CONFIG_FEC_NAPI setting. However, there is some documentation on the NAPI implementation on the Linux Kernel on the Linux Foundation page:

napi

Perhaps you may find some answers there. It is intended to reduce the number of interrupts, which may help especially on high speed networks.

0 件の賞賛
返信

688件の閲覧回数
TomE
Specialist II

Thank you for your reply.

I know all about NAPI and how it works, having had to REMOVE it from the mainstream FlexCAN drivers to stop them from dropping messages all the time.

I have just been trying to get the Freescale FlexCAN driver working, and have had serious problems with it. It can't send or receive in order, can't handle the FIFO properly, and the transmit path had queuing bugs and basic beginner interrupt hazard problems. It doesn't seem to have ever had any testing done on it:

https://community.freescale.com/message/597480#597480

https://community.freescale.com/thread/381075

Since the NAPI addition was made by Freescale in patch "ENGR00160472-01", I was asking if anyone had tested these changes in a real product and found that it has worked OK. After my experience with the FlexCAN driver I don't want to enable any "new" features without some proof of testing.

Since the default is for this to be disabled, that's probably how it has been tested in the majority of customer products. I think I'll leave it like that in mine too.

Tom