aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-04-27 20:49:50 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-04-27 20:49:50 -0400
commitb9099ff63c75216d6ca10bce5a1abcd9293c27e6 (patch)
tree244c167220a1921156cdf24eb19f663f25e9c517
parent940155309cd037d3a49ad01276e591b872e8a832 (diff)
parentdc5a144991ba803bc8afded105c9db1dea0e57ab (diff)
Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6
* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6: sis900: Allocate rx replacement buffer before rx operation usb-net/pegasus: simplify carrier detection
-rw-r--r--drivers/net/sis900.c9
-rw-r--r--drivers/usb/net/pegasus.c10
-rw-r--r--drivers/usb/net/pegasus.h3
3 files changed, 6 insertions, 16 deletions
diff --git a/drivers/net/sis900.c b/drivers/net/sis900.c
index dea0126723da..2cb2e156c758 100644
--- a/drivers/net/sis900.c
+++ b/drivers/net/sis900.c
@@ -1753,6 +1753,7 @@ static int sis900_rx(struct net_device *net_dev)
1753 sis_priv->rx_ring[entry].cmdsts = RX_BUF_SIZE; 1753 sis_priv->rx_ring[entry].cmdsts = RX_BUF_SIZE;
1754 } else { 1754 } else {
1755 struct sk_buff * skb; 1755 struct sk_buff * skb;
1756 struct sk_buff * rx_skb;
1756 1757
1757 pci_unmap_single(sis_priv->pci_dev, 1758 pci_unmap_single(sis_priv->pci_dev,
1758 sis_priv->rx_ring[entry].bufptr, RX_BUF_SIZE, 1759 sis_priv->rx_ring[entry].bufptr, RX_BUF_SIZE,
@@ -1786,10 +1787,10 @@ static int sis900_rx(struct net_device *net_dev)
1786 } 1787 }
1787 1788
1788 /* give the socket buffer to upper layers */ 1789 /* give the socket buffer to upper layers */
1789 skb = sis_priv->rx_skbuff[entry]; 1790 rx_skb = sis_priv->rx_skbuff[entry];
1790 skb_put(skb, rx_size); 1791 skb_put(rx_skb, rx_size);
1791 skb->protocol = eth_type_trans(skb, net_dev); 1792 rx_skb->protocol = eth_type_trans(rx_skb, net_dev);
1792 netif_rx(skb); 1793 netif_rx(rx_skb);
1793 1794
1794 /* some network statistics */ 1795 /* some network statistics */
1795 if ((rx_status & BCAST) == MCAST) 1796 if ((rx_status & BCAST) == MCAST)
diff --git a/drivers/usb/net/pegasus.c b/drivers/usb/net/pegasus.c
index 1ad4ee54b186..a05fd97e5bc2 100644
--- a/drivers/usb/net/pegasus.c
+++ b/drivers/usb/net/pegasus.c
@@ -847,16 +847,6 @@ static void intr_callback(struct urb *urb)
847 * d[0].NO_CARRIER kicks in only with failed TX. 847 * d[0].NO_CARRIER kicks in only with failed TX.
848 * ... so monitoring with MII may be safest. 848 * ... so monitoring with MII may be safest.
849 */ 849 */
850 if (pegasus->features & TRUST_LINK_STATUS) {
851 if (d[5] & LINK_STATUS)
852 netif_carrier_on(net);
853 else
854 netif_carrier_off(net);
855 } else {
856 /* Never set carrier _on_ based on ! NO_CARRIER */
857 if (d[0] & NO_CARRIER)
858 netif_carrier_off(net);
859 }
860 850
861 /* bytes 3-4 == rx_lostpkt, reg 2E/2F */ 851 /* bytes 3-4 == rx_lostpkt, reg 2E/2F */
862 pegasus->stats.rx_missed_errors += ((d[3] & 0x7f) << 8) | d[4]; 852 pegasus->stats.rx_missed_errors += ((d[3] & 0x7f) << 8) | d[4];
diff --git a/drivers/usb/net/pegasus.h b/drivers/usb/net/pegasus.h
index c7aadb413e8c..c7467823cd1c 100644
--- a/drivers/usb/net/pegasus.h
+++ b/drivers/usb/net/pegasus.h
@@ -11,7 +11,6 @@
11 11
12#define PEGASUS_II 0x80000000 12#define PEGASUS_II 0x80000000
13#define HAS_HOME_PNA 0x40000000 13#define HAS_HOME_PNA 0x40000000
14#define TRUST_LINK_STATUS 0x20000000
15 14
16#define PEGASUS_MTU 1536 15#define PEGASUS_MTU 1536
17#define RX_SKBS 4 16#define RX_SKBS 4
@@ -204,7 +203,7 @@ PEGASUS_DEV( "AEI USB Fast Ethernet Adapter", VENDOR_AEILAB, 0x1701,
204PEGASUS_DEV( "Allied Telesyn Int. AT-USB100", VENDOR_ALLIEDTEL, 0xb100, 203PEGASUS_DEV( "Allied Telesyn Int. AT-USB100", VENDOR_ALLIEDTEL, 0xb100,
205 DEFAULT_GPIO_RESET | PEGASUS_II ) 204 DEFAULT_GPIO_RESET | PEGASUS_II )
206PEGASUS_DEV( "Belkin F5D5050 USB Ethernet", VENDOR_BELKIN, 0x0121, 205PEGASUS_DEV( "Belkin F5D5050 USB Ethernet", VENDOR_BELKIN, 0x0121,
207 DEFAULT_GPIO_RESET | PEGASUS_II | TRUST_LINK_STATUS ) 206 DEFAULT_GPIO_RESET | PEGASUS_II )
208PEGASUS_DEV( "Billionton USB-100", VENDOR_BILLIONTON, 0x0986, 207PEGASUS_DEV( "Billionton USB-100", VENDOR_BILLIONTON, 0x0986,
209 DEFAULT_GPIO_RESET ) 208 DEFAULT_GPIO_RESET )
210PEGASUS_DEV( "Billionton USBLP-100", VENDOR_BILLIONTON, 0x0987, 209PEGASUS_DEV( "Billionton USBLP-100", VENDOR_BILLIONTON, 0x0987,