pandora-kernel.git
12 years agogianfar v5: implement nfc
Sebastian Poehn [Mon, 20 Jun 2011 20:57:59 +0000 (13:57 -0700)]
gianfar v5: implement nfc

This patch adds all missing functionalities for nfc except GRXFH. There is so much code because hardware has not a TCAM.
Further hardware rule space is very limited. So I had to extensively use
optimization features. Both reasons lead to the necessity to hold all
online flows in a linked-list.

Change-log:
# Some suggestions by Joe Perches applied (thanks!)
# Shorted some logs
# Use memcmp() for comparing

Signed-off-by: Sebastian Poehn <sebastian.poehn@belden.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoucc_geth: enable transmit time stamping.
Richard Cochran [Sun, 19 Jun 2011 21:51:33 +0000 (21:51 +0000)]
ucc_geth: enable transmit time stamping.

This patch enables software (and phy device) transmit time stamping.
Compile tested only.

Cc: Shlomi Gridish <gridish@freescale.com>
Cc: Li Yang <leoli@freescale.com>
Signed-off-by: Richard Cochran <richard.cochran@omicron.at>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agopxa168_eth: enable transmit time stamping.
Richard Cochran [Sun, 19 Jun 2011 21:51:31 +0000 (21:51 +0000)]
pxa168_eth: enable transmit time stamping.

This patch enables software (and phy device) transmit time stamping
Compile tested only.

Cc: Sachin Sanap <ssanap@marvell.com>
Cc: Zhangfei Gao <zgao6@marvell.com>
Cc: Philip Rakity <prakity@marvell.com>
Cc: Mark Brown <markb@marvell.com>
Signed-off-by: Richard Cochran <richard.cochran@omicron.at>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agosmsc911x: enable transmit time stamping.
Richard Cochran [Sun, 19 Jun 2011 21:51:30 +0000 (21:51 +0000)]
smsc911x: enable transmit time stamping.

This patch enables software (and phy device) transmit time stamping.
Compile tested only.

Cc: Steve Glendinning <steve.glendinning@smsc.com>
Signed-off-by: Richard Cochran <richard.cochran@omicron.at>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agofs_enet: enable transmit time stamping.
Richard Cochran [Sun, 19 Jun 2011 21:51:29 +0000 (21:51 +0000)]
fs_enet: enable transmit time stamping.

This patch enables software (and phy device) transmit time stamping.
Compile tested only.

Cc: Pantelis Antoniou <pantelis.antoniou@gmail.com>
Cc: Vitaly Bordug <vbordug@ru.mvista.com>
Signed-off-by: Richard Cochran <richard.cochran@omicron.at>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agomacb: enable transmit time stamping.
Richard Cochran [Sun, 19 Jun 2011 21:51:28 +0000 (21:51 +0000)]
macb: enable transmit time stamping.

This patch enables software (and phy device) transmit time stamping
Compile tested only.

Cc: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Richard Cochran <richard.cochran@omicron.at>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agofec_mpc52xx: enable transmit and receive time stamping.
Richard Cochran [Sun, 19 Jun 2011 21:51:27 +0000 (21:51 +0000)]
fec_mpc52xx: enable transmit and receive time stamping.

This patch enables software (and phy device) time stamping. Software
time stamping using the SO_TIMESTAMPING API was tested and found to be
working on the LITE5200B board.

Cc: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Richard Cochran <richard.cochran@omicron.at>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoll_temac: enable transmit and receive time stamping.
Richard Cochran [Sun, 19 Jun 2011 21:51:26 +0000 (21:51 +0000)]
ll_temac: enable transmit and receive time stamping.

This patch enables software (and phy device) time stamping. Since this MAC
is based on phylib, adding the hooks makes hardware time stamping in the
phy possible.

Compile tested only.

Cc: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Richard Cochran <richard.cochran@omicron.at>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoemaclite: enable transmit and receive time stamping.
Richard Cochran [Sun, 19 Jun 2011 21:51:25 +0000 (21:51 +0000)]
emaclite: enable transmit and receive time stamping.

This patch enables software (and phy device) time stamping. Since this
MAC uses phylib, adding the hooks make hardware time stamping in the phy
possible.

Compile tested only.

Cc: John Linn <john.linn@xilinx.com>
Signed-off-by: Richard Cochran <richard.cochran@omicron.at>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agolib8390: enable transmit and receive time stamping.
Richard Cochran [Sun, 19 Jun 2011 21:51:24 +0000 (21:51 +0000)]
lib8390: enable transmit and receive time stamping.

This patch enables software (and phy device) time stamping. This file is
included by drivers/net/ax88796.c, which is based on phylib. So, this
patch makes hardware time stamping in the PHY possible.

Compile tested only.

Signed-off-by: Richard Cochran <richard.cochran@omicron.at>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agonet: export the receive time stamping hook for non-NAPI drivers
Richard Cochran [Sun, 19 Jun 2011 21:51:23 +0000 (21:51 +0000)]
net: export the receive time stamping hook for non-NAPI drivers

Ethernet MAC drivers based on phylib (but not using NAPI) can
enable hardware time stamping in phy devices by calling netif_rx()
conditionally based on a call to skb_defer_rx_timestamp().

This commit exports that function so that drivers calling it may
be compiled as modules.

Signed-off-by: Richard Cochran <richard.cochran@omicron.at>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agomyricom: remove stats_lock
Eric Dumazet [Sun, 19 Jun 2011 20:07:46 +0000 (20:07 +0000)]
myricom: remove stats_lock

stats_lock is non useless, lets remove it.

Also, ndo_get_stats64() doesnt have to clear the stats, caller takes
care of this.

Note: folding 32bit fields in 64bit one is problematic when one of 32bit
values wraps : SNMP reader will see a ~2^32 back change in a 64bit
value. A future patch should fix this.

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
CC: Stephen Hemminger <shemminger@vyatta.com>
CC: Andrew Gallatin <gallatin@myri.com>
CC: Brice Goglin <brice@myri.com>
Acked-by: Jon Mason <mason@myri.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoMerge branch 'batman-adv/next' of git://git.open-mesh.org/ecsv/linux-merge
David S. Miller [Mon, 20 Jun 2011 19:59:37 +0000 (12:59 -0700)]
Merge branch 'batman-adv/next' of git://git.open-mesh.org/ecsv/linux-merge

12 years agomyri_sbus: remove driver
Jon Mason [Mon, 20 Jun 2011 19:51:22 +0000 (12:51 -0700)]
myri_sbus: remove driver

Remove the myri_sbus driver. Why?
* There is no possibility of ethernet mode on this adapter, so it's
  Myrinet only.
* It won't inter-op with modern versions of Myrinet, and thus can only
  work with legacy adapters.
* There are no in-kernel Linux drivers for the PCI version of this
  adapter, so it only can work on ~15 year old Sun hardware.

It's long in the tooth, let's take it to the knackers.

Signed-off-by: Jon Mason <mason@myri.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agobatman-adv: improved gateway tq-based selection
Antonio Quartulli [Tue, 26 Apr 2011 19:31:45 +0000 (21:31 +0200)]
batman-adv: improved gateway tq-based selection

If a client issues a DHCPREQUEST for renewal, the packet is dropped
if the old destination (the old gateway for the client) TQ is smaller
than the current best gateway TQ less GW_THRESHOLD

Signed-off-by: Antonio Quartulli <ordex@autistici.org>
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
12 years agobatman-adv: throw uevent in userspace on gateway add/change/del event
Antonio Quartulli [Sun, 12 Jun 2011 09:58:58 +0000 (11:58 +0200)]
batman-adv: throw uevent in userspace on gateway add/change/del event

In case of new default gw, changing the default gw or deleting the default gw a
uevent is triggered with type=gw, action=add/change/del and
data={GW_ORIG_ADDRESS} (if any).

Signed-off-by: Antonio Quartulli <ordex@autistici.org>
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
12 years agobatman-adv: gateway election code refactoring
Antonio Quartulli [Tue, 26 Apr 2011 22:22:00 +0000 (00:22 +0200)]
batman-adv: gateway election code refactoring

The gateway election mechanism has been a little revised. Now the
gw_election is trigered by an atomic_t flag (gw_reselect) which is set
to 1 in case of election needed, avoding to set curr_gw to NULL.

Signed-off-by: Antonio Quartulli <ordex@autistici.org>
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
12 years agobatman-adv: add wrapper function to throw uevent in userspace
Antonio Quartulli [Tue, 26 Apr 2011 16:26:01 +0000 (18:26 +0200)]
batman-adv: add wrapper function to throw uevent in userspace

Using throw_uevent() is now possible to trigger uevent signal that can
be recognised in userspace. Uevents will be triggered through the
/devices/virtual/net/{MESH_IFACE} kobject.

A triggered uevent has three properties:
- type: the event class. Who generates the event (only 'gw' is currently
  defined). Corresponds to the BATTYPE uevent variable.
- action: the associated action with the event ('add'/'change'/'del' are
  currently defined). Corresponds to the BATACTION uevent variable.
- data: any useful data for the userspace. Corresponds to the BATDATA
  uevent variable.

Signed-off-by: Antonio Quartulli <ordex@autistici.org>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
12 years agobatman-adv: protect the local and the global trans-tables with rcu
Antonio Quartulli [Wed, 27 Apr 2011 12:28:07 +0000 (14:28 +0200)]
batman-adv: protect the local and the global trans-tables with rcu

The local and the global translation-tables are now lock free and rcu
protected.

Signed-off-by: Antonio Quartulli <ordex@autistici.org>
Acked-by: Simon Wunderlich <siwu@hrz.tu-chemnitz.de>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
12 years agobatman-adv: improved roaming mechanism
Antonio Quartulli [Wed, 27 Apr 2011 12:27:57 +0000 (14:27 +0200)]
batman-adv: improved roaming mechanism

With the current client announcement implementation, in case of roaming,
an update is triggered on the new AP serving the client. At that point
the new information is spread around by means of the OGM broadcasting
mechanism. Until this operations is not executed, no node is able to
correctly route traffic towards the client. This obviously causes packet
drops and introduces a delay in the time needed by the client to recover
its connections.

A new packet type called ROAMING_ADVERTISEMENT is added to account this
issue.

This message is sent in case of roaming from the new AP serving the
client to the old one and will contain the client MAC address. In this
way an out-of-OGM update is immediately committed, so that the old node
can update its global translation table. Traffic reaching this node will
then be redirected to the correct destination utilising the fresher
information. Thus reducing the packet drops and the connection recovery
delay.

Signed-off-by: Antonio Quartulli <ordex@autistici.org>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
12 years agobatman-adv: improved client announcement mechanism
Antonio Quartulli [Wed, 27 Apr 2011 12:27:44 +0000 (14:27 +0200)]
batman-adv: improved client announcement mechanism

The client announcement mechanism informs every mesh node in the network
of any connected non-mesh client, in order to find the path towards that
client from any given point in the mesh.

The old implementation was based on the simple idea of appending a data
buffer to each OGM containing all the client MAC addresses the node is
serving. All other nodes can populate their global translation tables
(table which links client MAC addresses to node addresses) using this
MAC address buffer and linking it to the node's address contained in the
OGM. A node that wants to contact a client has to lookup the node the
client is connected to and its address in the global translation table.

It is easy to understand that this implementation suffers from several
issues:
 - big overhead (each and every OGM contains the entire list of
   connected clients)
 - high latencies for client route updates due to long OGM trip time and
   OGM losses

The new implementation addresses these issues by appending client
changes (new client joined or a client left) to the OGM instead of
filling it with all the client addresses each time. In this way nodes
can modify their global tables by means of "updates", thus reducing the
overhead within the OGMs.

To keep the entire network in sync each node maintains a translation
table version number (ttvn) and a translation table checksum. These
values are spread with the OGM to allow all the network participants to
determine whether or not they need to update their translation table
information.

When a translation table lookup is performed in order to send a packet
to a client attached to another node, the destination's ttvn is added to
the payload packet. Forwarding nodes can compare the packet's ttvn with
their destination's ttvn (this node could have a fresher information
than the source) and re-route the packet if necessary. This greatly
reduces the packet loss of clients roaming from one AP to the next.

Signed-off-by: Antonio Quartulli <ordex@autistici.org>
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
12 years agobatman-adv: Unify the first 3 bytes in each packet
Antonio Quartulli [Sat, 28 May 2011 12:51:06 +0000 (14:51 +0200)]
batman-adv: Unify the first 3 bytes in each packet

The amount of duplicated code in the receive and routing code can be
reduced when all headers provide the packet type, version and ttl in the
same first bytes.

Signed-off-by: Antonio Quartulli <ordex@autistici.org>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
12 years agobatman-adv: Reduce usage of char
Sven Eckelmann [Wed, 15 Jun 2011 07:41:37 +0000 (09:41 +0200)]
batman-adv: Reduce usage of char

char was used in different places to store information without really
using the characteristics of that data type or by ignoring the fact that
char has not a well defined signedness.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
12 years agobatman-adv: count_real_packets() in batman-adv assumes char is signed
David Howells [Wed, 15 Jun 2011 07:41:36 +0000 (09:41 +0200)]
batman-adv: count_real_packets() in batman-adv assumes char is signed

count_real_packets() in batman-adv assumes char is signed, and returns -1
through it:

net/batman-adv/routing.c: In function 'receive_bat_packet':
net/batman-adv/routing.c:739: warning: comparison is always false due to limited range of data type

Use int instead.

Signed-off-by: David Howells <dhowells@redhat.com>
[sven@narfation.org: Rebase on top of current version]
Signed-off-by: Sven Eckelmann <sven@narfation.org>
12 years agobatman-adv: Keep interface_tx as local function
Sven Eckelmann [Wed, 15 Jun 2011 13:17:21 +0000 (15:17 +0200)]
batman-adv: Keep interface_tx as local function

interface_tx is not used outside of soft-interface.c and thus doesn't
need to be declared inside soft-interface.h

Signed-off-by: Sven Eckelmann <sven@narfation.org>
12 years agobatman-adv: Move compare_orig to originator.c
Sven Eckelmann [Wed, 15 Jun 2011 13:08:59 +0000 (15:08 +0200)]
batman-adv: Move compare_orig to originator.c

compare_orig is only used in context of orig_node which is managed
inside originator.c. It is not necessary to keep that function inside
the header originator.h.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
12 years agoveth: fix 64bit stats on 32bit arches
Eric Dumazet [Mon, 20 Jun 2011 05:48:34 +0000 (22:48 -0700)]
veth: fix 64bit stats on 32bit arches

Using 64bit stats on 32bit arches must use a synchronization or readers
can get transient values.

Fixes bug introduced in commit 6311cc44a2 (veth: convert to 64 bit
statistics)

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agonet/staging: add needed interrupt.h and hardirq.h includes
Stephen Rothwell [Mon, 20 Jun 2011 05:41:59 +0000 (22:41 -0700)]
net/staging: add needed interrupt.h and hardirq.h includes

Made necessary by commit a6b7a407865a ("net: remove
interrupt.h inclusion from netdevice.h").

Fixes these build errors:

drivers/staging/brcm80211/brcmfmac/dhd_linux.c:1212:3: error: implicit declaration of function 'in_interrupt'
drivers/staging/brcm80211/brcmfmac/dhd_linux.c:1390:4: error: implicit declaration of function 'tasklet_schedule'
drivers/staging/brcm80211/brcmfmac/dhd_linux.c:1988:3: error: implicit declaration of function 'tasklet_init'
drivers/staging/brcm80211/brcmfmac/dhd_linux.c:2288:5: error: implicit declaration of function 'tasklet_kill'
drivers/staging/brcm80211/brcmfmac/dhd_linux.c:232:24: error: field 'tasklet' has incomplete type
drivers/staging/brcm80211/brcmfmac/wl_iw.c:3670:2: error: implicit declaration of function 'in_interrupt'
drivers/staging/brcm80211/brcmsmac/wl_mac80211.c:1349:3: error: implicit declaration of function 'free_irq'
drivers/staging/brcm80211/brcmsmac/wl_mac80211.c:1352:2: error: implicit declaration of function 'tasklet_kill'
drivers/staging/brcm80211/brcmsmac/wl_mac80211.c:1538:4: error: implicit declaration of function 'tasklet_schedule'
drivers/staging/brcm80211/brcmsmac/wl_mac80211.c:765:2: error: implicit declaration of function 'tasklet_init'
drivers/staging/brcm80211/brcmsmac/wl_mac80211.c:817:2: error: implicit declaration of function 'request_irq'
drivers/staging/brcm80211/brcmsmac/wl_mac80211.c:817:31: error: 'IRQF_SHARED' undeclared (first use in this function)
drivers/staging/brcm80211/brcmsmac/wl_mac80211.h:65:24: error: field 'tasklet' has incomplete type
drivers/staging/rtl8187se/ieee80211/ieee80211.h:994:24: error: field 'ps_task' has incomplete type
drivers/staging/rtl8187se/ieee80211/ieee80211_softmac.c:1790:3: error: implicit declaration of function 'tasklet_schedule'
drivers/staging/rtl8187se/ieee80211/ieee80211_softmac.c:2590:2: error: implicit declaration of function 'tasklet_init'
drivers/staging/rtl8187se/r8180.h:461:24: error: field 'irq_rx_tasklet' has incomplete type
drivers/staging/rtl8187se/r8180_core.c:2764:2: error: implicit declaration of function 'tasklet_init'
drivers/staging/rtl8187se/r8180_core.c:2954:2: error: implicit declaration of function 'request_irq'
drivers/staging/rtl8187se/r8180_core.c:2954:55: error: 'IRQF_SHARED' undeclared (first use in this function)
drivers/staging/rtl8187se/r8180_core.c:3641:4: error: implicit declaration of function 'free_irq'
drivers/staging/rtl8187se/r8180_core.c:4026:3: error: implicit declaration of function 'tasklet_schedule'
drivers/staging/rtl8192e/ieee80211/ieee80211.h:2000:24: error: field 'ps_task' has incomplete type
drivers/staging/rtl8192e/r8192E.h:909:24: error: field 'irq_rx_tasklet' has incomplete type
drivers/staging/rtl8192e/r8192E.h:910:24: error: field 'irq_tx_tasklet' has incomplete type
drivers/staging/rtl8192e/r8192E.h:911:31: error: field 'irq_prepare_beacon_tasklet' has incomplete type
drivers/staging/rtl8192e/r8192E_core.c:2008:2: error: implicit declaration of function 'tasklet_init'
drivers/staging/rtl8192e/r8192E_core.c:2412:54: error: 'IRQF_SHARED' undeclared (first use in this function)
drivers/staging/rtl8192e/r8192E_core.c:2412:9: error: implicit declaration of function 'request_irq'
drivers/staging/rtl8192e/r8192E_core.c:4640:4: error: implicit declaration of function 'free_irq'
drivers/staging/rtl8192e/r8192E_core.c:620:2: error: implicit declaration of function 'synchronize_irq'
drivers/staging/rtl8192e/r8192E_core.c:913:3: error: implicit declaration of function 'tasklet_schedule'
drivers/staging/rtl8192u/ieee80211/ieee80211.h:1993:24: error: field 'ps_task' has incomplete type

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agodavinci_emac: fix race in transmit time stamping.
Richard Cochran [Sun, 19 Jun 2011 03:31:45 +0000 (03:31 +0000)]
davinci_emac: fix race in transmit time stamping.

Signed-off-by: Richard Cochran <richard.cochran@omicron.at>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agosmsc9420: fix race in transmit time stamping.
Richard Cochran [Sun, 19 Jun 2011 03:31:44 +0000 (03:31 +0000)]
smsc9420: fix race in transmit time stamping.

Signed-off-by: Richard Cochran <richard.cochran@omicron.at>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agostmmac: fix race in transmit time stamping.
Richard Cochran [Sun, 19 Jun 2011 03:31:43 +0000 (03:31 +0000)]
stmmac: fix race in transmit time stamping.

Signed-off-by: Richard Cochran <richard.cochran@omicron.at>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agor6040: fix race in transmit time stamping.
Richard Cochran [Sun, 19 Jun 2011 03:31:42 +0000 (03:31 +0000)]
r6040: fix race in transmit time stamping.

Signed-off-by: Richard Cochran <richard.cochran@omicron.at>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agotg3: fix race in transmit time stamping.
Richard Cochran [Sun, 19 Jun 2011 03:31:41 +0000 (03:31 +0000)]
tg3: fix race in transmit time stamping.

Signed-off-by: Richard Cochran <richard.cochran@omicron.at>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agofec: fix race in transmit time stamping.
Richard Cochran [Sun, 19 Jun 2011 03:31:40 +0000 (03:31 +0000)]
fec: fix race in transmit time stamping.

Signed-off-by: Richard Cochran <richard.cochran@omicron.at>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agonet: correct comment on where to place transmit time stamp hook.
Richard Cochran [Sun, 19 Jun 2011 03:31:39 +0000 (03:31 +0000)]
net: correct comment on where to place transmit time stamp hook.

The comment for the skb_tx_timestamp() function suggests calling it just
after a buffer is released to the hardware for transmission. However,
for drivers that free the buffer in an ISR, this produces a race between
the time stamp code and the ISR. This commit changes the comment to advise
placing the call just before handing the buffer over to the hardware.

Signed-off-by: Richard Cochran <richard.cochran@omicron.at>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agor8169: check firmware content sooner.
Francois Romieu [Fri, 17 Jun 2011 22:10:29 +0000 (00:10 +0200)]
r8169: check firmware content sooner.

Firmware checking is only performed when the firmware is loaded
instead of each time the driver inits the phy.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
12 years agor8169: support new firmware format.
Hayes Wang [Sat, 18 Jun 2011 09:37:48 +0000 (11:37 +0200)]
r8169: support new firmware format.

The new firmware format adds versioning as firmware for a specific
chipset appears to be subject to change. Current "legacy" format is
still supported.

Signed-off-by: Hayes Wang <hayeswang@realtek.com>
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
12 years agor8169: explicit firmware format check.
Francois Romieu [Fri, 17 Jun 2011 15:16:24 +0000 (17:16 +0200)]
r8169: explicit firmware format check.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
12 years agor8169: move the firmware down into the device private data.
Francois Romieu [Fri, 17 Jun 2011 15:00:05 +0000 (17:00 +0200)]
r8169: move the firmware down into the device private data.

No functional difference.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
12 years agoe1000: remove unnecessary code
Greg Dietsche [Thu, 16 Jun 2011 07:09:30 +0000 (07:09 +0000)]
e1000: remove unnecessary code

Compile tested.
remove unnecessary code that matches this coccinelle pattern
if (...)
return ret;
return ret;

Signed-off-by: Greg Dietsche <Gregory.Dietsche@cuw.edu>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agonet: icplus: remove unnecessary code
Greg Dietsche [Thu, 16 Jun 2011 07:04:30 +0000 (07:04 +0000)]
net: icplus: remove unnecessary code

Compile tested.
remove unnecessary code that matches this coccinelle pattern
if (...)
return ret;
return ret;

Signed-off-by: Greg Dietsche <Gregory.Dietsche@cuw.edu>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agonet/rds: use prink_ratelimited() instead of printk_ratelimit()
Manuel Zerpies [Thu, 16 Jun 2011 02:09:57 +0000 (02:09 +0000)]
net/rds: use prink_ratelimited() instead of printk_ratelimit()

Since printk_ratelimit() shouldn't be used anymore (see comment in
include/linux/printk.h), replace it with printk_ratelimited()

Signed-off-by: Manuel Zerpies <manuel.f.zerpies@ww.stud.uni-erlangen.de>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agonet/can: use printk_ratelimited() instead of printk_ratelimit()
Manuel Zerpies [Thu, 16 Jun 2011 02:08:01 +0000 (02:08 +0000)]
net/can: use printk_ratelimited() instead of printk_ratelimit()

Since printk_ratelimit() shouldn't be used anymore (see comment in
include/linux/printk.h), replace it with printk_ratelimited().

Signed-off-by: Manuel Zerpies <manuel.f.zerpies@ww.stud.uni-erlangen.de>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agortnetlink: unlock on error path in netlink_dump()
Dan Carpenter [Wed, 15 Jun 2011 03:11:42 +0000 (03:11 +0000)]
rtnetlink: unlock on error path in netlink_dump()

In c7ac8679bec939 "rtnetlink: Compute and store minimum ifinfo dump
size", we moved the allocation under the lock so we need to unlock
on error path.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agogianfar: Use pr_<level>, netdev_<level> and netif_<level>
Joe Perches [Tue, 14 Jun 2011 08:57:47 +0000 (08:57 +0000)]
gianfar: Use pr_<level>, netdev_<level> and netif_<level>

Use the current logging styles.

Add #define DEBUG to get same output for <foo>_dbg messages.
Convert a few bare printks to pr_err.

Fix a likely copy/paste defect where a test was done with RX values:
        if (num_rx_qs > MAX_RX_QS) {
but TX limits were emitted:
        printk(KERN_ERR "num_rx_qs(=%d) greater than MAX_RX_QS(=%d)\n",
                              num_tx_qs, MAX_TX_QS);

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agonet: Remove casts of void *
Joe Perches [Mon, 13 Jun 2011 16:21:26 +0000 (16:21 +0000)]
net: Remove casts of void *

Unnecessary casts of void * clutter the code.

These are the remainder casts after several specific
patches to remove netdev_priv and dev_priv.

Done via coccinelle script:

$ cat cast_void_pointer.cocci
@@
type T;
T *pt;
void *pv;
@@

- pt = (T *)pv;
+ pt = pv;

Signed-off-by: Joe Perches <joe@perches.com>
Acked-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobe2net: support multiple TX queues
Sathya Perla [Sun, 12 Jun 2011 20:01:58 +0000 (20:01 +0000)]
be2net: support multiple TX queues

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>
12 years agonetfilter: ipset: whitespace and coding fixes detected by checkpatch.pl
Jozsef Kadlecsik [Thu, 16 Jun 2011 17:01:26 +0000 (19:01 +0200)]
netfilter: ipset: whitespace and coding fixes detected by checkpatch.pl

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Signed-off-by: Patrick McHardy <kaber@trash.net>
12 years agonetfilter: ipset: hash:net,iface type introduced
Jozsef Kadlecsik [Thu, 16 Jun 2011 17:00:48 +0000 (19:00 +0200)]
netfilter: ipset: hash:net,iface type introduced

The hash:net,iface type makes possible to store network address and
interface name pairs in a set. It's mostly suitable for egress
and ingress filtering. Examples:

        # ipset create test hash:net,iface
        # ipset add test 192.168.0.0/16,eth0
        # ipset add test 192.168.0.0/24,eth1

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Signed-off-by: Patrick McHardy <kaber@trash.net>
12 years agonetfilter: ipset: use the stored first cidr value instead of '1'
Jozsef Kadlecsik [Thu, 16 Jun 2011 16:58:20 +0000 (18:58 +0200)]
netfilter: ipset: use the stored first cidr value instead of '1'

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Signed-off-by: Patrick McHardy <kaber@trash.net>
12 years agonetfilter: ipset: fix return code for destroy when sets are in use
Jozsef Kadlecsik [Thu, 16 Jun 2011 16:57:44 +0000 (18:57 +0200)]
netfilter: ipset: fix return code for destroy when sets are in use

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Signed-off-by: Patrick McHardy <kaber@trash.net>
12 years agonetfilter: ipset: add xt_action_param to the variant level kadt functions, ipset...
Jozsef Kadlecsik [Thu, 16 Jun 2011 16:56:47 +0000 (18:56 +0200)]
netfilter: ipset: add xt_action_param to the variant level kadt functions, ipset API change

With the change the sets can use any parameter available for the match
and target extensions, like input/output interface. It's required for
the hash:net,iface set type.

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Signed-off-by: Patrick McHardy <kaber@trash.net>
12 years agonetfilter: ipset: use unified from/to address masking and check the usage
Jozsef Kadlecsik [Thu, 16 Jun 2011 16:55:58 +0000 (18:55 +0200)]
netfilter: ipset: use unified from/to address masking and check the usage

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Signed-off-by: Patrick McHardy <kaber@trash.net>
12 years agonetfilter: ipset: take into account cidr value for the from address when creating...
Jozsef Kadlecsik [Thu, 16 Jun 2011 16:54:43 +0000 (18:54 +0200)]
netfilter: ipset: take into account cidr value for the from address when creating the set

When creating a set from a range expressed as a network like
10.1.1.172/29, the from address was taken as the IP address part and
not masked with the netmask from the cidr.

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Signed-off-by: Patrick McHardy <kaber@trash.net>
12 years agonetfilter: ipset: adding ranges to hash types with timeout could still fail, fixed
Jozsef Kadlecsik [Thu, 16 Jun 2011 16:53:51 +0000 (18:53 +0200)]
netfilter: ipset: adding ranges to hash types with timeout could still fail, fixed

The patch "Fix adding ranges to hash types" had got a mistypeing
in the timeout variant of the hash types, which actually made
the patch ineffective. Fixed!

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Signed-off-by: Patrick McHardy <kaber@trash.net>
12 years agonetfilter: ipset: support range for IPv4 at adding/deleting elements for hash:*net...
Jozsef Kadlecsik [Thu, 16 Jun 2011 16:52:41 +0000 (18:52 +0200)]
netfilter: ipset: support range for IPv4 at adding/deleting elements for hash:*net* types

The range internally is converted to the network(s) equal to the range.
Example:

# ipset new test hash:net
# ipset add test 10.2.0.0-10.2.1.12
# ipset list test
Name: test
Type: hash:net
Header: family inet hashsize 1024 maxelem 65536
Size in memory: 16888
References: 0
Members:
10.2.1.12
10.2.1.0/29
10.2.0.0/24
10.2.1.8/30

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Signed-off-by: Patrick McHardy <kaber@trash.net>
12 years agonetfilter: ipset: set type support with multiple revisions added
Jozsef Kadlecsik [Thu, 16 Jun 2011 16:51:41 +0000 (18:51 +0200)]
netfilter: ipset: set type support with multiple revisions added

A set type may have multiple revisions, for example when syntax is
extended. Support continuous revision ranges in set types.

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Signed-off-by: Patrick McHardy <kaber@trash.net>
12 years agonetfilter: ipset: fix adding ranges to hash types
Jozsef Kadlecsik [Thu, 16 Jun 2011 16:49:17 +0000 (18:49 +0200)]
netfilter: ipset: fix adding ranges to hash types

When ranges are added to hash types, the elements may trigger rehashing
the set. However, the last successfully added element was not kept track
so the adding started again with the first element after the rehashing.

Bug reported by Mr Dash Four.

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Signed-off-by: Patrick McHardy <kaber@trash.net>
12 years agonetfilter: ipset: support listing setnames and headers too
Jozsef Kadlecsik [Thu, 16 Jun 2011 16:47:07 +0000 (18:47 +0200)]
netfilter: ipset: support listing setnames and headers too

Current listing makes possible to list sets with full content only.
The patch adds support partial listings, i.e. listing just
the existing setnames or listing set headers, without set members.

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Signed-off-by: Patrick McHardy <kaber@trash.net>
12 years agonetfilter: ipset: options and flags support added to the kernel API
Jozsef Kadlecsik [Thu, 16 Jun 2011 16:42:40 +0000 (18:42 +0200)]
netfilter: ipset: options and flags support added to the kernel API

The support makes possible to specify the timeout value for
the SET target and a flag to reset the timeout for already existing
entries.

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Signed-off-by: Patrick McHardy <kaber@trash.net>
12 years agonetfilter: ipset: whitespace fixes: some space before tab slipped in
Jozsef Kadlecsik [Thu, 16 Jun 2011 16:41:53 +0000 (18:41 +0200)]
netfilter: ipset: whitespace fixes: some space before tab slipped in

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Signed-off-by: Patrick McHardy <kaber@trash.net>
12 years agonetfilter: ipset: timeout can be modified for already added elements
Jozsef Kadlecsik [Thu, 16 Jun 2011 16:40:55 +0000 (18:40 +0200)]
netfilter: ipset: timeout can be modified for already added elements

When an element to a set with timeout added, one can change the timeout
by "readding" the element with the "-exist" flag. That means the timeout
value is reset to the specified one (or to the default from the set
specification if the "timeout n" option is not used). Example

ipset add foo 1.2.3.4 timeout 10
ipset add foo 1.2.3.4 timeout 600 -exist

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Signed-off-by: Patrick McHardy <kaber@trash.net>
12 years agoMerge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/ipvs...
Patrick McHardy [Thu, 16 Jun 2011 15:05:24 +0000 (17:05 +0200)]
Merge branch 'master' of git://git./linux/kernel/git/horms/ipvs-next-2.6

12 years agoMerge branch 'master' of /repos/git/net-next-2.6
Patrick McHardy [Thu, 16 Jun 2011 15:01:10 +0000 (17:01 +0200)]
Merge branch 'master' of /repos/git/net-next-2.6

12 years agotg3: Create funcs for power source switching
Matt Carlson [Mon, 13 Jun 2011 13:39:02 +0000 (13:39 +0000)]
tg3: Create funcs for power source switching

The power source switching code is about to get a little more complex.
This patch seeks to simplify future power source switching patches by
clarifying the existing code.

Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Reviewed-by: Michael Chan <mchan@broadcom.com>
Reviewed-by: Benjamin Li <benli@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agotg3: Migrate phy preprocessor defs to system defs
Matt Carlson [Mon, 13 Jun 2011 13:39:01 +0000 (13:39 +0000)]
tg3: Migrate phy preprocessor defs to system defs

This patch changes to code to use some of the preprocessor
definitions from mii.h over its homegrown equivalents.

Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Reviewed-by: Michael Chan <mchan@broadcom.com>
Reviewed-by: Benjamin Li <benli@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agotg3: Show flowctrl settings through get_settings()
Matt Carlson [Mon, 13 Jun 2011 13:39:00 +0000 (13:39 +0000)]
tg3: Show flowctrl settings through get_settings()

This patch adds code to present the flow control advertisements through
the ethtool get_settings callback.

Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Reviewed-by: Michael Chan <mchan@broadcom.com>
Reviewed-by: Benjamin Li <benli@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agotg3: Fix EEE debounce timer values
Matt Carlson [Mon, 13 Jun 2011 13:38:59 +0000 (13:38 +0000)]
tg3: Fix EEE debounce timer values

This patch fixes the EEE debounce timer values.

Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Reviewed-by: Michael Chan <mchan@broadcom.com>
Reviewed-by: Benjamin Li <benli@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agotg3: Add more selfboot formats to NVRAM selftest
Matt Carlson [Mon, 13 Jun 2011 13:38:58 +0000 (13:38 +0000)]
tg3: Add more selfboot formats to NVRAM selftest

This patch adds more selfboot formats to the NVRAM selftest.  It also
changes the code to return an error on an unsupported NVRAM format.

Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Reviewed-by: Michael Chan <mchan@broadcom.com>
Reviewed-by: Benjamin Li <benli@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agotg3: Remove 4G_DMA_BNDRY_BUG flag
Matt Carlson [Mon, 13 Jun 2011 13:38:57 +0000 (13:38 +0000)]
tg3: Remove 4G_DMA_BNDRY_BUG flag

Now that all chips have this bug, the flag checks become useless code.
This patch removes the flag.

Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Reviewed-by: Michael Chan <mchan@broadcom.com>
Reviewed-by: Benjamin Li <benli@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agotg3: Remove 40BIT_DMA_LIMIT_BUG
Matt Carlson [Mon, 13 Jun 2011 13:38:56 +0000 (13:38 +0000)]
tg3: Remove 40BIT_DMA_LIMIT_BUG

This patch removes the 40BIT_DMA_LIMIT_BUG flag.  There already exists a
flag for this purpose (TG3_FLAG_40BIT_DMA_BUG) and was already being
used in the correct spot.

Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Reviewed-by: Michael Chan <mchan@broadcom.com>
Reviewed-by: Benjamin Li <benli@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agotg3: Workaround tagged status update bug
Matt Carlson [Mon, 13 Jun 2011 13:38:55 +0000 (13:38 +0000)]
tg3: Workaround tagged status update bug

On rare occasions, writing the tag to the interrupt mailbox does not
reenable interrupts.  This patch fixes the problem by reissuing the
mailbox update.

Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Signed-off-by: Michael Chan <mchan@broadcom.com>
Reviewed-by: Benjamin Li <benli@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobnx2x: Update date to 2011/06/13 and version to 1.70.00-0
Vladislav Zolotarov [Tue, 14 Jun 2011 01:34:46 +0000 (01:34 +0000)]
bnx2x: Update date to 2011/06/13 and version to 1.70.00-0

Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobnx2x: PFC support for 578xx
Dmitry Kravkov [Tue, 14 Jun 2011 01:34:42 +0000 (01:34 +0000)]
bnx2x: PFC support for 578xx

Add supoprt for 3 COSes for 578xx devices.
Fix HW configuration for PFC feature according to new HSI in link layer.

Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobnx2x: Rename LASI registers to definitions in mdio.h
Yaniv Rosner [Tue, 14 Jun 2011 01:34:38 +0000 (01:34 +0000)]
bnx2x: Rename LASI registers to definitions in mdio.h

Signed-off-by: Yaniv Rosner <yanivr@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobnx2x: Add a periodic task for link PHY events
Yaniv Rosner [Tue, 14 Jun 2011 01:34:33 +0000 (01:34 +0000)]
bnx2x: Add a periodic task for link PHY events

Signed-off-by: Yaniv Rosner <yanivr@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobnx2x: Adjust BCM84833 to BCM578xx
Yaniv Rosner [Tue, 14 Jun 2011 01:34:27 +0000 (01:34 +0000)]
bnx2x: Adjust BCM84833 to BCM578xx

Signed-off-by: Yaniv Rosner <yanivr@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobnx2x: Adjust ETS to 578xx
Yaniv Rosner [Tue, 14 Jun 2011 01:34:23 +0000 (01:34 +0000)]
bnx2x: Adjust ETS to 578xx

Signed-off-by: Yaniv Rosner <yanivr@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobnx2x: Add new PHY 54616s
Yaniv Rosner [Tue, 14 Jun 2011 01:34:17 +0000 (01:34 +0000)]
bnx2x: Add new PHY 54616s

Signed-off-by: Yaniv Rosner <yanivr@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobnx2x: Add Warpcore support for 578xx
Yaniv Rosner [Tue, 14 Jun 2011 01:34:12 +0000 (01:34 +0000)]
bnx2x: Add Warpcore support for 578xx

Signed-off-by: Yaniv Rosner <yanivr@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobnx2x: Add new MAC support for 578xx
Yaniv Rosner [Tue, 14 Jun 2011 01:34:07 +0000 (01:34 +0000)]
bnx2x: Add new MAC support for 578xx

Signed-off-by: Yaniv Rosner <yanivr@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobnx2x: Cosmetic changes.
Dmitry Kravkov [Tue, 14 Jun 2011 01:34:02 +0000 (01:34 +0000)]
bnx2x: Cosmetic changes.

Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobnx2x: update DCB data during PMF migration
Dmitry Kravkov [Tue, 14 Jun 2011 01:33:57 +0000 (01:33 +0000)]
bnx2x: update DCB data during PMF migration

Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobnx2x: 57712 parity handling
Vladislav Zolotarov [Tue, 14 Jun 2011 01:33:51 +0000 (01:33 +0000)]
bnx2x: 57712 parity handling

- Added support for a parity error handling for a 57712 chip.
 - Changed the parity recovery scheme from per-chip to per-engine.

Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agoNew 7.0 FW: bnx2x, cnic, bnx2i, bnx2fc
Vlad Zolotarov [Tue, 14 Jun 2011 11:33:44 +0000 (14:33 +0300)]
New 7.0 FW: bnx2x, cnic, bnx2i, bnx2fc

New FW/HSI (7.0):
 - Added support to 578xx chips
 - Improved HSI - much less driver's direct access to the FW internal
   memory needed.

New implementation of the HSI handling layer in the bnx2x (bnx2x_sp.c):
 - Introduced chip dependent objects that have chip independent interfaces
   for configuration of MACs, multicast addresses, Rx mode, indirection table,
   fast path queues and function initialization/cleanup.
 - Objects functionality is based on the private function pointers, which
   allows not only a per-chip but also PF/VF differentiation while still
   preserving the same interface towards the driver.
 - Objects interface is not influenced by the HSI changes which do not require
   providing new parameters keeping the code outside the bnx2x_sp.c invariant
   with regard to such HSI chnages.

Changes in a CNIC, bnx2fc and bnx2i modules due to the new HSI.

Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: Bhanu Prakash Gollapudi <bprakash@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobnx2x: Created bnx2x_sp
Vladislav Zolotarov [Tue, 14 Jun 2011 01:33:39 +0000 (01:33 +0000)]
bnx2x: Created bnx2x_sp

Moved the HSI dependent slow path code to a separate file.
Currently it contains the implementation of MACs, Rx mode,
multicast addresses, indirection table, fast path queue and function
configuration code.

Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobnx2x: removed unused variables
Dmitry Kravkov [Tue, 14 Jun 2011 01:33:34 +0000 (01:33 +0000)]
bnx2x: removed unused variables

Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobnx2x: use bnx2x_reload_if_running
Dmitry Kravkov [Tue, 14 Jun 2011 01:33:30 +0000 (01:33 +0000)]
bnx2x: use bnx2x_reload_if_running

Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobnx2x: dump FW memory when appropriate msglvl is raised
Dmitry Kravkov [Tue, 14 Jun 2011 01:33:25 +0000 (01:33 +0000)]
bnx2x: dump FW memory when appropriate msglvl is raised

Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobnx2x: do not call link update without HW notification
Yaniv Rosner [Tue, 14 Jun 2011 01:33:19 +0000 (01:33 +0000)]
bnx2x: do not call link update without HW notification

Signed-off-by: Yaniv Rosner <yanivr@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobnx2x: disable fairness if ETS is enabled
Dmitry Kravkov [Tue, 14 Jun 2011 01:33:13 +0000 (01:33 +0000)]
bnx2x: disable fairness if ETS is enabled

Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobnx2x: avoid release of unrequested irqs
Dmitry Kravkov [Tue, 14 Jun 2011 01:33:08 +0000 (01:33 +0000)]
bnx2x: avoid release of unrequested irqs

Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobnx2x: put start bd csum in separate function
Dmitry Kravkov [Tue, 14 Jun 2011 01:33:02 +0000 (01:33 +0000)]
bnx2x: put start bd csum in separate function

Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobnx2x: remove references to intr_sem
Dmitry Kravkov [Tue, 14 Jun 2011 01:32:53 +0000 (01:32 +0000)]
bnx2x: remove references to intr_sem

It's not needed any more since device always operates in interrupt-driven mode

Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobnx2x: do not allocate FCoE ring if disabled
Dmitry Kravkov [Tue, 14 Jun 2011 01:32:47 +0000 (01:32 +0000)]
bnx2x: do not allocate FCoE ring if disabled

Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agocnic: Move indexing function pointers to struct kcq_info
Michael Chan [Tue, 14 Jun 2011 01:32:38 +0000 (01:32 +0000)]
cnic: Move indexing function pointers to struct kcq_info

The hardware indexing scheme for the FCoE kcq will change in the upcoming
firmware.  This patch will cope with the change easily.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agoIPVS: remove unused init and cleanup functions.
Hans Schillstrom [Mon, 13 Jun 2011 10:19:27 +0000 (12:19 +0200)]
IPVS: remove unused init and cleanup functions.

After restructuring, there is some unused or empty functions
left to be removed.

Signed-off-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
12 years agoIPVS: labels at pos 0
Hans Schillstrom [Mon, 13 Jun 2011 10:19:26 +0000 (12:19 +0200)]
IPVS: labels at pos 0

Put goto labels at the beginig of row
acording to coding style example.

Signed-off-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
12 years agovmxnet3: remove unused variable
Neil Horman [Mon, 13 Jun 2011 05:48:30 +0000 (05:48 +0000)]
vmxnet3: remove unused variable

While doing some backporting I noticed that vmxnet3 had a variable that was set
but never used.  Get rid of it, and stop the compiler from griping

Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
CC: "VMware, Inc." <pv-drivers@vmware.com>
CC: "David S. Miller" <davem@davemloft.net>
Signed-off-by: Bhavesh Davda <bhavesh@vmware.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>
12 years agobonding:delete a dereference before check
Peter Pan(潘卫平) [Mon, 13 Jun 2011 04:30:10 +0000 (04:30 +0000)]
bonding:delete a dereference before check

Dan Carpenter found that there was a dereference before a check,
added in 56d00c677de0(bonding:delete lacp_fast from ad_bond_info).

Signed-off-by: Weiping Pan <panweiping3@gmail.com>
Signed-off-by: Jay Vosburgh <fubar@us.ibm.com>
Signed-off-by: David S. Miller <davem@conan.davemloft.net>