aboutsummaryrefslogtreecommitdiff
path: root/drivers/net
AgeCommit message (Collapse)Author
2009-04-06Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6Linus Torvalds
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: b44: Use kernel DMA addresses for the kernel DMA API forcedeth: Fix resume from hibernation regression. xfrm: fix fragmentation on inter family tunnels ibm_newemac: Fix dangerous struct assumption gigaset: documentation update gigaset: in file ops, check for device disconnect before anything else bas_gigaset: use tasklet_hi_schedule for timing critical tasklets net/802/fddi.c: add MODULE_LICENSE smsc911x: remove unused #include <linux/version.h> axnet_cs: fix phy_id detection for bogus Asix chip. bnx2: Use request_firmware() b44: Fix sizes passed to b44_sync_dma_desc_for_{device,cpu}() socket: use percpu_add() while updating sockets_in_use virtio_net: Set the mac config only when VIRITO_NET_F_MAC myri_sbus: use request_firmware e1000: fix loss of multicast packets vxge: should include tcp.h Conflict in firmware/WHENCE (SCSI vs net firmware)
2009-04-06b44: Use kernel DMA addresses for the kernel DMA APIMichael Buesch
We must not use the device DMA addresses for the kernel DMA API, because device DMA addresses have an additional offset added for the SSB translation. Use the original dma_addr_t for the sync operation. Cc: stable@kernel.org Signed-off-by: Michael Buesch <mb@bu3sch.de> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-06forcedeth: Fix resume from hibernation regression.Ed Swierk
Reset phy state on resume, fixing a regression caused by powering down the phy on hibernate. Signed-off-by: Ed Swierk <eswierk@aristanetworks.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-06ibm_newemac: Fix dangerous struct assumptionJean Delvare
The ibm_newemac driver includes code which assumes that the work_struct which is included in every delayed_work is the first member of that structure. This is currently the case but might change in the future, so use to_delayed_work() instead, which doesn't make such an assumption. Signed-off-by: Jean Delvare <khali@linux-fr.org> Cc: Josh Boyer <jwboyer@linux.vnet.ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-06smsc911x: remove unused #include <linux/version.h>Huang Weiyi
Remove unused #include <linux/version.h> in drivers/net/smsc911x.c. Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-06axnet_cs: fix phy_id detection for bogus Asix chip.Ken Kawasaki
axnet_cs: (1) Some Asix phy return bogus value except 0 or 0xffff. Skip this phy_id. (2) Some Asix chip need to set "select Internal PHY" bit at AX88190_init. Signed-off-by: Ken Kawasaki <ken_kawasaki@spring.nifty.jp> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-04bnx2: Use request_firmware()Michael Chan
Based on original patch by Ben Hutchings <ben@decadent.org.uk> and Bastian Blank <waldi@debian.org>, with the following main changes: Separated the mips firmware and rv2p firmware into different files to make it easier to update them separately. Added some code to fixup the rv2p code with run-time information such as PAGE_SIZE. Update version to 2.0.0. Signed-off-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-04b44: Fix sizes passed to b44_sync_dma_desc_for_{device,cpu}()Michael Buesch
> > ------------[ cut here ]------------ > > WARNING: at lib/dma-debug.c:539 check_sync+0xe9/0x341() (Not tainted) > > Hardware name: HP Compaq nx6110 (PY501EA#AB9) > > b44 0000:02:0e.0: DMA-API: device driver tries to sync DMA memory it has not > > allocated [device address=0x0000000075941040] [size=1566 bytes] > > Modules linked in: llc bnep l2cap bluetooth autofs4 lm90 hwmon i2c_i801 sunrpc > > ipv6 cpufreq_ondemand acpi_cpufreq uinput snd_intel8x0m snd_intel8x0 > > snd_ac97_codec snd_seq_dummy ac97_bus snd_seq_oss snd_seq_midi_event snd_seq > > snd_seq_device snd_pcm_oss snd_mixer_oss snd_pcm b44 ssb firewire_ohci > > snd_timer ipw2200 iTCO_wdt mii firewire_core snd iTCO_vendor_support libipw > > yenta_socket crc_itu_t lib80211 rsrc_nonstatic soundcore snd_page_alloc joydev > > pcspkr wmi serio_raw ata_generic pata_acpi i915 drm i2c_algo_bit i2c_core video > > output [last unloaded: scsi_wait_scan] > > Pid: 2418, comm: S58ntpd Not tainted 2.6.29-16.fc10.i686.PAE #1 > > Call Trace: > > [<c04396d1>] warn_slowpath+0x7c/0xbd > > [<c0457fe1>] ? register_lock_class+0x17/0x290 > > [<c0458d61>] ? mark_lock+0x1e/0x349 > > [<c0556448>] ? _raw_spin_unlock+0x74/0x78 > > [<c0458d61>] ? mark_lock+0x1e/0x349 > > [<c055a060>] ? check_sync+0x37/0x341 > > [<c055a112>] check_sync+0xe9/0x341 > > [<c0711245>] ? _spin_unlock_irqrestore+0x45/0x55 > > [<c04592db>] ? trace_hardirqs_on+0xb/0xd > > [<c055a4d1>] debug_dma_sync_single_for_device+0x2f/0x39 > > [<f828f722>] dma_sync_single_for_device+0x4a/0x59 [b44] > > [<f828f76f>] ssb_dma_sync_single_for_device+0x3e/0x48 [b44] > > [<f8291d1e>] b44_recycle_rx+0x18c/0x196 [b44] > > [<f8291f9f>] b44_poll+0x277/0x3c0 [b44] > > [<c0687bb9>] net_rx_action+0xa1/0x1ca > > [<c043e30a>] __do_softirq+0x9d/0x154 > > [<c043e413>] do_softirq+0x52/0x7e > > [<c043e56f>] irq_exit+0x49/0x77 > > [<c040b22e>] do_IRQ+0x97/0xad > > [<c0409dac>] common_interrupt+0x2c/0x34 I don't know if this is related, but the following patch seems to fix some DMA mapping bug. Can somebody comment who does understand the code better than me? (completely untested) Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-04virtio_net: Set the mac config only when VIRITO_NET_F_MACAlex Williamson
VIRTIO_NET_F_MAC indicates the presence of the mac field in config space, not the validity of the value it contains. Allow the mac to be changed at runtime, but only push the change into config space with the VIRTIO_NET_F_MAC feature present. Signed-off-by: Alex Williamson <alex.williamson@hp.com> Acked-by: Christian Borntraeger <borntraeger@de.ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-04myri_sbus: use request_firmwareJaswinder Singh Rajput
Firmware blob looks like this... __be16 lanai4_data_size unsigned char lanai4_code[] Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-04e1000: fix loss of multicast packetsJesse Brandeburg
e1000 (and e1000e, igb, ixgbe, ixgb) all do a series of operations each time a multicast address is added. The flow goes something like 1) stack adds one multicast address 2) stack passes whole current list of unicast and multicast addresses to driver 3) driver clears entire list in hardware 4) driver programs each multicast address using iomem in a loop This was causing multicast packets to be lost during the reprogramming process. reference with test program: http://kerneltrap.org/mailarchive/linux-netdev/2009/3/14/5160514/thread Thanks to Dave Boutcher for his report and test program. This driver fix prepares an array all at once in memory and programs it in one shot to the hardware, not requiring an "erase" cycle. Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-04vxge: should include tcp.hAlexander Beregalov
Fix this build error: drivers/net/vxge/vxge-main.c: In function 'vxge_get_vpath_no': drivers/net/vxge/vxge-main.c:695: error: dereferencing pointer to incomplete type ... Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-03Merge branch 'for-linus' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (28 commits) trivial: Update my email address trivial: NULL noise: drivers/mtd/tests/mtd_*test.c trivial: NULL noise: drivers/media/dvb/frontends/drx397xD_fw.h trivial: Fix misspelling of "Celsius". trivial: remove unused variable 'path' in alloc_file() trivial: fix a pdlfush -> pdflush typo in comment trivial: jbd header comment typo fix for JBD_PARANOID_IOFAIL trivial: wusb: Storage class should be before const qualifier trivial: drivers/char/bsr.c: Storage class should be before const qualifier trivial: h8300: Storage class should be before const qualifier trivial: fix where cgroup documentation is not correctly referred to trivial: Give the right path in Documentation example trivial: MTD: remove EOL from MODULE_DESCRIPTION trivial: Fix typo in bio_split()'s documentation trivial: PWM: fix of #endif comment trivial: fix typos/grammar errors in Kconfig texts trivial: Fix misspelling of firmware trivial: cgroups: documentation typo and spelling corrections trivial: Update contact info for Jochen Hein trivial: fix typo "resgister" -> "register" ...
2009-04-02Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6Linus Torvalds
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (54 commits) glge: remove unused #include <version.h> dnet: remove unused #include <version.h> tcp: miscounts due to tcp_fragment pcount reset tcp: add helper for counter tweaking due mid-wq change hso: fix for the 'invalid frame length' messages hso: fix for crash when unplugging the device fsl_pq_mdio: Fix compile failure fsl_pq_mdio: Revive UCC MDIO support ucc_geth: Pass proper device to DMA routines, otherwise oops happens i.MX31: Fixing cs89x0 network building to i.MX31ADS tc35815: Fix build error if NAPI enabled hso: add Vendor/Product ID's for new devices ucc_geth: Remove unused header gianfar: Remove unused header kaweth: Fix locking to be SMP-safe net: allow multiple dev per napi with GRO r8169: reset IntrStatus after chip reset ixgbe: Fix potential memory leak/driver panic issue while setting up Tx & Rx ring parameters ixgbe: fix ethtool -A|a behavior ixgbe: Patch to fix driver panic while freeing up tx & rx resources ...
2009-04-02workqueue: add to_delayed_work() helper functionJean Delvare
It is a fairly common operation to have a pointer to a work and to need a pointer to the delayed work it is contained in. In particular, all delayed works which want to rearm themselves will have to do that. So it would seem fair to offer a helper function for this operation. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Jean Delvare <khali@linux-fr.org> Acked-by: Ingo Molnar <mingo@elte.hu> Cc: "David S. Miller" <davem@davemloft.net> Cc: Herbert Xu <herbert@gondor.apana.org.au> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Martin Schwidefsky <schwidefsky@de.ibm.com> Cc: Greg KH <greg@kroah.com> Cc: Pekka Enberg <penberg@cs.helsinki.fi> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-04-02glge: remove unused #include <version.h>Huang Weiyi
Remove unused #include <version.h> in drivers/net/qlge/qlge_ethtool. Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02dnet: remove unused #include <version.h>Huang Weiyi
Remove unused #include <version.h> in drivers/net/dnet.c. Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02hso: fix for the 'invalid frame length' messagesJan Dumon
Some devices cannot send very short usb transfers. To get around this the firmware adds a known pattern and flags the driver that it should check for this pattern on short transfers. This flag was not taken into account by the driver. Signed-off-by: Jan Dumon <j.dumon@option.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02hso: fix for crash when unplugging the deviceJan Dumon
Changed the order in which things are freed. This fixes an oops when unplugging the device while network traffic is ongoing. Signed-off-by: Jan Dumon <j.dumon@option.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02fsl_pq_mdio: Fix compile failureSegher Boessenkool
Add EXPORT_SYMBOL_GPL(fsl_pq_mdio_bus_name) for module builds Signed-off-by: Segher Boessenkool <segher@kernel.crashing.org> Signed-off-by: Kumar Gala <galak@kernel.crashing.org> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02fsl_pq_mdio: Revive UCC MDIO supportAnton Vorontsov
commit 1577ecef766650a57fceb171acee2b13cbfaf1d3 ("netdev: Merge UCC and gianfar MDIO bus drivers") introduced a regression so that UCC MDIO buses no longer work. This is because fsl_pq_mdio driver wrongly masks all non-TBI PHYs for !fsl,gianfar-mdio buses, while it should do that only for fsl,gianfar-tbi buses. Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02ucc_geth: Pass proper device to DMA routines, otherwise oops happensAnton Vorontsov
The driver should pass a device that actually specifies internal DMA ops, but currently it passes netdev's device, which is wrong and that causes following oops: Kernel BUG at c01c4df8 [verbose debug info unavailable] Oops: Exception in kernel mode, sig: 5 [#1] [...] NIP [c01c4df8] get_new_skb+0x7c/0xf8 LR [c01c4da4] get_new_skb+0x28/0xf8 Call Trace: [ef82be00] [c01c4da4] get_new_skb+0x28/0xf8 (unreliable) [ef82be20] [c01c4eb8] rx_bd_buffer_set+0x44/0x98 [ef82be40] [c01c62bc] ucc_geth_startup+0x11b0/0x147c [ef82be80] [c01c6674] ucc_geth_open+0xec/0x2a4 [ef82bea0] [c02288a4] dev_open+0xc0/0x11c [...] Fix this by passing of_device's device that specifies DMA ops in its archdata. Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02tc35815: Fix build error if NAPI enabledAtsushi Nemoto
This driver contains experimental NAPI code disabled by default. The commit bea3348ee ("[NET]: Make NAPI polling independent of struct net_device objects.") converted the NAPI path of this driver but that conversion was not complete. This patch fixes a build error introduced by the commit. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02hso: add Vendor/Product ID's for new devicesJan Dumon
Add Vendor/Product ID's for new devices. Removed duplicate product ID 0x7361. Signed-off-by: Jan Dumon <j.dumon@option.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02ucc_geth: Remove unused headerKumar Gala
Now that the driver is exclusively an of_platform driver we no longer use the structs and #defines in fsl_devices.h Signed-off-by: Kumar Gala <galak@kernel.crashing.org> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02gianfar: Remove unused headerKumar Gala
Now that the driver is exclusively an of_platform driver we no longer use the structs and #defines in fsl_devices.h Signed-off-by: Kumar Gala <galak@kernel.crashing.org> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02kaweth: Fix locking to be SMP-safeLarry Finger
On an SMP system, the following message is printed. The patch below gets fixes the problem. ================================= [ INFO: inconsistent lock state ] 2.6.29-Linus-05093-gc31f403 #57 --------------------------------- inconsistent {hardirq-on-W} -> {in-hardirq-W} usage. bash/4105 [HC1[1]:SC0[0]:HE0:SE1] takes: (&kaweth->device_lock){+...}, at: [<ffffffffa01aa286>] kaweth_usb_receive+0x77/0x1af [kaw eth] {hardirq-on-W} state was registered at: [<ffffffff80260503>] __lock_acquire+0x753/0x1685 [<ffffffff8026148a>] lock_acquire+0x55/0x71 [<ffffffff80461ba6>] _spin_lock+0x31/0x3d [<ffffffffa01aaa0c>] kaweth_start_xmit+0x2b/0x1e1 [kaweth] [<ffffffff803eccd3>] dev_hard_start_xmit+0x22e/0x2ad [<ffffffff803fe120>] __qdisc_run+0xf2/0x203 [<ffffffff803ed0cd>] dev_queue_xmit+0x263/0x39b [<ffffffffa03a47cb>] packet_sendmsg_spkt+0x1c4/0x20a [af_packet] [<ffffffff803de0c2>] sock_sendmsg+0xe4/0xfd [<ffffffff803dec8f>] sys_sendto+0xe4/0x10c [<ffffffff8020bccb>] system_call_fastpath+0x16/0x1b [<ffffffffffffffff>] 0xffffffffffffffff irq event stamp: 1280 hardirqs last enabled at (1279): [<ffffffff80461a71>] _spin_unlock_irqrestore+0x44/0x4c hardirqs last disabled at (1280): [<ffffffff8020bad7>] save_args+0x67/0x70 softirqs last enabled at (660): [<ffffffff8024192c>] __do_softirq+0x14d/0x15d softirqs last disabled at (651): [<ffffffff8020ce9c>] call_softirq+0x1c/0x28 Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02r8169: reset IntrStatus after chip resetKarsten Wiese
Original comment (Karsten): On a MSI MS-6702E mainboard, when in rtl8169_init_one() for the first time after BIOS has run, IntrStatus reads 5 after chip has been reset. IntrStatus should equal 0 there, so patch changes IntrStatus reset to happen after chip reset instead of before. Remark (Francois): Assuming that the loglevel of the driver is increased above NETIF_MSG_INTR, the bug reveals itself with a typical "interrupt 0025 in poll" message at startup. In retrospect, the message should had been read as an hint of an unexpected hardware state several months ago :o( Fixes (at least part of) https://bugzilla.redhat.com/show_bug.cgi?id=460747 Signed-off-by: Karsten Wiese <fzu@wemgehoertderstaat.de> Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Tested-by: Josep <josep.puigdemont@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02ixgbe: Fix potential memory leak/driver panic issue while setting up Tx & Rx ↵Mallikarjuna R Chilakala
ring parameters While setting up the ring parameters using ethtool the driver can panic or leak memory as ixgbe_open tries to setup tx & rx resources. The updated logic will use ixgbe_down/up after successful allocation of tx & rx resources Signed-off-by: Mallikarjuna R Chilakala <mallikarjuna.chilakala@intel.com> Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> CC: stable@kernel.org Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02ixgbe: fix ethtool -A|a behaviorDon Skidmore
We were basicly ignoring ethtool users request for FC autoneg and replying to queries with a "best guess". This patch enables the driver to store if we want to enable/disable autoneg FC and do the correct behavior. Signed-off-by: Don Skidmore <donald.c.skidmore@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02ixgbe: Patch to fix driver panic while freeing up tx & rx resourcesMallikarjuna R Chilakala
When network interface is made active we were not handling the error scenarios properly to clean up rx & tx resources which might result in a driver panic. Signed-off-by: Mallikarjuna R Chilakala <mallikarjuna.chilakala@intel.com> Acked-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02ixgbe: refactor tx buffer processing to use skb_dma_map/unmapAlexander Duyck
This patch resolves an issue with map single being used to map a buffer and then unmap page being used to unmap it. In addition it handles any error conditions that may be detected using skb_dma_map. Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com> Acked-by: Mallikarjuna R Chilakala <mallikarjuna.chilakala@intel.com> Acked-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02ixgbe: Fix 82598 MSI-X allocation on systems with more than 8 CPU coresPJ Waskiewicz
MSI-X allocation broke after the 82599 merge on systems with more than 8 CPU cores. 82598 drops back into MSI mode, which isn't sufficient to run full, efficient 10G line rate. Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02ixgbe: feature - driver to default with FC on.Don Skidmore
In the past flow control wasn't enabled by default under the incorrect assumption that this opened up us to a denial of service attack. However since any switch that forwarded flow control would be extremely msiconfigured and/or buggy, this concern no longer out weighs the preformance gains from having FC enabled. Signed-off-by: Don Skidmore <donald.c.skidmore@intel.com> Acked-by: Mallikarjuna R Chilakala <mallikarjuna.chilakala@intel.com> Acked-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02ixgbe: Fix DCB netlink layer for 82599 to enable Priority Flow ControlPJ Waskiewicz
The priority flow control settings from the netlink layer aren't taking effect in the base driver. The boolean pfc_mode_enable in the dcb_config struct isn't being set, so the hardware configuration code is never reached. Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02ixgbe: Fix ethtool output with advertised mode.Don Skidmore
Ethtool tries to get advertised speed from phy.autoneg_advertised. However for copper media this wasn't happening until later do to an other fix which moved mac.ops.setup_link_speed placement in ixgbe_link_config(). This patch will display the default advertised speeds if it can't yet get this information from phy.autoneg_advertised. Signed-off-by: Don Skidmore <donald.c.skidmore@intel.com> Acked-by: Mallikarjuna R Chilakala <mallikarjuna.chilakala@intel.com> Acked-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02ixgbe: fix build when DEBUG is definedAlexander Duyck
The ixgbe driver had issues when DEBUG was defined because the hw_dbg macro was incomplete. This patch completes the code based off of the code that already existed in the igb module. Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com> Acked-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02net/igb: Fix kexec with igb (rev. 3)Rafael J. Wysocki
Impact: Fix Yinghai Lu found one system with 82575EB where, in the kernel that is kexeced, probe igb failed with -2, the reason being that the adapter could not be brought back from D3 by the kexec kernel, most probably due to quirky hardware (it looks like the same behavior happened on forcedeth). Prevent igb from putting the adapter into D3 during shutdown except when we going to power off the system. For this purpose, seperate igb_shutdown() from igb_suspend() and use the appropriate PCI PM callbacks in both of them. Signed-off-by: "Rafael J. Wysocki" <rjw@sisk.pl> Reported-by: Yinghai Lu <yinghai@kernel.org> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02igb: cleanup igb loopback pathAlexander Duyck
The code path for setting up phy loopback testing was out of date and was setting bits it didn't need to. This change cleans up the code path and removes some code that has no effect on teh driver. Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02igb: increase delay for copper link setupAlexander Duyck
Increase the delay for copper phy init from 15ms to 100ms. This is to address issues seen in which ethtool -t was failing in some cases on 82576 based adapters. Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02igb: set num_rx/tx_queues to 0 when queues are freedAlexander Duyck
An issue was seen on suspend in which the system reported a page fault. This was due to the new reg_idx code being called after the queues were freed. This update prevents any for loops from going through the queues by setting the number of queues to 0 when they are freed. Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02igb: add support for x2 link width configurationsAlexander Duyck
When device is on PCIe link trained as x2 the driver is currently reporting link width as "unknown". The original patch provided by Myron adds the x2 link support and my changes are cosmetic to clean up the readability of the conditional operators. Based on work by: Myron Stowe <myron.stowe@hp.com> Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02net/fec_mpc52xx: Don't dereference phy_device if it is NULLGrant Likely
The FEC Ethernet device isn't always attached to a phy. Be careful not to dereference phy_device if it is NULL. Also eliminates an unnecessary extra function from the ioctl path. Reported-by: Henk Stegeman <henk.stegeman@gmail.com> Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02net/fec_mpc52xx: Migrate to net_device_ops.Henk Stegeman
Since not using net_device_ops gets you shunned out the cool crowd, this patch modifies the fec_mpc52xx Ethernet driver to provide the management hooks via a struct net_device_ops. Reported-by: Henk Stegeman <henk.stegeman@gmail.com> Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02net/fec_mpc52xx: fix BUG on missing dma_opsGrant Likely
The driver triggers a BUG_ON() when allocating DMA buffers because the arch/powerpc dma_ops aren't in the net_device's struct device. This patch fixes the problem by using the parent of_device which does have the correct dma_ops set. Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Reviewed-by: Becky Bruce <beckyb@kernel.crashing.org> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02Neterion: New driver: Kconfig and MakefileRamkrishna Vepa
- Kconfig and Makefile related changes for vxge driver. - No changes in current submission. - Changes from previous submission - - Incorporated the following review comments as per Bill Flink: - Add dependancy on INET along with PCI - Remove dependancy on INET_LRO and add GRO support. - Made this patch as last patch as per Ben Hutchings comments. Signed-off-by: Sivakumar Subramani <sivakumar.subramani@neterion.com> Signed-off-by: Rastapur Santosh <santosh.rastapur@neterion.com> Signed-off-by: Ramkrishna Vepa <ram.vepa@neterion.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02Neterion: New driver: Driver versionRamkrishna Vepa
- Driver version - Changes from previous submission - - Updated driver version. Signed-off-by: Sivakumar Subramani <sivakumar.subramani@neterion.com> Signed-off-by: Rastapur Santosh <santosh.rastapur@neterion.com> Signed-off-by: Ramkrishna Vepa <ram.vepa@neterion.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02Neterion: New driver: Ethtool relatedRamkrishna Vepa
This patch implements all ethtool related entry point functions for the driver. - Changes in this submission - - Removed redundant #include statements - Changes in previous submissions - - Removed unused statistics. - General clean up - removed unused variables and macros. - Incorporated following comments from Ben Hutchings - No need to restart the interface in vxge_ethtool_sset - Do not use #ifdef ADVERTISED_XX - Remove unnecessart intermediate copy in vxge_ethtool_gdrvinfo - Use strlcpy() to ensure null-termination. - Use ethtool_op_get_tso, ethtool_op_set_tx_hw_csum instead of redefining the same code. - Implement get_strings_count instead of deprecated get_stats_count. - Don't report reporting the EEPROM length as we don't supprt get/set eeprom. - Don't set self_test_count as we don't support any self tests. Signed-off-by: Sivakumar Subramani <sivakumar.subramani@neterion.com> Signed-off-by: Rastapur Santosh <santosh.rastapur@neterion.com> Signed-off-by: Ramkrishna Vepa <ram.vepa@neterion.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02Neterion: New driver: Main entry pointsRamkrishna Vepa
This patch implements all the driver entry point functions. - Definition of all module loadable paramters. - Implementation of all driver entry point functions. - Changes in this submission - - Fixed compilation error when enabling debug statements - Fixed few warnings when CONFIG_PCI_MSI is not defined - Removed unnecessary volatile variables - Removed compare_ether_addr as it causes unaligned memory access on the sparc64 platform. - Changes in previous submissions - - As per Stephen Hemminger's comments removed the following loadable parameters - gro, rx_& tx max_indicate_pkts, exec_mode, rx & tx pause_enable, tx_steering_type and intr_type. - Added Device ID definition in vxge-main.h instead of include/linux/pci_ids.h file - Reported by David Miller - Incorporated following review comments from Ben Hutchings - NAPI is always enabled (no option to turn it OFF). - Loadable parameters rx_steering_type: This loadable option is removed. ring_blocks: This loadable option is removed. The driver default settings work well in most if not all cases. Another patch to configure these parameters with ethtool will be released in the future. - LRO has been deprecated in favour of GRO - Bill Fink & Dave Miller's comment - Fixed sparse warnings - Reported by Andi Kleen - Removed unused variables Signed-off-by: Sivakumar Subramani <sivakumar.subramani@neterion.com> Signed-off-by: Rastapur Santosh <santosh.rastapur@neterion.com> Signed-off-by: Ramkrishna Vepa <ram.vepa@neterion.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02Neterion: New driver: Traffic & alarm handlerRamkrishna Vepa
This patch takes care of trafic handling related APIS. - Interrupt Enable and disable - Mask / Unmask Interrupt - Traffic Interrupt handling. - Alarm Interrupt handling. - Changes in this submission - - General clean up - removed redundant includes, defines and macros. - Changes in previous submissions - - General cleanup - removed unused functions and variables. - Use asserts where necessary - Reported by Andi Kleen - Fixed sparse warnings - Reported by Andi Kleen - Use a prefix, "__vxge" in front of hw functions to make them globally unique - Ben Hutchings Signed-off-by: Sivakumar Subramani <sivakumar.subramani@neterion.com> Signed-off-by: Rastapur Santosh <santosh.rastapur@neterion.com> Signed-off-by: Ramkrishna Vepa <ram.vepa@neterion.com> Signed-off-by: David S. Miller <davem@davemloft.net>