aboutsummaryrefslogtreecommitdiff
path: root/drivers/net
AgeCommit message (Collapse)Author
2011-08-20Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/netDavid S. Miller
2011-08-20tg3: Update version to 3.120Matt Carlson
This patch updates the tg3 version to 3.120. Signed-off-by: Matt Carlson <mcarlson@broadcom.com> Reviewed-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-20tg3: Add external loopback support to selftestMatt Carlson
This patch adds external loopback support to tg3's ethtool selftest. Signed-off-by: Matt Carlson <mcarlson@broadcom.com> Reviewed-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-20tg3: Restructure tg3_test_loopbackMatt Carlson
The tg3_test_loopback() function is starting to get more complicated as more loopback tests are added. This patch cleans up the code. Signed-off-by: Matt Carlson <mcarlson@broadcom.com> Reviewed-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-20tg3: Pull phy int lpbk setup into separate funcMatt Carlson
This patch pulls out the internal phy loopback setup code into a separate function. This cleans up the loopback test code and makes it available for NETIF_F_LOOPBACK support later. Signed-off-by: Matt Carlson <mcarlson@broadcom.com> Reviewed-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-20tg3: Consilidate MAC loopback codeMatt Carlson
The driver puts the device into MAC loopback in two places in the driver. This patch consolidates the code into a single routine. Signed-off-by: Matt Carlson <mcarlson@broadcom.com> Reviewed-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-20tg3: Remove dead codeMatt Carlson
Now that CPMU devices don't do MAC loopback, all the CPMU power saving mode adjustments are unneeded. This patch removes the dead code. Signed-off-by: Matt Carlson <mcarlson@broadcom.com> Reviewed-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-18be2net: Storing the 'vid' got by the grp5 event instead of storing the vlan_tagSomnath Kotur
Signed-off-by: Somnath Kotur <somnath.kotur@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-18bnx2x: downgrade Max BW error message to debugMichal Schmidt
There are valid configurations where Max BW is configured to zero for some VNs. Print the message only if debugging is enabled and do not call the configuration "illegal". [v2: use DP(), not BNX2X_DBG_ERR(); recommended by Eilon Greenstein.] Signed-off-by: Michal Schmidt <mschmidt@redhat.com> Acked-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-18net: fix IBM EMAC driver after rename.Tony Breeds
In commit 9aa3283595451ca093500ff0977b106e1f465586 (ehea/ibm*: Move the IBM drivers) the IBM_NEW_EMAC* were renames to IBM_EMAC* The conversion was incomplete so that even if the driver was added to the .config it wasn't built, but there were no errors). In this commit we also update the various defconfigs that use EMAC to use the new Kconfig symbol, and explicitly add the NET_VENDOR_IBM guard. We do not explicitly select the Kconfig dependencies, as this would force EMAC on. Doing it in the defconfig allows more flexibility. Tested on a canyondlands board. Signed-off-by: Tony Breeds <tony@bakeyournoodle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-18NET: Korina: Don't include <asm/segment.h>Ralf Baechle
Korina.c is a MIPS-specific SOC driver and <asm/segment> is empty on MIPS since 2.1.7 ... Signed-off-by: Ralf Baechle <ralf@linux-mips.org> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-17forcedeth: call vlan_mode only if hw supports vlansJiri Pirko
If hw does not support vlans, dont call nv_vlan_mode because it has no point. I believe that this should fix issues on older non-vlan supportive chips (like Ingo has). Reported-ty: Ingo Molnar <mingo@elte.hu> Signed-off-by: Jiri Pirko <jpirko@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-17flexcan: Prefer device tree clock frequency if available.holt@sgi.com
If our CAN device's device tree node has a clock-frequency property, then use that value for the can devices clock frequency. If not, fall back to asking the platform/mach code for the clock frequency associated with the flexcan device. Signed-off-by: Robin Holt <holt@sgi.com> Acked-by: Wolfgang Grandegger <wg@grandegger.com>, Cc: Kumar Gala <galak@kernel.crashing.org> Cc: Marc Kleine-Budde <mkl@pengutronix.de>, Cc: U Bhaskar-B22300 <B22300@freescale.com> Cc: Scott Wood <scottwood@freescale.com> Cc: Grant Likely <grant.likely@secretlab.ca> Cc: socketcan-core@lists.berlios.de, Cc: netdev@vger.kernel.org, Cc: PPC list <linuxppc-dev@lists.ozlabs.org> Cc: devicetree-discuss@lists.ozlabs.org Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-17flexcan: Add of_match to platform_device definition.holt@sgi.com
On powerpc, the OpenFirmware devices are not matched without specifying an of_match array. Introduce that array as that is used for matching on the Freescale P1010 processor. Signed-off-by: Robin Holt <holt@sgi.com> Acked-by: Marc Kleine-Budde <mkl@pengutronix.de> Acked-by: Wolfgang Grandegger <wg@grandegger.com> Cc: U Bhaskar-B22300 <B22300@freescale.com> Cc: Grant Likely <grant.likely@secretlab.ca> Cc: socketcan-core@lists.berlios.de Cc: netdev@vger.kernel.org Cc: PPC list <linuxppc-dev@lists.ozlabs.org> Cc: devicetree-discuss@lists.ozlabs.org Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-17flexcan: Abstract off read/write for big/little endian.holt@sgi.com
Make flexcan driver handle register reads in the appropriate endianess. This was a basic search and replace and then define some inlines. Signed-off-by: Robin Holt <holt@sgi.com> Acked-by: Marc Kleine-Budde <mkl@pengutronix.de> Acked-by: Wolfgang Grandegger <wg@grandegger.com> Cc: U Bhaskar-B22300 <B22300@freescale.com> Cc: socketcan-core@lists.berlios.de Cc: netdev@vger.kernel.org Cc: PPC list <linuxppc-dev@lists.ozlabs.org> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-17flexcan: Remove #include <mach/clock.h>holt@sgi.com
powerpc does not have a mach-####/clock.h. When testing, I found neither arm nor powerpc needed the mach/clock.h at all so I removed it. Signed-off-by: Robin Holt <holt@sgi.com> Acked-by: Marc Kleine-Budde <mkl@pengutronix.de> Acked-by: Wolfgang Grandegger <wg@grandegger.com> Cc: U Bhaskar-B22300 <B22300@freescale.com> Cc: socketcan-core@lists.berlios.de Cc: netdev@vger.kernel.org Cc: PPC list <linuxppc-dev@lists.ozlabs.org> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-17net: remove use of ndo_set_multicast_list in driversJiri Pirko
replace it by ndo_set_rx_mode Signed-off-by: Jiri Pirko <jpirko@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-17net: introduce IFF_UNICAST_FLT private flagJiri Pirko
Use IFF_UNICAST_FTL to find out if driver handles unicast address filtering. In case it does not, promisc mode is entered. Patch also fixes following drivers: stmmac, niu: support uc filtering and yet it propagated ndo_set_multicast_list bna, benet, pxa168_eth, ks8851, ks8851_mll, ksz884x : has set ndo_set_rx_mode but do not support uc filtering Signed-off-by: Jiri Pirko <jpirko@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-17bonding: use ndo_change_rx_flags callbackJiri Pirko
Benefit from use of ndo_change_rx_flags in handling change of promisc and allmulti. No need to store previous state locally. Signed-off-by: Jiri Pirko <jpirko@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-17Merge branch 'can/mscan' of git://git.pengutronix.de/git/mkl/linux-2.6David S. Miller
2011-08-17via-velocity: remove non-tagged packet filteringJiri Pirko
It's undesired to filter untagged packets at any time. So simply remove this. Reported-by: Stephan Bärwolf <stephan.baerwolf@tu-ilmenau.de> Tested-by: Stephan Bärwolf <stephan.baerwolf@tu-ilmenau.de> Signed-off-by: Jiri Pirko <jpirko@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-17bonding:reset backup and inactive flag of slavePeter Pan(潘卫平)
Eduard Sinelnikov (eduard.sinelnikov@gmail.com) found that if we change bonding mode from active backup to round robin, some slaves are still keeping "backup", and won't transmit packets. As Jay Vosburgh(fubar@us.ibm.com) pointed out that we can work around that by removing the bond_is_active_slave() check, because the "backup" flag is only meaningful for active backup mode. But if we just simply ignore the bond_is_active_slave() check, the transmission will work fine, but we can't maintain the correct value of "backup" flag for each slaves, though it is meaningless for other mode than active backup. I'd like to reset "backup" and "inactive" flag in bond_open, thus we can keep the correct value of them. As for bond_is_active_slave(), I'd like to prepare another patch to handle it. V2: Use C style comment. Move read_lock(&bond->curr_slave_lock). Replace restore with reset, for active backup mode, it means "restore", but for other modes, it means "reset". Signed-off-by: Weiping Pan <panweiping3@gmail.com> Reviewed-by: WANG Cong <xiyou.wangcong@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-17bnx2x: Use pr_fmt and message logging cleanupsJoe Perches
Add pr_fmt(fmt) KBUILD_MODNAME ": " to prefix messages with "bnx2x: ". Remove #define DP_LEVEL and use pr_notice. Repeating KERN_<LEVEL> isn't necessary in multi-line printks. printk macro neatening, use fmt and ##__VA_ARGS__. Coalesce long formats. Signed-off-by: Joe Perches <joe@perches.com> Acked-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-17bnx2x: Coalesce pr_cont uses and fix DP typosJoe Perches
Uses of pr_cont should be avoided where reasonably possible because they can be interleaved by other threads and processes. Coalesce pr_cont uses. Fix typos, duplicated words and spacing in DP uses caused by split multi-line formats. Coalesce some of these split formats. Add missing terminating newlines to DP uses. Signed-off-by: Joe Perches <joe@perches.com> Acked-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-17bnx2x: Remove local defines for %pM and mac addressJoe Perches
Use %pM and mac address directly instead. Signed-off-by: Joe Perches <joe@perches.com> Acked-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-16net: Fix sungem_phy sharing.David S. Miller
Since sungem_phy is used by multiple, unrelated, drivers make it build as a real module under drivers/net. depmod will pick up the symbol dependency and make sure sungem_phy.ko gets loaded any time sungem.ko or spider_net.ko is loaded. Tested-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-15sungem: sungem_phy.h movedStephen Rothwell
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-15net/can/mscan: add __iomem annotationsMarc Kleine-Budde
This patch fixes the following sparse warning by adding the missing __iomem annotation. drivers/net/can/mscan/mscan.c:73:32: warning: incorrect type in argument 1 (different address spaces) drivers/net/can/mscan/mscan.c:73:32: expected unsigned char volatile [noderef] [usertype] <asn:2>*addr drivers/net/can/mscan/mscan.c:73:32: got unsigned char *<noident> Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2011-08-14net: Move sungem_phy.h under include/linuxDavid S. Miller
Fixes build failures of the spider_net driver because it tries to use a convoluted path to include this header. Reported-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-13gianfar: reduce stack usage in gianfar_ethtool.cWang Shaoyan
drivers/net/gianfar_ethtool.c:765: warning: the frame size of 2048 bytes is larger than 1024 bytes Signed-off-by: Wang Shaoyan <wangshaoyan.pt@taobao.com> Reviewed-and-tested-by: Sebastian Pöhn <sebastian.poehn@belden.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-13gianfar: prevent buggy hw rx vlan taggingJiri Pirko
On some buggy chips, "vlan tag present" flag is set which causes packet loss. Fix this by checking if rx vlan accel is enabled in features. Reported-by: Michael Guntsche <mguntsche@gmail.com> Signed-off-by: Jiri Pirko <jpirko@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-13net: sh_eth: Fix build by forgot including linux/interrupt.hNobuhiro Iwamatsu
By a6b7a407865aab9f849dd99a71072b7cd1175116, remove interrupt.h from netdevice.h. But this forget to revise sh_eth. This fix the build failure. error: expected '=', ',', ';', 'asm' or '__attribute__' before 'sh_eth_interrupt' error: implicit declaration of function 'request_irq' error: 'sh_eth_interrupt' undeclared (first use in this function) error: (Each undeclared identifier is reported only once drivers/net/sh_eth.c:1386: error: for each function it appears in.) error: 'IRQF_SHARED' undeclared (first use in this function) error: implicit declaration of function 'free_irq' Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com> CC: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-13drivers/net/can/sja1000/plx_pci.c: eliminate double freeJulia Lawall
In this code, the failure_cleanup label calls the function plx_pci_del_card, which frees everything in the card->net_dev array. dev is placed in this array immediately after allocation, so the two subsequent jumps to failure_cleanup should not also call free_sja1000dev, but the second one does. If plx_pci_check_sja1000 fails, then free_sja1000dev is also called on dev. Because dev is already in the card->net_dev array, this implies that when plx_pci_del_card is later called, it may get freed again. So that entry is reset to NULL after the free. Finally, if there is a problem with one channel, there will be a hole in the array. card->channels counts the number of channels that have succeeded, and does not keep track of the index of the largest element in the array that is valid. So the loop in plx_pci_del_card is changed to go up to PLX_PCI_MAX_CHAN, which is only 2. Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-13usbnet/cdc_ncm: Don't use stack variables for DMAJosh Boyer
The cdc_ncm driver still has a few places where stack variables are passed to the cdc_ncm_do_request function. This triggers a stack trace in lib/dma-debug.c if the CONFIG_DEBUG_DMA_API option is set. Adjust these calls to pass parameters that have been allocated with kzalloc. Signed-off-by: Josh Boyer <jwboyer@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-13vmxnet3: Don't enable vlan filters in promiscuous mode.Jesse Gross
The vmxnet3 driver enables vlan filters if filtering is enabled for any vlan. In promiscuous mode the filter table is cleared to in order to disable filtering. However, if a vlan device is subsequently created that vlan will be added to the filter, re-engaging it. As a result, not only do we not see all the vlans in promiscuous mode, we don't even see vlans for which a filter was previously created. CC: Scott J. Goldman <scottjg@vmware.com> CC: Shreyas Bhatewara <sbhatewara@vmware.com> CC: VMware PV-Drivers <pv-drivers@vmware.com> Signed-off-by: Jesse Gross <jesse@nicira.com> Signed-off-by: Shreyas N Bhatewara <sbhatewara@vmware.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-08-13e1000e: workaround invalid Tx/Rx tail descriptor register writeBruce Allan
When the Manageability Engine (ME) is enabled on 82579, it periodically accesses some MAC CSR registers. There is an arbiter in hardware which prevents simultaneous access of these registers by the host software, i.e. the driver. There is a hardware bug in the aribter that signals a host access of the registers later than it actually happens. A write of the Transmit or Receive Descriptor Tail register could result in an incorrect value if the driver and ME perform simultaneous accesses which could result in an access to an invalid memory address. This would return an Unsupported Request which could hang the hardware. Workaround the issue by checking the FWSM register bit24 which is set by ME before it accesses the MAC CSR registers. Signed-off-by: Bruce Allan <bruce.w.allan@intel.com> Tested-by: Jeff Pieper <jeffrey.e.pieper@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2011-08-13e1000e: workaround for packet drop on 82579 at 100MbpsBruce Allan
The MAC can drop short packets when the PHY detects noise on the line at 100Mbps due to a timing issue. Workaround the issue by increasing the PLL counter so the PHY properly recognizes the synchronization pattern from the MAC. Signed-off-by: Bruce Allan <bruce.w.allan@intel.com> Tested-by: Jeff Pieper <jeffrey.e.pieper@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2011-08-13e1000e: Spurious interrupts & dropped packets with 82577/8/9 in half-duplexBruce Allan
On 82577/8/9 in half-duplex when a received packet is passed from the PHY to the MAC, if too many preamble octects are stripped from the packet before arriving at the MAC, it can be misintrepeted as an in-band message rather than an actual frame. For example, if the frame contents resembled an interrupt request in-band message, it would trigger a false interrupt. In most cases, the packet is just dropped. By reducing the number of preamble octets stripped from the beginning of the frame when passing it from the PHY to the MAC, the MAC will interpret the frame properly. An additional uses of the magic PHY_REG(770, 16) have been updated with a define introduced with this patch. Signed-off-by: Bruce Allan <bruce.w.allan@intel.com> Tested-by: Jeff Pieper <jeffrey.e.pieper@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2011-08-13ixgbe: Fix FCOE memory leak for DDP packetsAlexander Duyck
This patch is meant to fix a memory leak found via code review for FCOE. Specifically on DDP flows the SKBs were being dropped without being recycled, freed, or given to the stack. Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com> Tested-by: Ross Brattain <ross.b.brattain@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2011-08-13drivers/net: Kconfig and Makefile cleanupJeff Kirsher
After the move of the Ethernet drivers into drivers/net/ethernet/ there was some leftover cleanup to do in the Kconfig and Makefile. Removed the 10/100, 1000, and 10GbE Kconfig menus. Removed the out-dated pci-skeleton.c file which was used an example driver. With the current networking features and structure, the file is no longer a good example to use for driver creation. CC: Jeff Garzik <jgarzik@pobox.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2011-08-13acenic: Move the Alteon driverJeff Kirsher
Based on feedback from Alan Cox, the acenic driver moved to drivers/net/ethernet/alteon/ and made the necessary Kconfig and Makefile changes. CC: Jes Sorensen <jes@trained-monkey.org> CC: Alan Cox <alan@linux.intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2011-08-12tile: Move the Tilera driverJeff Kirsher
Move the Tilera driver into drivers/net/ethernet/tile and make the necessary Kconfig and Makefile changes. Updated the Kconfig so that the options defualt to y if TILE kernel. CC: Chris Metcalf <cmetcalf@tilera.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2011-08-12xircom: Move the Xircom driverJeff Kirsher
Move the Xircom driver into drivers/net/ethernet/xircom/ and make the necessary Kconfig and Makefile changes. CC: <psheer@icon.co.za> CC: Dominik Brodowski <linux@dominikbrodowski.net> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2011-08-12sh_eth: Move the Renesas SuperH driverJeff Kirsher
Move the Renesas driver into drivers/net/ethernet/renesas/ and make the necessary Kconfig and Makefile changes. CC: Yoshihiro Shimoda <yoshihiro.shirmoda.uh@renesas.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2011-08-12netx: Move the netx driverJeff Kirsher
Move the netx driver into drivers/net/ethernet/ and make the necessary Kconfig and Makefile changes. CC: Sascha Hauer <s.hauer@pengutronix.de> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-12dm9000: Move the Davicom driverJeff Kirsher
Move the Davicom driver into drivers/net/ethernet/davicom/ and make the necessary Kconfig and Makefile changes. CC: Ben Dooks <ben@simtec.co.uk> CC: Sascha Hauer <s.hauer@pengutronix.de> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-12enc28j60: Move the Microchip driverJeff Kirsher
Move the Microchip driver into drivers/net/ethernet/microchip/ and make the necessary Kconfig and Makefile changes. CC: Claudio Lanconelli <lanconelli.claudio@eptar.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2011-08-12greth: Move the Aeroflex Gaisler driverJeff Kirsher
Move the Aeroflex Gaisler driver into drivers/net/ethernet/aeroflex/ and make the necessary Kconfig and Makefile changes. CC: Kristoffer Glembo <kristoffer@gaisler.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2011-08-12ethoc: Move the Avionic driverJeff Kirsher
Move the Avionic driver into drivers/net/ethernet/ and make the necessary Kconfig and Makefile changes. CC: Thierry Reding <thierry.reding@avionic-design.de> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2011-08-12dnet: Move the Dave Ethernet driverJeff Kirsher
Move the Dave Ethernet driver into drivers/net/ethernet/ and make the necessary Kconfig and Makefile changes. CC: Ilya Yanok <yanok@emcraft.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>