diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-10-23 14:47:02 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-10-23 14:47:02 -0400 |
commit | 5f05647dd81c11a6a165ccc8f0c1370b16f3bcb0 (patch) | |
tree | 7851ef1c93aa1aba7ef327ca4b75fd35e6d10f29 /drivers/net/wireless/orinoco | |
parent | 02f36038c568111ad4fc433f6fa760ff5e38fab4 (diff) | |
parent | ec37a48d1d16c30b655ac5280209edf52a6775d4 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1699 commits)
bnx2/bnx2x: Unsupported Ethtool operations should return -EINVAL.
vlan: Calling vlan_hwaccel_do_receive() is always valid.
tproxy: use the interface primary IP address as a default value for --on-ip
tproxy: added IPv6 support to the socket match
cxgb3: function namespace cleanup
tproxy: added IPv6 support to the TPROXY target
tproxy: added IPv6 socket lookup function to nf_tproxy_core
be2net: Changes to use only priority codes allowed by f/w
tproxy: allow non-local binds of IPv6 sockets if IP_TRANSPARENT is enabled
tproxy: added tproxy sockopt interface in the IPV6 layer
tproxy: added udp6_lib_lookup function
tproxy: added const specifiers to udp lookup functions
tproxy: split off ipv6 defragmentation to a separate module
l2tp: small cleanup
nf_nat: restrict ICMP translation for embedded header
can: mcp251x: fix generation of error frames
can: mcp251x: fix endless loop in interrupt handler if CANINTF_MERRF is set
can-raw: add msg_flags to distinguish local traffic
9p: client code cleanup
rds: make local functions/variables static
...
Fix up conflicts in net/core/dev.c, drivers/net/pcmcia/smc91c92_cs.c and
drivers/net/wireless/ath/ath9k/debug.c as per David
Diffstat (limited to 'drivers/net/wireless/orinoco')
-rw-r--r-- | drivers/net/wireless/orinoco/hw.c | 9 | ||||
-rw-r--r-- | drivers/net/wireless/orinoco/wext.c | 11 |
2 files changed, 15 insertions, 5 deletions
diff --git a/drivers/net/wireless/orinoco/hw.c b/drivers/net/wireless/orinoco/hw.c index 077baa86756b..b4772c1c6135 100644 --- a/drivers/net/wireless/orinoco/hw.c +++ b/drivers/net/wireless/orinoco/hw.c | |||
@@ -762,14 +762,17 @@ int orinoco_hw_get_act_bitrate(struct orinoco_private *priv, int *bitrate) | |||
762 | case FIRMWARE_TYPE_INTERSIL: /* Intersil style rate */ | 762 | case FIRMWARE_TYPE_INTERSIL: /* Intersil style rate */ |
763 | case FIRMWARE_TYPE_SYMBOL: /* Symbol style rate */ | 763 | case FIRMWARE_TYPE_SYMBOL: /* Symbol style rate */ |
764 | for (i = 0; i < BITRATE_TABLE_SIZE; i++) | 764 | for (i = 0; i < BITRATE_TABLE_SIZE; i++) |
765 | if (bitrate_table[i].intersil_txratectrl == val) | 765 | if (bitrate_table[i].intersil_txratectrl == val) { |
766 | *bitrate = bitrate_table[i].bitrate * 100000; | ||
766 | break; | 767 | break; |
768 | } | ||
767 | 769 | ||
768 | if (i >= BITRATE_TABLE_SIZE) | 770 | if (i >= BITRATE_TABLE_SIZE) { |
769 | printk(KERN_INFO "%s: Unable to determine current bitrate (0x%04hx)\n", | 771 | printk(KERN_INFO "%s: Unable to determine current bitrate (0x%04hx)\n", |
770 | priv->ndev->name, val); | 772 | priv->ndev->name, val); |
773 | err = -EIO; | ||
774 | } | ||
771 | 775 | ||
772 | *bitrate = bitrate_table[i].bitrate * 100000; | ||
773 | break; | 776 | break; |
774 | default: | 777 | default: |
775 | BUG(); | 778 | BUG(); |
diff --git a/drivers/net/wireless/orinoco/wext.c b/drivers/net/wireless/orinoco/wext.c index cf7be1eb6124..93505f93bf97 100644 --- a/drivers/net/wireless/orinoco/wext.c +++ b/drivers/net/wireless/orinoco/wext.c | |||
@@ -589,8 +589,15 @@ static int orinoco_ioctl_getrate(struct net_device *dev, | |||
589 | 589 | ||
590 | /* If the interface is running we try to find more about the | 590 | /* If the interface is running we try to find more about the |
591 | current mode */ | 591 | current mode */ |
592 | if (netif_running(dev)) | 592 | if (netif_running(dev)) { |
593 | err = orinoco_hw_get_act_bitrate(priv, &bitrate); | 593 | int act_bitrate; |
594 | int lerr; | ||
595 | |||
596 | /* Ignore errors if we can't get the actual bitrate */ | ||
597 | lerr = orinoco_hw_get_act_bitrate(priv, &act_bitrate); | ||
598 | if (!lerr) | ||
599 | bitrate = act_bitrate; | ||
600 | } | ||
594 | 601 | ||
595 | orinoco_unlock(priv, &flags); | 602 | orinoco_unlock(priv, &flags); |
596 | 603 | ||