<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/drivers/net/ethernet/cavium, branch v4.9.44</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>liquidio: fix bug in soft reset failure detection</title>
<updated>2017-07-21T05:42:18+00:00</updated>
<author>
<name>Derek Chickles</name>
<email>derek.chickles@cavium.com</email>
</author>
<published>2017-07-05T18:59:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=a80a70a4822ca842c16b29c8d9e4336a95375c61'/>
<id>a80a70a4822ca842c16b29c8d9e4336a95375c61</id>
<content type='text'>
commit 05a6b4cae8c0cc1680c9dd33a97a49a13c0f01bc upstream.

The code that detects a failed soft reset of Octeon is comparing the wrong
value against the reset value of the Octeon SLI_SCRATCH_1 register,
resulting in an inability to detect a soft reset failure.  Fix it by using
the correct value in the comparison, which is any non-zero value.

Fixes: f21fb3ed364b ("Add support of Cavium Liquidio ethernet adapters")
Fixes: c0eab5b3580a ("liquidio: CN23XX firmware download")
Signed-off-by: Derek Chickles &lt;derek.chickles@cavium.com&gt;
Signed-off-by: Satanand Burla &lt;satananda.burla@cavium.com&gt;
Signed-off-by: Raghu Vatsavayi &lt;raghu.vatsavayi@cavium.com&gt;
Signed-off-by: Felix Manlunas &lt;felix.manlunas@cavium.com&gt;
Reviewed-by: Leon Romanovsky &lt;leonro@mellanox.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit 05a6b4cae8c0cc1680c9dd33a97a49a13c0f01bc upstream.

The code that detects a failed soft reset of Octeon is comparing the wrong
value against the reset value of the Octeon SLI_SCRATCH_1 register,
resulting in an inability to detect a soft reset failure.  Fix it by using
the correct value in the comparison, which is any non-zero value.

Fixes: f21fb3ed364b ("Add support of Cavium Liquidio ethernet adapters")
Fixes: c0eab5b3580a ("liquidio: CN23XX firmware download")
Signed-off-by: Derek Chickles &lt;derek.chickles@cavium.com&gt;
Signed-off-by: Satanand Burla &lt;satananda.burla@cavium.com&gt;
Signed-off-by: Raghu Vatsavayi &lt;raghu.vatsavayi@cavium.com&gt;
Signed-off-by: Felix Manlunas &lt;felix.manlunas@cavium.com&gt;
Reviewed-by: Leon Romanovsky &lt;leonro@mellanox.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>net: thunderx: acpi: fix LMAC initialization</title>
<updated>2017-07-05T12:40:25+00:00</updated>
<author>
<name>Vadim Lomovtsev</name>
<email>Vadim.Lomovtsev@caviumnetworks.com</email>
</author>
<published>2017-01-12T15:28:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=4ae8dc6acb710419c8766c290b7fb5eac2f1ed68'/>
<id>4ae8dc6acb710419c8766c290b7fb5eac2f1ed68</id>
<content type='text'>
[ Upstream commit 7aa4865506a26c607e00bd9794a85785b55ebca7 ]

While probing BGX we requesting appropriate QLM for it's configuration
and get LMAC count by that request. Then, while reading configured
MAC values from SSDT table we need to save them in proper mapping:
  BGX[i]-&gt;lmac[j].mac = &lt;MAC value&gt;
to later provide for initialization stuff. In order to fill
such mapping properly we need to add lmac index to be used while
acpi initialization since at this moment bgx-&gt;lmac_count already contains
actual value.

Signed-off-by: Vadim Lomovtsev &lt;Vadim.Lomovtsev@caviumnetworks.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Sasha Levin &lt;alexander.levin@verizon.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 7aa4865506a26c607e00bd9794a85785b55ebca7 ]

While probing BGX we requesting appropriate QLM for it's configuration
and get LMAC count by that request. Then, while reading configured
MAC values from SSDT table we need to save them in proper mapping:
  BGX[i]-&gt;lmac[j].mac = &lt;MAC value&gt;
to later provide for initialization stuff. In order to fill
such mapping properly we need to add lmac index to be used while
acpi initialization since at this moment bgx-&gt;lmac_count already contains
actual value.

Signed-off-by: Vadim Lomovtsev &lt;Vadim.Lomovtsev@caviumnetworks.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Sasha Levin &lt;alexander.levin@verizon.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: thunderx: Fix PHY autoneg for SGMII QLM mode</title>
<updated>2017-06-17T04:41:51+00:00</updated>
<author>
<name>Thanneeru Srinivasulu</name>
<email>tsrinivasulu@cavium.com</email>
</author>
<published>2017-05-24T01:53:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=d7b2b380c08d7e9b6caf1584656b98c47eb665f2'/>
<id>d7b2b380c08d7e9b6caf1584656b98c47eb665f2</id>
<content type='text'>
[ Upstream commit 075ad765ef7541b2860de8408c165a92b78aefa3 ]

This patch fixes the case where there is no phydev attached
to a LMAC in DT due to non-existance of a PHY driver or due
to usage of non-stanadard PHY which doesn't support autoneg.
Changes dependeds on firmware to send correct info w.r.t
PHY and autoneg capability.

This patch also covers a case where a 10G/40G interface is used
as a 1G with convertors with Cortina PHY in between.

Signed-off-by: Thanneeru Srinivasulu &lt;tsrinivasulu@cavium.com&gt;
Signed-off-by: Sunil Goutham &lt;sgoutham@cavium.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Sasha Levin &lt;alexander.levin@verizon.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 075ad765ef7541b2860de8408c165a92b78aefa3 ]

This patch fixes the case where there is no phydev attached
to a LMAC in DT due to non-existance of a PHY driver or due
to usage of non-stanadard PHY which doesn't support autoneg.
Changes dependeds on firmware to send correct info w.r.t
PHY and autoneg capability.

This patch also covers a case where a 10G/40G interface is used
as a 1G with convertors with Cortina PHY in between.

Signed-off-by: Thanneeru Srinivasulu &lt;tsrinivasulu@cavium.com&gt;
Signed-off-by: Sunil Goutham &lt;sgoutham@cavium.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Sasha Levin &lt;alexander.levin@verizon.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: thunderx: Fix memory leak and other issues upon interface toggle</title>
<updated>2016-11-16T18:28:33+00:00</updated>
<author>
<name>Sunil Goutham</name>
<email>sgoutham@cavium.com</email>
</author>
<published>2016-11-15T12:08:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=c94acf805d93e7beb5898ac97ff327ae0b6f04dd'/>
<id>c94acf805d93e7beb5898ac97ff327ae0b6f04dd</id>
<content type='text'>
This patch fixes the following
1. When interface is being teardown and queues are being cleaned up,
   free pending SKBs that are in SQ which are either not transmitted
   or freed as NAPI is disabled by that time.
2. While interface initialization, delay CFG_DONE notification till
   the end to avoid corner cases where TXQs are enabled but CQ
   interrupts are not which results blocking transmission and kicking
   off watchdog.
3. Check for IFF_UP while re-enabling RBDR interrupts from tasklet.

Signed-off-by: Sunil Goutham &lt;sgoutham@cavium.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch fixes the following
1. When interface is being teardown and queues are being cleaned up,
   free pending SKBs that are in SQ which are either not transmitted
   or freed as NAPI is disabled by that time.
2. While interface initialization, delay CFG_DONE notification till
   the end to avoid corner cases where TXQs are enabled but CQ
   interrupts are not which results blocking transmission and kicking
   off watchdog.
3. Check for IFF_UP while re-enabling RBDR interrupts from tasklet.

Signed-off-by: Sunil Goutham &lt;sgoutham@cavium.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: thunderx: Fix VF driver's interface statistics</title>
<updated>2016-11-16T18:28:33+00:00</updated>
<author>
<name>Sunil Goutham</name>
<email>sgoutham@cavium.com</email>
</author>
<published>2016-11-15T12:08:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=964cb69bdc9db255f7c3a80f6e1bed8a25e4c60e'/>
<id>964cb69bdc9db255f7c3a80f6e1bed8a25e4c60e</id>
<content type='text'>
This patch fixes multiple issues
1. Convert all driver statistics to percpu counters for accuracy.
2. To avoid multiple CQEs posted by a TSO packet appended to HW,
   TSO pkt's SQE has 'post_cqe' not set but a dummy SQE is added
   for getting HW transmit completion notification. This dummy
   SQE has 'dont_send' set and HW drops the pkt pointed to in this
   thus Tx drop counter increases. This patch fixes this by subtracting
   SW tx tso counter from HW Tx drop counter for actual packet drop counter.
3. Reset all individual queue's and VNIC HW stats when interface is going down.
4. Getrid off unnecessary counters in hot path.
5. Bringout all CQE error stats i.e both Rx and Tx.

Signed-off-by: Sunil Goutham &lt;sgoutham@cavium.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch fixes multiple issues
1. Convert all driver statistics to percpu counters for accuracy.
2. To avoid multiple CQEs posted by a TSO packet appended to HW,
   TSO pkt's SQE has 'post_cqe' not set but a dummy SQE is added
   for getting HW transmit completion notification. This dummy
   SQE has 'dont_send' set and HW drops the pkt pointed to in this
   thus Tx drop counter increases. This patch fixes this by subtracting
   SW tx tso counter from HW Tx drop counter for actual packet drop counter.
3. Reset all individual queue's and VNIC HW stats when interface is going down.
4. Getrid off unnecessary counters in hot path.
5. Bringout all CQE error stats i.e both Rx and Tx.

Signed-off-by: Sunil Goutham &lt;sgoutham@cavium.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: thunderx: Fix configuration of L3/L4 length checking</title>
<updated>2016-11-16T18:28:33+00:00</updated>
<author>
<name>Sunil Goutham</name>
<email>sgoutham@cavium.com</email>
</author>
<published>2016-11-15T12:07:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=cadcf95a4f70362c96a8fe39ff5d5df830d4db7f'/>
<id>cadcf95a4f70362c96a8fe39ff5d5df830d4db7f</id>
<content type='text'>
This patch fixes enabling of HW verification of L3/L4 length and
TCP/UDP checksum which is currently being cleared. Also fixed VLAN
stripping config which is being cleared when multiqset is enabled.

Signed-off-by: Sunil Goutham &lt;sgoutham@cavium.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch fixes enabling of HW verification of L3/L4 length and
TCP/UDP checksum which is currently being cleared. Also fixed VLAN
stripping config which is being cleared when multiqset is enabled.

Signed-off-by: Sunil Goutham &lt;sgoutham@cavium.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: thunderx: Program LMAC credits based on MTU</title>
<updated>2016-11-16T18:28:33+00:00</updated>
<author>
<name>Sunil Goutham</name>
<email>sgoutham@cavium.com</email>
</author>
<published>2016-11-15T12:07:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=712c3185344050c591d78584542bd945e4f6f778'/>
<id>712c3185344050c591d78584542bd945e4f6f778</id>
<content type='text'>
Programming LMAC credits taking 9K frame size by default is incorrect
as for an interface which is one of the many on the same BGX/QLM
no of credits available will be less as Tx FIFO will be divided
across all interfaces. So let's say a BGX with 40G interface and another
BGX with multiple 10G, bandwidth of 10G interfaces will be effected when
traffic is running on both 40G and 10G interfaces simultaneously.

This patch fixes this issue by programming credits based on netdev's MTU.
Also fixed configuring MTU to HW and added CQE counter for pkts which
exceed this value.

Signed-off-by: Sunil Goutham &lt;sgoutham@cavium.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Programming LMAC credits taking 9K frame size by default is incorrect
as for an interface which is one of the many on the same BGX/QLM
no of credits available will be less as Tx FIFO will be divided
across all interfaces. So let's say a BGX with 40G interface and another
BGX with multiple 10G, bandwidth of 10G interfaces will be effected when
traffic is running on both 40G and 10G interfaces simultaneously.

This patch fixes this issue by programming credits based on netdev's MTU.
Also fixed configuring MTU to HW and added CQE counter for pkts which
exceed this value.

Signed-off-by: Sunil Goutham &lt;sgoutham@cavium.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: thunderx: Introduce BGX_ID_MASK macro to extract bgx_id</title>
<updated>2016-11-16T18:28:33+00:00</updated>
<author>
<name>Radha Mohan Chintakuntla</name>
<email>rchintakuntla@cavium.com</email>
</author>
<published>2016-11-15T12:07:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=612e94bd99912f3b2ac616c00c3dc7f166a98005'/>
<id>612e94bd99912f3b2ac616c00c3dc7f166a98005</id>
<content type='text'>
This patch fixes the 'bgx_id' determination on 83xx where there are
4 BGX blocks instead of 2 on other platforms.

Signed-off-by: Radha Mohan Chintakuntla &lt;rchintakuntla@cavium.com&gt;
Signed-off-by: Sunil Goutham &lt;sgoutham@cavium.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch fixes the 'bgx_id' determination on 83xx where there are
4 BGX blocks instead of 2 on other platforms.

Signed-off-by: Radha Mohan Chintakuntla &lt;rchintakuntla@cavium.com&gt;
Signed-off-by: Sunil Goutham &lt;sgoutham@cavium.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>liquidio: CN23XX: fix a loop timeout</title>
<updated>2016-10-13T16:12:50+00:00</updated>
<author>
<name>Dan Carpenter</name>
<email>dan.carpenter@oracle.com</email>
</author>
<published>2016-10-13T08:56:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=10f6c4d6ab2cdde768e29f41fbfbdde6c91fd1ff'/>
<id>10f6c4d6ab2cdde768e29f41fbfbdde6c91fd1ff</id>
<content type='text'>
This is supposed to loop 1000 times and then give up.  The problem is
it's a post-op and after the loop we test if "loop" is zero when really
it would be -1.  Fix this by making it a pre-op.

Fixes: 1b7c55c4538b ("liquidio: CN23XX queue manipulation")
Signed-off-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is supposed to loop 1000 times and then give up.  The problem is
it's a post-op and after the loop we test if "loop" is zero when really
it would be -1.  Fix this by making it a pre-op.

Fixes: 1b7c55c4538b ("liquidio: CN23XX queue manipulation")
Signed-off-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: thunderx: Support for byte queue limits</title>
<updated>2016-09-24T12:47:15+00:00</updated>
<author>
<name>Sunil Goutham</name>
<email>sgoutham@cavium.com</email>
</author>
<published>2016-09-23T09:12:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=2c204c2b9fca36aa24f7abe2e8bfd83fe3a8db8d'/>
<id>2c204c2b9fca36aa24f7abe2e8bfd83fe3a8db8d</id>
<content type='text'>
This patch adds support for byte queue limits

Signed-off-by: Sunil Goutham &lt;sgoutham@cavium.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch adds support for byte queue limits

Signed-off-by: Sunil Goutham &lt;sgoutham@cavium.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
</feed>
