[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20f7e286-3dfb-2b07-c76b-00d02792ac30@nelint.com>
Date: Wed, 28 Sep 2016 11:01:10 -0700
From: Eric Nelson <eric@...int.com>
To: Russell King - ARM Linux <linux@...linux.org.uk>
Cc: David Laight <David.Laight@...LAB.COM>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"andrew@...n.ch" <andrew@...n.ch>,
"fugang.duan@....com" <fugang.duan@....com>,
"otavio@...ystems.com.br" <otavio@...ystems.com.br>,
"edumazet@...gle.com" <edumazet@...gle.com>,
"troy.kisky@...ndarydevices.com" <troy.kisky@...ndarydevices.com>,
"davem@...emloft.net" <davem@...emloft.net>,
"u.kleine-koenig@...gutronix.de" <u.kleine-koenig@...gutronix.de>
Subject: Re: [PATCH 3/3] net: fec: align IP header in hardware
Thanks Russell,
On 09/28/2016 10:25 AM, Russell King - ARM Linux wrote:
> On Wed, Sep 28, 2016 at 10:14:52AM -0700, Eric Nelson wrote:
>> Thanks David,
>>
>> On 09/28/2016 09:42 AM, David Laight wrote:
>>> From reading this it seems that the effect of FEC_RACC_SHIFT16 is to
>>> add two bytes of 'junk' to the start of every receive frame.
>>
>> That's right. Two bytes of junk between the MAC header and the
>> IP header.
>
> That's wrong. FEC_RACC_SHIFT16 adds two bytes to the _beginning_ of
> the packet, not in the middle of the packet:
>
> 7 RX FIFO Shift-16
> SHIFT16
> When this field is set, the actual frame data starts at bit 16
> of the first word read from the RX FIFO aligning the Ethernet
> payload on a 32-bit boundary.
>
> NOTE: This function only affects the FIFO storage and has no
> influence on the statistics, which use the actual length
> of the frame received.
>
> 0 Disabled.
> 1 Instructs the MAC to write two additional bytes in front
> of each frame received into the RX FIFO.
>
> *in front* of the frame - that's before the Ethernet header. Not between
> the ethernet and IP headers.
>
I obviously mis-read this, and haven't dumped any packets to straighten
myself out.
Powered by blists - more mailing lists