summaryrefslogtreecommitdiffstats
path: root/drivers/net/benet/be.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
* be2net: Move the Emulex driverJeff Kirsher2011-08-111-529/+0
| | | | | | | | | | Moves the Emulex driver into drivers/net/ethernet/emulex/ and make the necessary Kconfig and Makefile changes. CC: Sathya Perla <sathya.perla@emulex.com> CC: Subbu Seetharaman <subbu.seetharaman@emulex.com> CC: Ajit Khaparde <ajit.khaparde@emulex.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
* be2net: drop pkts that do not belong to the portSathya Perla2011-08-031-1/+1
| | | | | | | | | On some BE skews, while in promiscuous mode, pkts that do not belong to a port can arrive on that port. Drop such pkts. Signed-off-by: Somnath Kotur <somnath.kotur@emulex.com> Signed-off-by: Sathya Perla <sathya.perla@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: use RX_FILTER cmd to program multicast addressesSathya Perla2011-08-031-1/+3
| | | | | | | | Use this cmd for both promiscous and multicast address programming. Get rid of the old MULTICAST_SET cmd. Signed-off-by: Sathya Perla <sathya.perla@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: no need to query link statusSathya Perla2011-08-031-1/+1
| | | | | | | | | Change in the link status generates an MCC event. This is processed and netif_carrier_on/off is called accordingly. Don't need to query/store the link_status state. Signed-off-by: Sathya Perla <sathya.perla@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: use stats-sync to read/write 64-bit statsSathya Perla2011-08-011-1/+4
| | | | | | | | | | | | | | | | | | | | 64-bit stats in be2net are written/read as follows using the stats-sync interface for safe access in 32-bit archs: 64-bit sync writer reader stats ------------------------------------------------------------------------------ tx_stats tx_stats->sync be_xmit be_get_stats64, ethtool tx-compl tx_stats->sync_compl tx-compl-processing ethtool rx-stats rx_stats->sync rx-compl-processing be_get_stats64, ethtool, eqd-update This patch is based on Stephen Hemminger's earlier patch on the same issue... Signed-off-by: Sathya Perla <sathya.perla@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: cleanup and refactor stats codeSathya Perla2011-08-011-59/+51
| | | | | | | | | | | | | In preparation for 64-bit stats interface, the following cleanups help streamline the code: 1) made some more rx/tx stats stored by driver 64 bit 2) made some HW stas (err/drop counters) stored in be_drv_stats 32 bit to keep the code simple as BE provides 32-bit counters only. 3) removed duplication of netdev stats in ethtool 4) removed some un-necessary stats and fixed some names Signed-off-by: Sathya Perla <sathya.perla@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: move to new vlan modelAjit Khaparde2011-07-131-1/+0
| | | | | Signed-off-by: Ajit Khaparde <ajit.khaparde@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: account for skb allocation failuresEric Dumazet2011-07-131-0/+1
| | | | | | | | If we cannot allocate new skbs in RX completion handler, we should increase netdevice rx_dropped counter, not spam console messages. Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* net: Remove unneeded version.h includes from drivers/net/Jesper Juhl2011-06-241-1/+0
| | | | | | | | | It was pointed out by 'make versioncheck' that some includes of linux/version.h are not needed in drivers/net/. This patch removes them. Signed-off-by: Jesper Juhl <jj@chaosbits.net> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: support multiple TX queuesSathya Perla2011-06-171-4/+9
| | | | | | | This patch provides support for multiple TX queues. Signed-off-by: Sathya Perla <sathya.perla@emulex.com> Signed-off-by: David S. Miller <davem@conan.davemloft.net>
* be2net: Enable SR-IOV for LancerMammatha Edhala2011-05-181-1/+4
| | | | | | | | Enable SR-IOV for Lancer Signed-off-by: Mammatha Edhala <mammatha.edhala@emulex.com> Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Stats for LancerSelvin Xavier2011-05-161-37/+37
| | | | | | | | Added Lancer stats implementation. Signed-off-by: Selvin Xavier <selvin.xavier@emulex.com> Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Support for version 1 of stats for BE3Ajit Khaparde2011-05-161-0/+38
| | | | | | | | | | Added support to get version 1 of the stats for BE3. Use old stats command for BE2. Signed-off-by: Ajit Khaparde <ajit.khaparde@emulex.com> Signed-off-by: Selvin Xavier <selvin.xavier@emulex.com> Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* Merge branch 'master' of ↵David S. Miller2011-05-111-1/+1
|\ | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/davem/net-3.6 Conflicts: drivers/net/benet/be_main.c
| * be2net: Fixed bugs related to PVID.Somnath Kotur2011-05-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Fixed bug to make sure 'pvid' retrieval will work on big endian hosts. Fixed incorrect comparison between the Rx Completion's 16-bit VLAN TCI and the PVID. Now comparing only the relevant 12 bits corresponding to the VID. Renamed 'vid' field under Rx Completion to 'vlan_tag' to reflect accurate description. Signed-off-by: Somnath Kotur <somnath.kotur@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | net: benet: convert to hw_featuresMichał Mirosław2011-04-081-1/+0
| | | | | | | | | | | | | | | | | | | | Simple conversion. This also fixes a bug in TX checksum toggling --- driver was changing NETIF_F_HW_CSUM instead of NETIF_F_IP_CSUM+NETIF_F_IPV6_CSUM. Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: dynamically allocate adapter->vf_cfgAjit Khaparde2011-04-081-3/+1
| | | | | | | | | | | | | | | | Instead of a fixed sized array for vf_cfg, allocate the size dynamically depending on number of VFs the device supports. Signed-off-by: Ajit Khaparde <ajit.khaparde@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: use common method to check for sriov function typeAjit Khaparde2011-04-081-10/+2
| | | | | | | | | | | | | | Lancer and BE can both use SLI_INTF_REG to check a VF or a PF. Signed-off-by: Ajit Khaparde <ajit.khaparde@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: add rxhash supportAjit Khaparde2011-04-081-0/+5
| | | | | | | | | | | | | | | | | | Add rxhash support, Based on initial work by Eric Dumazet. Cc: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: Ajit Khaparde <ajit.khaparde@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | Merge branch 'master' of ↵David S. Miller2011-04-071-2/+2
|\| | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/benet/be_main.c
| * be2net: Rename some struct members for clarityPadmanabh Ratnakar2011-04-061-2/+2
| | | | | | | | | | | | | | | | | | | | Renamed msix_vec_idx to eq_idx in be_eq_obj struct. Renamed msix_vec_next_idx to eq_next_idx in be_adapter structure. These members are used in INTX mode also. Signed-off-by: Sarveswara Rao Mygapula <sarveswararao.mygapula@emulex.com> Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | benet: convert to set_phys_idstephen hemminger2011-04-061-0/+1
| | | | | | | | | | Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: refactor code that decides adapter->num_rx_queuesSathya Perla2011-03-311-3/+5
|/ | | | | | | | | The code has been refactored to not set num_rx_qs inside be_enable_msix(). num_rx_qs is now set at the time of queue creation based on the number of available msix vectors. Signed-off-by: Sathya Perla <sathya.perla@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Bump up the version numberAjit Khaparde2011-03-161-1/+1
| | | | | Signed-off-by: Ajit Khaparde <ajit.khaparde@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Copyright notice change. Update to Emulex instead of ServerEnginesAjit Khaparde2011-03-161-5/+5
| | | | | Signed-off-by: Ajit Khaparde <ajit.khaparde@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: changes for BE3 native mode supportSathya Perla2011-03-141-1/+22
| | | | | | | | | So far be2net has been using BE3 in legacy mode. It now checks for native mode capability and if available it sets it. In native mode, the RX_COMPL structure is different from that in legacy mode. Signed-off-by: Sathya Perla <sathya.perla@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Remove ERR compl workaround for LancerPadmanabh Ratnakar2011-03-081-3/+1
| | | | | | | | | | Workaround added for Lancer in handling RX ERR completion received when no RX buffers are posted is not needed. Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com> Signed-off-by: Sathya Perla <sathya.perla@emulex.com> Signed-off-by: Subramanian Seetharaman <subbu.seetharaman@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: use hba_port_num instead of port_numAjit Khaparde2011-02-221-0/+1
| | | | | | | | Use hba_port_num for phy loopback and ethtool phy identification. From: Suresh R <suresh.reddy@emulex.com> Signed-off-by: Ajit Khaparde <ajit.khaparde@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: add code to display temperature of ASICAjit Khaparde2011-02-221-0/+7
| | | | | | | | Add support to display temperature of ASIC via ethtool -S From: Somnath K <somnath.kotur@emulex.com> Signed-off-by: Ajit Khaparde <ajit.khaparde@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: fix to ignore transparent vlan ids wrongly indicated by NICAjit Khaparde2011-02-221-0/+1
| | | | | | | | | With transparent VLAN tagging, the ASIC wrongly indicates packets with VLAN ID. Strip them off in the driver. The VLAN Tag to be stripped will be given to the host as an async message. Signed-off-by: Ajit Khaparde <ajit.khaparde@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: variable name changeAjit Khaparde2011-02-221-1/+1
| | | | | | | change occurances of stats_ioctl_sent to stats_cmd_sent Signed-off-by: Ajit Khaparde <ajit.khaparde@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: For the VF MAC, use the OUI from current MAC addressAjit Khaparde2011-02-121-3/+2
| | | | | | | | Currently we are always using the Emulex OUI for a VF MAC address while generating MAC for a VF. Use OUI from current MAC instead. Signed-off-by: Ajit Khaparde <ajit.khaparde@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* Merge branch 'master' of ↵David S. Miller2010-12-171-1/+1
|\ | | | | | | | | | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/bnx2x/bnx2x.h drivers/net/wireless/iwlwifi/iwl-1000.c drivers/net/wireless/iwlwifi/iwl-6000.c drivers/net/wireless/iwlwifi/iwl-core.h drivers/vhost/vhost.c
| * be2net: use mutex instead of spin lock for mbox_lockIvan Vecera2010-12-161-1/+1
| | | | | | | | | | | | | | | | | | | | Since the mbox polling uses the schedule_timeout, the mbox_lock should be a mutex and not a spin lock. The commit f25b03a replaced udelay() with schedule_timeout() but didn't change mbox_lock to semaphore or mutex. Signed-off-by: Ivan Vecera <ivecera@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: Handle out of buffer completions for lancerSathya Perla2010-12-061-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | If Lancer chip does not have posted RX buffers, it posts an RX completion entry with the same frag_index as the last valid completion. The Error bit is also set. In BE, a flush completion is indicated with a zero value for num_rcvd in the completion. Such completions don't carry any data and are not processed. This patch refactors code to handle both cases with the same code. Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com> Signed-off-by: Sathya Perla <sathya.perla@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: adding support for Lancer family of CNAsSathya Perla2010-11-281-9/+26
|/ | | | | | | | | | | | | | | | | Key changes are: - EQ ids are not assigned consecutively in Lancer. So, fix mapping of MSIx vector to EQ-id. - BAR mapping and some req locations different for Lancer. - TCP,UDP,IP checksum fields must be compulsorily set in TX wrb for TSO in Lancer. - CEV_IST reg not present in Lancer; so, peek into event queue to check for new entries - cq_create and mcc_create cmd interface is different for Lancer; handle accordingly Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar@emulex.com> Signed-off-by: Sathya Perla <sathya.perla@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Changes to use only priority codes allowed by f/wSomnath Kotur2010-10-211-0/+2
| | | | | | | | | | Changes to use one of the priority codes allowed by CNA f/w for NIC traffic from host. The driver gets the bit map of the priority codes allowed for host traffic through a asynchronous message from the f/w that the driver subscribes to. Signed-off-by: Somnath Kotur <somnath.kotur@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* vlan: Rename VLAN_GROUP_ARRAY_LEN to VLAN_N_VID.Jesse Gross2010-10-211-1/+1
| | | | | | | | | | VLAN_GROUP_ARRAY_LEN is simply the number of possible vlan VIDs. Since vlan groups will soon be more of an implementation detail for vlan devices, rename the constant to be descriptive of its actual purpose. Signed-off-by: Jesse Gross <jesse@nicira.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: add multiple RX queue supportSathya Perla2010-10-041-38/+44
| | | | | | | | | This patch adds multiple RX queue support to be2net. There are upto 4 extra rx-queues per port into which TCP/UDP traffic can be hashed into. Some of the ethtool stats are now displayed on a per queue basis. Signed-off-by: Sathya Perla <sathya.perla@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* Merge branch 'master' of ↵David S. Miller2010-09-101-0/+1
|\ | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: net/mac80211/main.c
| * be2net: fix net-snmp error because of wrong packet statsAjit Khaparde2010-09-031-0/+1
| | | | | | | | | | | | | | | | | | Wrong packet statistics for multicast Rx was causing net-snmp error messages every 15 seconds. Instead of picking the multicast stats from hardware, now maintain it in the driver itself. Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: fix to dynamically generate MAC Address for VFsAjit Khaparde2010-08-261-0/+14
|/ | | | | | | | | | | | The BE ASIC/firmware doesnot reserve and assign MAC address for VFs. This results in the VF interfaces being created with MAC Address 0. The code change proposed takes the MAC address of PF to generate a seed. MAC Address for VFs are assigned incrementally starting from the seed. These addresses are programmed in the ASIC by the PF and the VF driver queries for the MAC address during its probe. Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: fix to avoid sending get_stats request if one is already being ↵Ajit Khaparde2010-07-311-0/+1
| | | | | | | | | | | | | processed. GET_STATS request uses the same memory region as the response. If a new request for get stats is fired before the response for the previous get_stats request is received, the response will corrupt the new request, causing the f/w to misbehave. Signed-off-by: Somnath K <somnathk@serverengines.com> Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: add code to dump registers for debugAjit Khaparde2010-07-311-0/+1
| | | | | | | | when the BE device becomes unresponsive, dump the registers to help debugging Signed-off-by: Somnath K <somnathk@serverengines.com> Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: bump the driver version numberAjit Khaparde2010-07-231-1/+1
| | | | | Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: variable name changesAjit Khaparde2010-07-231-1/+1
| | | | | | | This patch changes names of some variables. Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: code to support tx rate configuration on virtual functionsAjit Khaparde2010-07-231-0/+1
| | | | | Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: add vlan support for sriov virtual functionsAjit Khaparde2010-07-231-0/+1
| | | | | Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: add support to get vf configAjit Khaparde2010-07-231-2/+7
| | | | | Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: change to call pmac_del only if necessaryAjit Khaparde2010-07-231-0/+1
| | | | | | | | If a mac address has not been configured for a VF, there is no need to call be_cmd_pmac_del. Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>