UBUNTU: Start new release

Ignore: yes
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
UBUNTU: Bump ABI

Ignore: yes
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
be2net: don't call vid_config() when there's no vlan config

BugLink: https://launchpad.net/bugs/1083088

be_vid_config() is called from be_setup() to replay config cmds after
a card reset. Skip calling it when no vlans are configured.

Signed-off-by: Sathya Perla <sathya.perla@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 1d1e9a467c7a478d24a1af39e467a414a8363661)

Signed-off-by: Wen-chien Jesse Sung <jesse.sung@canonical.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
be2net: cleanup be_vid_config()

BugLink: https://launchpad.net/bugs/1083088

- get rid of 2 unused arguments to the routine and some unused code
- don't use the term "vlan_tag" in place of "vid" as they are different

Signed-off-by: Sathya Perla <sathya.perla@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 10329df8f9b90e27ef63d89f9d58fed8d466f943)

Signed-off-by: Wen-chien Jesse Sung <jesse.sung@canonical.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
be2net: do not modify PCI MaxReadReq size

BugLink: https://launchpad.net/bugs/1083088

Setting the PCI MRRS to a value of 4096 (overriding the system decided
value) had provided perf improvement in TX.
But, IBM has provided feedback that on POWER platforms, this value is set
by the system firmware, and drivers modifying this value can cause
unpredictable results (like EEH errors.) So, backing off this change.
On POWER7 platforms most slots, it seems, do get a MRRS of 4096.

This patch reverts the following commit:
"be2net: Modified PCI MaxReadReq size to 4096 bytes"
commit 5a56eb10babbcd7b3796dc3c28c271260aa3608d.

Suggested-by: Brian King <bjking1@us.ibm.com>
Signed-off-by: Sathya Perla <sathya.perla@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 0513ac3d2212072c6694430b1003ad4246a35466)

Signed-off-by: Wen-chien Jesse Sung <jesse.sung@canonical.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
be2net: fix reporting number of actual rx queues

BugLink: https://launchpad.net/bugs/1083088

Signed-off-by: Sathya Perla <sathya.perla@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 7f6400626631454f5b535eb92c09a35390777a52)

Signed-off-by: Wen-chien Jesse Sung <jesse.sung@canonical.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
be2net: do not use SCRATCHPAD register

BugLink: https://launchpad.net/bugs/1083088

The CUST_SCRATCHPAD_CSR register is used for marking if FW cleanup is
needed. This is used in a crash kernel scenario. Do no use this register as
it is not available for some functions. Instead, always issue an FLR when
a function is probed *except* when VFs are preset (enabled in the previous
PF load).

Signed-off-by: Sathya Perla <sathya.perla@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit d79c0a207aa3be002e1d9473ea98cc4f838e5a8b)

Signed-off-by: Wen-chien Jesse Sung <jesse.sung@canonical.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
be2net: Fix driver load for VFs for Lancer

BugLink: https://launchpad.net/bugs/1083088

Permanent MAC is wrongly supplied in create iface command. Call the
command with no MAC address and then MAC address should be later queried
and applied.

Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 1578e7778fa04eb7e32da561effee6cd38139b0f)

Signed-off-by: Wen-chien Jesse Sung <jesse.sung@canonical.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
be2net: Explicitly clear the reserved field in the Tx Descriptor

BugLink: https://launchpad.net/bugs/1083088

Signed-off-by: Somnath Kotur <somnath.kotur@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 89b1f496d2b659eaaac5a8d80b801661ab03854f)

Signed-off-by: Wen-chien Jesse Sung <jesse.sung@canonical.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
be2net: Regression bug wherein VFs creation broken for multiple cards.

BugLink: https://launchpad.net/bugs/1083088

Fix be_find_vfs() to check for matching bus number as well along with devfn

Signed-off-by: Somnath Kotur <somnath.kotur@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 7665de15642dfb1709177517aa0488162727342c)

Signed-off-by: Wen-chien Jesse Sung <jesse.sung@canonical.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
be2net: Fix to trim skb for padded vlan packets to workaround an ASIC Bug

BugLink: https://launchpad.net/bugs/1083088

Fixed spelling error in a comment as pointed out by DaveM.
Also refactored existing code a bit to provide placeholders for another ASIC
Bug workaround that will be checked-in soon after this.

Signed-off-by: Somnath Kotur <somnath.kotur@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(backported from commit 93040ae5cc8dcc893eca4a4366dc8415af278edf)

Conflicts:
	drivers/net/ethernet/emulex/benet/be_main.c

Signed-off-by: Wen-chien Jesse Sung <jesse.sung@canonical.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
be2net: Fix Endian

BugLink: https://launchpad.net/bugs/1083088

ETH_P_IP is host Endian, skb->protocol is big Endian, when
compare them, we should change ETH_P_IP from host endian
to big endian, htons, not ntohs.

CC: Somnath Kotur <somnath.kotur@emulex.com>
Signed-off-by: Li RongQing <roy.qing.li@gmail.com>
Acked-by: Somnath Kotur <somnath.kotur@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit e8efcec5394cbf7ae67ccb137cb1a45ae3e6f6c8)

Signed-off-by: Wen-chien Jesse Sung <jesse.sung@canonical.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
be2net: Fix error while toggling autoneg of pause parameters

BugLink: https://launchpad.net/bugs/1083088

Autonegotiation of pause parameters is possible only on some PHYs.
Ability of autoneg of pause parameters is reported by adapter.
Autoneg of pause parameters cannot be changed from driver.
Fix driver to give error when autoneg mode is toggled by user.

Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit c871c5f29315aaf27acf6ceed7a69f9069049639)

Signed-off-by: Wen-chien Jesse Sung <jesse.sung@canonical.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
be2net : Fix die temperature stat for Lancer

BugLink: https://launchpad.net/bugs/1083088

Query die temperature stat for Lancer to report it correctly
in ethtool.

Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 7aeb21564332bcf0dacc198e4f795e8e5e347126)

Signed-off-by: Wen-chien Jesse Sung <jesse.sung@canonical.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
be2net: Fix initialization sequence for Lancer

BugLink: https://launchpad.net/bugs/1083088

Invoke only required initialization routines for Lancer.
Remove invocation of unnecessary routines.

Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit bf99e50dc2ec49fc1256f9499987699a3f7f158b)

Signed-off-by: Wen-chien Jesse Sung <jesse.sung@canonical.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
be2net: Activate new FW after FW download for Lancer

BugLink: https://launchpad.net/bugs/1083088

After FW download, activate new FW by invoking FW reset.
Recreate rings once new FW is operational.

Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit f67ef7bae8dd025086fdf8186958865bceb44595)

Signed-off-by: Wen-chien Jesse Sung <jesse.sung@canonical.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
be2net: Fix cleanup path when EQ creation fails

BugLink: https://launchpad.net/bugs/1083088

Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 19d59aa762f803d8663a2cdfb3f0c620f8e9512f)

Signed-off-by: Wen-chien Jesse Sung <jesse.sung@canonical.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
be2net: Enable RSS UDP hashing for Lancer and Skyhawk

BugLink: https://launchpad.net/bugs/1083088

Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit d3bd3a5eeb087bf6a06e9bdfc589096608f933a0)

Signed-off-by: Wen-chien Jesse Sung <jesse.sung@canonical.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
be2net: dont pull too much data in skb linear part

BugLink: https://launchpad.net/bugs/1083088

skb_fill_rx_data() pulls 64 byte of data in skb->data

Its too much for TCP (with no options) on IPv4, as total size of headers
is 14 + 40 = 54

This means tcp stack and splice() are suboptimal, since tcp payload
is in part in tcp->data, and in part in skb frag.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Acked-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit ac1ae5f33fd225f46da0072e2091962410a0431b)

Signed-off-by: Wen-chien Jesse Sung <jesse.sung@canonical.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
be2net: Fix VF driver load for Lancer

BugLink: https://launchpad.net/bugs/1083088

Lancer FW has added new capability checks for VFs.
Driver should only use those capabilities which are allowed for VFs.

Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 0b13fb458fe6d244baaa701049c9a51105224820)

Signed-off-by: Wen-chien Jesse Sung <jesse.sung@canonical.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>