summaryrefslogtreecommitdiff
path: root/drivers/net/ethernet/emulex
Commit message (Collapse)AuthorAgeFilesLines
* emulex: benet: Add a missing CR in the end of messageMasanari Iida2012-08-031-1/+1
| | | | | | | Missing a CR in printk causes 2 messages printed in one line. Signed-off-by: Masanari Iida <standby24x7@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Fix to parse RSS hash from Receive completions correctly.Sarveshwar Bandi2012-07-261-2/+2
| | | | | | | | Wrong pointer variable is being used to parse the rss hash from receive completions leading to corrupted rss_hash values filled into skb. Signed-off-by: Sarveshwar Bandi <sarveshwar.bandi@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Missing byteswap in be_get_fw_log_level causes oops on PowerPCAnton Blanchard2012-07-252-3/+4
| | | | | | | | | | | | | We are seeing an oops in be_get_fw_log_level on ppc64 where we walk off the end of memory. commit 941a77d582c8 (be2net: Fix to allow get/set of debug levels in the firmware.) requires byteswapping of num_modes and num_modules. Cc: stable@vger.kernel.org # 3.5+ Signed-off-by: Anton Blanchard <anton@samba.org> Acked-by: Sathya Perla <sperla@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Ignore physical link async event for LancerPadmanabh Ratnakar2012-07-182-0/+6
| | | | | | | | The ability of driver to transmit packets depends on logical state of the link. Ignore physical link status. Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Fix VF driver load for LancerPadmanabh Ratnakar2012-07-182-1/+9
| | | | | | | | 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>
* be2net: dont pull too much data in skb linear partEric Dumazet2012-07-161-3/+3
| | | | | | | | | | | | | | 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>
* be2net: update driver versionPadmanabh Ratnakar2012-07-161-1/+1
| | | | | Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Add description about various RSS hash typesPadmanabh Ratnakar2012-07-161-2/+12
| | | | | | | | | | | Incorporated review comment from Eric Dumazet. Added description about different RSS hash types which adapter is capable of. Will add support for ETHTOOL_GRXFH and ETHTOOL_SRXFX as suggested by Ben Hutchings in a later patch. Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com> Acked-by: Eric Dumazet <edumazet@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Enable RSS UDP hashing for Lancer and SkyhawkPadmanabh Ratnakar2012-07-123-0/+12
| | | | | Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Fix port name in message during driver loadPadmanabh Ratnakar2012-07-123-2/+57
| | | | | Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Fix cleanup path when EQ creation failsPadmanabh Ratnakar2012-07-121-2/+3
| | | | | Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Activate new FW after FW download for LancerPadmanabh Ratnakar2012-07-125-78/+180
| | | | | | | | 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>
* be2net: Fix initialization sequence for LancerPadmanabh Ratnakar2012-07-123-68/+87
| | | | | | | | 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>
* be2net : Fix die temperature stat for LancerPadmanabh Ratnakar2012-07-123-7/+8
| | | | | | | | 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>
* be2net: Fix error while toggling autoneg of pause parametersPadmanabh Ratnakar2012-07-121-1/+1
| | | | | | | | | | 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>
* be2net: Fix EndianLi RongQing2012-07-091-1/+1
| | | | | | | | | | | 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>
* be2net: set maximal number of default RSS queuesYuval Mintz2012-07-051-4/+6
| | | | | | | | | | Signed-off-by: Yuval Mintz <yuvalmin@broadcom.com> Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Cc: Sathya Perla <sathya.perla@emulex.com> Cc: Subbu Seetharaman <subbu.seetharaman@emulex.com> Cc: Ajit Khaparde <ajit.khaparde@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Fix to trim skb for padded vlan packets to workaround an ASIC BugSomnath Kotur2012-06-272-14/+47
| | | | | | | | | 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>
* be2net: Regression bug wherein VFs creation broken for multiple cards.Somnath Kotur2012-06-251-1/+2
| | | | | | | 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>
* be2net: Explicitly clear the reserved field in the Tx DescriptorSomnath Kotur2012-06-251-0/+1
| | | | | Signed-off-by: Somnath Kotur <somnath.kotur@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/netDavid S. Miller2012-06-253-8/+8
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: drivers/net/usb/qmi_wwan.c net/batman-adv/translation-table.c net/ipv6/route.c qmi_wwan.c resolution provided by Bjørn Mork. batman-adv conflict is dealing merely with the changes of global function names to have a proper subsystem prefix. ipv6's route.c conflict is merely two side-by-side additions of network namespace methods. Signed-off-by: David S. Miller <davem@davemloft.net>
| * be2net: Increase statistics structure size for skyhawk.Vasundhara Volam2012-06-171-1/+1
| | | | | | | | | | | | | | Increasing the hardware statistics structure to accomodate statistics for skyhawk. Signed-off-by: Vasundhara Volam <vasundhara.volam@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * be2net: Modify error message to incorporate subsystemVasundhara Volam2012-06-171-6/+6
| | | | | | | | | | | | | | Modify IOCTL error message to print subsystem also. Signed-off-by: Vasundhara Volam <vasundhara.volam@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * be2net: reduce gso_max_size setting to account for ethernet header.Sarveshwar Bandi2012-06-171-1/+1
| | | | | | | | | | | | | | | | The maximum size of packet that can be handled by controller including ethernet header is 65535. Reducing gso_max_size accordingly. Signed-off-by: Sarveshwar Bandi <sarveshwar.bandi@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/netDavid S. Miller2012-06-121-2/+3
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: MAINTAINERS drivers/net/wireless/iwlwifi/pcie/trans.c The iwlwifi conflict was resolved by keeping the code added in 'net' that turns off the buggy chip feature. The MAINTAINERS conflict was merely overlapping changes, one change updated all the wireless web site URLs and the other changed some GIT trees to be Johannes's instead of John's. Signed-off-by: David S. Miller <davem@davemloft.net>
| * be2net: fix a race in be_xmit()Eric Dumazet2012-06-081-2/+3
| | | | | | | | | | | | | | | | | | As soon as hardware is notified of a transmit, we no longer can assume skb can be dereferenced, as TX completion might have freed the packet. Signed-off-by: Eric Dumazet <edumazet@google.com> Cc: Sathya Perla <sathya.perla@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: Fix driver load for VFs for LancerPadmanabh Ratnakar2012-06-073-61/+66
| | | | | | | | | | | | | | | | | | 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>
* | be2net: update driver versionSathya Perla2012-06-061-1/+1
| | | | | | | | | | Signed-off-by: Sathya Perla <sathya.perla@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: do not use SCRATCHPAD registerSathya Perla2012-06-062-9/+3
| | | | | | | | | | | | | | | | | | | | | | 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>
* | be2net: remove unnecessary usage of unlikely()Sathya Perla2012-06-061-2/+2
| | | | | | | | | | Signed-off-by: Sathya Perla <sathya.perla@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: fix reporting number of actual rx queuesSathya Perla2012-06-061-1/+7
| | | | | | | | | | Signed-off-by: Sathya Perla <sathya.perla@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: do not modify PCI MaxReadReq sizeSathya Perla2012-06-061-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | be2net: cleanup be_vid_config()Sathya Perla2012-06-061-16/+9
| | | | | | | | | | | | | | | | - 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>
* | be2net: don't call vid_config() when there's no vlan configSathya Perla2012-06-061-1/+2
|/ | | | | | | | 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>
* Merge tag 'rdma-for-3.5' of ↵Linus Torvalds2012-05-218-15/+413
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband Pull InfiniBand/RDMA changes from Roland Dreier: - Add ocrdma hardware driver for Emulex IB-over-Ethernet adapters - Add generic and mlx4 support for "raw" QPs: allow suitably privileged applications to send and receive arbitrary packets directly to/from the hardware - Add "doorbell drop" handling to the cxgb4 driver - A fairly large batch of qib hardware driver changes - A few fixes for lockdep-detected issues - A few other miscellaneous fixes and cleanups Fix up trivial conflict in drivers/net/ethernet/emulex/benet/be.h. * tag 'rdma-for-3.5' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: (53 commits) RDMA/cxgb4: Include vmalloc.h for vmalloc and vfree IB/mlx4: Fix mlx4_ib_add() error flow IB/core: Fix IB_SA_COMP_MASK macro IB/iser: Fix error flow in iser ep connection establishment IB/mlx4: Increase the number of vectors (EQs) available for ULPs RDMA/cxgb4: Add query_qp support RDMA/cxgb4: Remove kfifo usage RDMA/cxgb4: Use vmalloc() for debugfs QP dump RDMA/cxgb4: DB Drop Recovery for RDMA and LLD queues RDMA/cxgb4: Disable interrupts in c4iw_ev_dispatch() RDMA/cxgb4: Add DB Overflow Avoidance RDMA/cxgb4: Add debugfs RDMA memory stats cxgb4: DB Drop Recovery for RDMA and LLD queues cxgb4: Common platform specific changes for DB Drop Recovery cxgb4: Detect DB FULL events and notify RDMA ULD RDMA/cxgb4: Drop peer_abort when no endpoint found RDMA/cxgb4: Always wake up waiters in c4iw_peer_abort_intr() mlx4_core: Change bitmap allocator to work in round-robin fashion RDMA/nes: Don't call event handler if pointer is NULL RDMA/nes: Fix for the ORD value of the connecting peer ...
| * be2net: Add functionality to support RoCE driverParav Pandit2012-05-087-15/+375
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Increase MSI-X vectors by 5 for RoCE traffic. - Add macro to check roce support on a device. - Add device-specific doorbell and MSI-X vector fields shared with NIC functionality. - Provide RoCE driver registration and deregistration functions. - Add support functions which will be invoked on adapter add/remove and port up/down events. - Traverse through the list of adapters to invoke callback functions. Signed-off-by: Parav Pandit <parav.pandit@emulex.com> Acked-by: David S. Miller <davem@davemloft.net> Signed-off-by: Roland Dreier <roland@purestorage.com>
| * be2net: Add function to issue mailbox cmd on MQParav Pandit2012-05-081-0/+39
| | | | | | | | | | | | | | | | | | - Add generic function to issue mailbox cmd on MQ as export function. - RoCE driver will use this before it setups its own MQ. Signed-off-by: Parav Pandit <parav.pandit@emulex.com> Acked-by: David S. Miller <davem@davemloft.net> Signed-off-by: Roland Dreier <roland@purestorage.com>
* | be2net: Fix to allow get/set of debug levels in the firmware.Somnath Kotur2012-05-185-0/+230
| | | | | | | | | | | | | | | | | | | | Patch re-spin. Incorporated review comments by Ben Hutchings. Signed-off-by: Suresh Reddy <suresh.reddy@emulex.com> Signed-off-by: Somnath Kotur <somnath.kotur@emulex.com> Acked-by: Ben Hutchings <bhutchings@solarflare.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: avoid disabling sriov while VFs are assignedSathya Perla2012-05-103-89/+134
| | | | | | | | | | | | | | | | | | | | | | | | Calling pci_disable_sriov() while VFs are assigned to VMs causes kernel panic. This patch uses PCI_DEV_FLAGS_ASSIGNED bit state of the VF's pci_dev to avoid this. Also, the unconditional function reset cmd issued on a PF probe can delete the VF configuration for the previously enabled VFs. A scratchpad register is now used to issue a function reset only when needed (i.e., in a crash dump scenario.) Signed-off-by: Sathya Perla <sathya.perla@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: Fix EEH error reset before a flash dump completesSomnath Kotur2012-05-021-0/+5
| | | | | | | | | | | | | | | | | | | | An EEH error can cause the FW to trigger a flash debug dump. Resetting the card while flash dump is in progress can cause it not to recover. Wait for it to finish before letting EEH flow to reset the card. Signed-off-by: Sathya Perla <Sathya.Perla@emulex.com> Signed-off-by: Somnath Kotur <somnath.kotur@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: Record receive queue index in skb to aid RPS.Somnath Kotur2012-05-021-0/+2
| | | | | | | | | | | | Signed-off-by: Sarveshwar Bandi <Sarveshwar.Bandi@emulex.com> Signed-off-by: Somnath Kotur <somnath.kotur@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: Fix to apply duplex value as unknown when link is down.Somnath Kotur2012-05-021-1/+1
| | | | | | | | | | | | | | Suggested-by: Ben Hutchings <bhutchings@solarflare.com> Signed-off-by: Sarveshwar Bandi <sarveshwar.bandi@emulex.com> Signed-off-by: Somnath Kotur <somnath.kotur@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: Fix to not set link speed for disabled functions of a UMC cardSomnath Kotur2012-05-021-1/+1
| | | | | | | | | | | | | | | | | | This renders the interface view somewhat inconsistent from the Host OS POV considering the rest of the interfaces are showing their respective speeds based on the bandwidth assigned to them. Signed-off-by: Somnath Kotur <somnath.kotur@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: update the driver versionAjit Khaparde2012-04-271-1/+1
| | | | | | | | | | Signed-off-by: Ajit Khaparde <ajit.khaparde@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: fix speed displayed by ethtool on certain SKUsAjit Khaparde2012-04-271-1/+1
| | | | | | | | | | | | | | logical speed returned by link_status_query needs to be multiplied by 10. Signed-off-by: Ajit Khaparde <ajit.khaparde@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: Ignore status of some ioctls during driver loadAjit Khaparde2012-04-271-13/+4
| | | | | | | | | | Signed-off-by: Ajit Khaparde <ajit.khaparde@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: Fix FW download for BEPadmanabh Ratnakar2012-04-263-78/+166
| | | | | | | | | | | | | | | | | | Skip flashing a FW component if that component is not present in a particular FW UFI image. Signed-off-by: Somnath Kotur <somnath.kotur@emulex.com> Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: Fix wrong status getting returned for MCC commandsPadmanabh Ratnakar2012-04-263-27/+67
| | | | | | | | | | | | | | | | | | | | | | MCC Response CQEs are processed as part of NAPI poll routine and also synchronously. If MCC completions are consumed by NAPI poll routine, wrong status is returned to synchronously waiting routine. Fix this by getting status of MCC command from command response instead of response CQEs. Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: Fix Lancer statisticsPadmanabh Ratnakar2012-04-262-1/+6
| | | | | | | | | | | | | | | | Fix port num sent in command to get stats. Also skip unnecessary parsing of stats for Lancer. Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: Fix traffic stall INTx modePadmanabh Ratnakar2012-04-261-1/+3
| | | | | | | | | | | | | | | | | | | | | | EQ is getting armed wrongly in INTx mode as INTx interrupt is taking some time to deassert. This can cause another interrupt while NAPI is scheduled and scheduling a NAPI in interrupt does not take effect. This causes interrupt to be missed and traffic stalls. Fixing this by preventing wrong arming of EQ. Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>