How to enable pause frames in imx6

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

How to enable pause frames in imx6

1,718 Views
ashokp
Contributor I

Hi All,

I am using IMX6 custom board and latest yocto BSP from freescale. In our code we applied the IMX6 pause frame patches (http://lists.infradead.org/pipermail/linux-arm-kernel/2013-January/140114.html )

But i observed that the functions and code never called. Please let me know if anything i need to do for enabling the pause frame.

I tried to set the pause from ethtool. I got the following error

root@lec-imx6:~# ethtool -A eth0 rx on

fec 2188000.ethernet eth0: hardware only support enable/disable both tx and rx

Cannot set device pause parameters: Invalid argument

Thanks,

P.Ashok

Labels (2)
Tags (2)
0 Kudos
1 Reply

898 Views
jamesbone
NXP TechSupport
NXP TechSupport

Hello Ashok,

The patch that you mention it is for the Errata of the i.MX6 this made the pauses in the Ethernet to avoid the FIFO overruns, but I believe you are trying to implement iEE1588 Pauses which are completely different story.

This patch will cause compatibility problems with some switches. It should be possible to control their use manually or through autonegotiation (if the medium

supports that).

You should:

1. Implement the ethtool get_pauseparam and set_pauseparam operations.

If the medium supports autoneog, use mii_advertise_flowctrl() in

set_pauseparam to update pause frame advertising and then restart

autoneg.

2. Allow pause frame advertising to be changed through set_settings (I

think phylib covers this for you).

3. Program the MAC according to the the parameters set with

set_pauseparam or (if pause autoneg was enabled) the result of autoneg.

0 Kudos