summaryrefslogtreecommitdiffstats
path: root/drivers/net/benet
Commit message (Collapse)AuthorAgeFilesLines
* be2net: remove BUG_ON() when be2net runs out of mccq wrbsSathya Perla2009-11-231-4/+85
| | | | | | | | | The driver can run out of mccq wrbs when completions don't arrive due to an unresponsive card. This must not hit a BUG_ON(); instead log a msg and return an error. Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Fix cleanup path in be_probe()Sathya Perla2009-11-231-4/+12
| | | | | | | Disabling msix was missing when probe fails after enabling msix. Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Issue fw_init/clean cmds to fwSathya Perla2009-11-233-16/+87
| | | | | | | | | | These cmds are issued to the fw in probe/resume and remove/suspend paths to help fw execute some initialization and cleanup code. This change needed the be_hw_up() code to be refactored as be_get_config(). Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Fix rx_drops_no_fragments stat being incorrectly indexedSathya Perla2009-11-231-1/+2
| | | | | Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: support configuration of 64 multicast addresses instead of 32Sathya Perla2009-11-234-17/+55
| | | | | | | | To send upto 64 addresses in the multicast-set cmd, the non-embeeded cmd format that provides for a bigger buffer is used instead of an embedded format. Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Patch to flash redboot section while firmware update.Sarveshwar Bandi2009-11-204-0/+67
| | | | | | | | Please apply patch to update redboot section while firmware update. Code checks if section needs to be updated before actually doing it. Signed-off-by: Sarveshwar Bandi <sarveshwarb@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* Merge branch 'master' of ↵David S. Miller2009-11-093-14/+24
|\ | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/can/usb/ems_usb.c
| * be2net: Bug fix to send config commands to hardware after netdev_registerAjit Khaparde2009-11-071-12/+12
| | | | | | | | | | | | | | | | | | | | | | Sending config commands to be2 hardware before netdev_register is completed, is sometimes causing the async link notification to arrive even before the driver is ready to handle it. The commands for vlan config and flow control settings can infact wait till be_open. This patch takes care of that. Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * be2net: fix to set proper flow control on resumeAjit Khaparde2009-11-073-4/+14
| | | | | | | | | | | | | | | | | | | | If be2 goes into suspend after a user changes the flow control settings, we are not programming them back after resume. This patch takes care of it. We now get the flow control settings before going to suspend mode and then apply them during resume. Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | Merge branch 'master' of ↵David S. Miller2009-11-061-1/+1
|\| | | | | | | | | | | | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/usb/cdc_ether.c All CDC ethernet devices of type USB_CLASS_COMM need to use '&mbm_info'. Signed-off-by: David S. Miller <davem@davemloft.net>
| * be2net: Fix CQE_STATUS_EXTD_SHIFT defineSathya Perla2009-11-061-1/+1
| | | | | | | | | | Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: Add the new PCI IDs to PCI_DEVICE_TABLE.Ajit Khaparde2009-10-291-0/+2
| | | | | | | | | | | | | | | | This patch adds the PCI IDs for the next generation chip to the PCI_DEVICE_ID table. Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: Changes to update ethtool get_settings function to return ↵Sarveshwar Bandi2009-10-284-6/+117
| | | | | | | | | | | | | | | | | | | | | | | | appropriate values. Update ethtool get_settings function to: - get current link speed settings from controller - get port transceiver type from controller - fill appropriate values for supported, phy_address Signed-off-by: Sarveshwar Bandi <sarveshwarb@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | Merge branch 'master' of ↵David S. Miller2009-10-273-25/+40
|\| | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/sh_eth.c
| * be2net: fix support for PCI hot plugSathya Perla2009-10-152-11/+22
| | | | | | | | | | | | | | | | | | Before issuing any cmds to the FW, the driver must first wait till the fW becomes ready. This is needed for PCI hot plug when the driver can be probed while the card fw is being initialized. Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * be2net: fix promiscuous and multicast promiscuous modes being enabled alwaysSathya Perla2009-10-153-14/+18
| | | | | | | | | | Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: Add support for next generation of BladeEngine device.Ajit Khaparde2009-10-171-2/+13
| | | | | | | | | | | | | | Add new PCI ids to support next generation of BladeEngine device. Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | net: Use netdev_alloc_skb_ip_align()Eric Dumazet2009-10-131-3/+1Star
| | | | | | | | | | Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: Implement ethtool get_phys_id function.Sarveshwar Bandi2009-10-123-0/+126
| | | | | | | | | | Signed-off-by: Sarveshwar Bandi <sarveshwarb@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: Get rid of net_device_stats from adapter.Ajit Khaparde2009-10-073-6/+3Star
| | | | | | | | | | | | | | | | adapter doesnot need to maintain a copy of net_device_stats. Use the one already available in net_device. This patch takes care of the same. Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | Merge branch 'master' of ↵David S. Miller2009-10-074-6/+5Star
|\| | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
| * be2net: Bug fix to properly update ethtool tx-checksumming after ethtool -K ↵Ajit Khaparde2009-10-072-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | <ifname> tx off This is a fix for a bug which was a result of wrong use of checksum offload flag. The status of tx-checksumming was not changed from on to off after a 'ethtool -K <ifname> tx off' operation. Use the proper checksum offload flag NETIF_F_HW_CSUM instead of NETIF_F_IP_CSUM and NETIF_F_IPV6_CSUM. Patch is against net-2.6 tree. Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * be2net: Fix a typo in be_cmds.hAjit Khaparde2009-10-071-1/+1
| | | | | | | | | | | | | | | | MCC_STATUS_NOT_SUPPORTED should be decimal 66 not hex 66. This patch fixes this typo. Patch against net-2.6 tree. Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * be2net: Bug Fix while accounting of multicast frames during netdev stats updateAjit Khaparde2009-10-071-1/+1
| | | | | | | | | | | | | | | | | | While updating the statistics to be passed via the get_stats, tx multicast frames were being accounted instead of rx multicast frames. This patch fixes the bug. This patch is against the net-2.6 tree. Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * be2net: Fix a bug in preparation of mcc wrb which was causing flash ↵Ajit Khaparde2009-10-051-1/+0Star
| | | | | | | | | | | | | | | | | | | | | | operation to fail This patch fixes a bug that got introduced in commit 76998bc7. During preparation of mcc wrb, req was being wrongly overwritten and the flash operation was failing. Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | net: Convert ethtool {get_stats, self_test}_count() ops to get_sset_count()Ben Hutchings2009-10-051-3/+8
|/ | | | | | | | | | | | | These string query operations were supposed to be replaced by the generic get_sset_count() starting in 2007. Convert the remaining implementations. Also remove calls to these operations to initialise drvinfo->n_stats. The ethtool core code already does that. Signed-off-by: Ben Hutchings <bhutchings@solarflare.com> Acked-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Workaround to fix a bug in Rx Completion processing.Ajit Khaparde2009-10-014-6/+24
| | | | | | | | | | vtp bit in RX completion descriptor could be wrongly set in some skews of BladEngine. Ignore this bit if vtm is not set. Resending because the previous patch was against net-next tree. This patch is against the net-2.6 tree. Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: fix some cmds to use mccq instead of mboxSathya Perla2009-09-174-189/+271
| | | | | | | | All cmds issued to BE after the creation of mccq must now use the mcc-q (and not mbox) to avoid a hw issue that results in mbox poll timeout. Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Code changes in Tx path to use skb_dma_map/skb_dma_unmapAjit Khaparde2009-09-071-30/+32
| | | | | | | | | | | Code changes to - In the tx completion processing, there were instances of unmapping a memory as a page which was originally mapped as single. This patch takes care of this by using skb_dma_map()/skb_dma_unmap() to map/unmap Tx buffers. - set gso_max_size to 65535. This was not done till now. Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Changes to support flashing of the be2 network adapterAjit Khaparde2009-09-076-4/+317
| | | | | | | | | | | Changes to support flashing of the be2 network adapter using the request_firmware() & ethtool infrastructure. The trigger to flash the device will come from ethtool utility. The driver will invoke request_firmware() to start the flash process. The file containing the flash image is expected to be available in /lib/firmware/ Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* drivers: Kill now superfluous ->last_rx storesEric Dumazet2009-09-031-2/+0Star
| | | | | | | | | | The generic packet receive code takes care of setting netdev->last_rx when necessary, for the sake of the bonding ARP monitor. Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Acked-by: Neil Horman <nhorman@txudriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* netdev: drivers should make ethtool_ops constStephen Hemminger2009-09-022-2/+2
| | | | | | | No need to put ethtool_ops in data, they should be const. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* netdev: convert bulk of drivers to netdev_tx_tStephen Hemminger2009-09-011-1/+2
| | | | | | | | | | | | In a couple of cases collapse some extra code like: int retval = NETDEV_TX_OK; ... return retval; into return NETDEV_TX_OK; Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: destroy mcc queue before tx queuesSathya Perla2009-08-181-1/+1
| | | | | | | As mcc queue uses the tx event queue. Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: refactor be_msix_(un)register() code.Sathya Perla2009-08-181-21/+37
| | | | | Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Set mac addr in hw regardless of netif_running()Sathya Perla2009-08-181-10/+5Star
| | | | | | | be_mac_addr_set() currently is broken when netif_running() is false. Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net:Creating/destroying queues regardless of netif_running() in ↵Sarveshwar Bandi2009-08-141-2/+2
| | | | | | | suspend/resume path Signed-off-by: sarveshwarb <sarveshwarb@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: clear & notify residual events before destroying event queuesSathya Perla2009-08-131-29/+56
| | | | | | | | Any events rcvd after interrupts are disabled (in the driver unload path), must be cleared and notified before the event queues are destroyed Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: fix bad queue traversal in be_rx_q_clean()Sathya Perla2009-08-131-1/+1
| | | | | | | | Using "for(tail != head)" to traverse a queue from tail to head fails in the case of a fully filled queue. Use "for(used != 0)" instead. Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Clear pending tx completions before destroying tx queueSathya Perla2009-08-131-19/+33
| | | | | | | | | Clear pending tx completions in be_close() (ndo.stop method) so that after unregister_netdev() calls be_close(), all tx skbs are freed and there are no more tx completions when txq is destroyed. Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: Patch to perform function reset at initializationsarveshwarb2009-08-053-0/+27
| | | | | | | | | This patch is a bug fix to avoid system going into a bad state when driver is loaded in context of kdump kernel. The patch fixes the issue by performing a soft reset of pci function at probe time. Signed-off-by: sarveshwarb <sarveshwarb@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: delete unnecessary code from be_cmd_POST()Sathya Perla2009-08-021-41/+4Star
| | | | | | | | When the driver loads the POST stage of the card is expected to be POST_STAGE_ARMFW_RDY. Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: some name changes for consistencySathya Perla2009-08-023-34/+34
| | | | | | | | | be_mbox_db_ring() has been changed to be_mbox_notify() (to be consistent with be_mcc_notify()) and struct be_mcc_cq_entry changed to be_mcc_compl to be consistent with rx/tx_compl. Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: replace some printks with dev_err()/dev_warn()Sathya Perla2009-08-022-28/+15Star
| | | | | | | And get rid of some unnecessary printks. Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: remove pci_func field from be_adapter structSathya Perla2009-08-024-14/+11Star
| | | | | | | | pci function is available as PCI_FUNC(pdev->devfn); no need for a separate field. Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: get rid of be_ctrl_info struct/abstractionSathya Perla2009-08-025-333/+299Star
| | | | | | | | | | Currently only the be_ctrl_info struct ptr (instead of adapter) is passed to all the routines in be_cmds.c. Instead pass be_adapter ptr to allow access to all its fields. Merge the contents of struct be_ctrl_info into be_adapter. The resulting code is simpler. Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* Merge branch 'master' of ↵David S. Miller2009-07-241-4/+4
|\ | | | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/wireless/iwmc3200wifi/netdev.c net/wireless/scan.c
| * be2net: Bug fix in the non-lro path. Size of received packet was not updated ↵Ajit Khaparde2009-07-221-4/+4
| | | | | | | | | | | | | | | | | | | | | | in statistics properly. This patch fixes a bug in the non-lro path. Wrong size of received packet was being passed for updating receive statistics. This patch is against the net-2.6 git. Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: Add GRO support to the be2net driver. LRO is not supported anymore.Ajit Khaparde2009-07-244-94/+31Star
|/ | | | | | | This patch removes support for INET_LRO and switches over to GRO. Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* be2net: fix spurious interrupt handling in intx modeSathya Perla2009-07-042-7/+13
| | | | | | | | | | Occasionally we may see an interrupt without an event in the eq. In intx, we currently see the event queue and return IRQ_NONE causing a the irq to be disabled ("no one cared".) Instead, read the CEV_ISR reg to check the existence of the interrupt. Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>