Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b791dd3e authored by David S. Miller's avatar David S. Miller
Browse files

Merge branch 'upstream-davem' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6

parents 96b5a46e 651be3a2
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -168,7 +168,7 @@ static int debug = -1;
 * Warning: 64K ring has hardware issues and may lock up.
 */
#if defined(CONFIG_SH_DREAMCAST)
#define RX_BUF_IDX	1	/* 16K ring */
#define RX_BUF_IDX 0	/* 8K ring */
#else
#define RX_BUF_IDX	2	/* 32K ring */
#endif
+18 −0
Original line number Diff line number Diff line
@@ -931,6 +931,14 @@ config ENC28J60_WRITEVERIFY
	  Enable the verify after the buffer write useful for debugging purpose.
	  If unsure, say N.

config DM9000_DEBUGLEVEL
	int "DM9000 maximum debug level"
	depends on DM9000
	default 4
	help
	  The maximum level of debugging code compiled into the DM9000
	  driver.

config SMC911X
	tristate "SMSC LAN911[5678] support"
	select CRC32
@@ -2352,6 +2360,16 @@ config GELIC_NET
	  To compile this driver as a module, choose M here: the
	  module will be called ps3_gelic.

config GELIC_WIRELESS
       bool "PS3 Wireless support"
       depends on GELIC_NET
       help
        This option adds the support for the wireless feature of PS3.
        If you have the wireless-less model of PS3 or have no plan to
        use wireless feature, disabling this option saves memory.  As
        the driver automatically distinguishes the models, you can
        safely enable this option even if you have a wireless-less model.

config GIANFAR
	tristate "Gianfar Ethernet"
	depends on FSL_SOC
+2 −1
Original line number Diff line number Diff line
@@ -70,7 +70,8 @@ obj-$(CONFIG_BNX2X) += bnx2x.o
spidernet-y += spider_net.o spider_net_ethtool.o
obj-$(CONFIG_SPIDER_NET) += spidernet.o sungem_phy.o
obj-$(CONFIG_GELIC_NET) += ps3_gelic.o
ps3_gelic-objs += ps3_gelic_net.o
gelic_wireless-$(CONFIG_GELIC_WIRELESS) += ps3_gelic_wireless.o
ps3_gelic-objs += ps3_gelic_net.o $(gelic_wireless-y)
obj-$(CONFIG_TC35815) += tc35815.o
obj-$(CONFIG_SKGE) += skge.o
obj-$(CONFIG_SKY2) += sky2.o
+1 −1
Original line number Diff line number Diff line
@@ -404,7 +404,7 @@ found:
			if (neigh->nud_state & NUD_FAILED) {
				arpq = e->arpq_head;
				e->arpq_head = e->arpq_tail = NULL;
			} else if (neigh_is_connected(neigh))
			} else if (neigh->nud_state & (NUD_CONNECTED|NUD_STALE))
				setup_l2e_send_pending(dev, NULL, e);
		} else {
			e->state = neigh_is_connected(neigh) ?
+15 −20
Original line number Diff line number Diff line
@@ -1059,6 +1059,14 @@ static void write_tx_pkt_wr(struct adapter *adap, struct sk_buff *skb,
			 htonl(V_WR_TID(q->token)));
}

static inline void t3_stop_queue(struct net_device *dev, struct sge_qset *qs,
				 struct sge_txq *q)
{
	netif_stop_queue(dev);
	set_bit(TXQ_ETH, &qs->txq_stopped);
	q->stops++;
}

/**
 *	eth_xmit - add a packet to the Ethernet Tx queue
 *	@skb: the packet
@@ -1090,31 +1098,18 @@ int t3_eth_xmit(struct sk_buff *skb, struct net_device *dev)
	ndesc = calc_tx_descs(skb);

	if (unlikely(credits < ndesc)) {
		if (!netif_queue_stopped(dev)) {
			netif_stop_queue(dev);
			set_bit(TXQ_ETH, &qs->txq_stopped);
			q->stops++;
		t3_stop_queue(dev, qs, q);
		dev_err(&adap->pdev->dev,
			"%s: Tx ring %u full while queue awake!\n",
			dev->name, q->cntxt_id & 7);
		}
		spin_unlock(&q->lock);
		return NETDEV_TX_BUSY;
	}

	q->in_use += ndesc;
	if (unlikely(credits - ndesc < q->stop_thres)) {
		q->stops++;
		netif_stop_queue(dev);
		set_bit(TXQ_ETH, &qs->txq_stopped);
#if !USE_GTS
		if (should_restart_tx(q) &&
		    test_and_clear_bit(TXQ_ETH, &qs->txq_stopped)) {
			q->restarts++;
			netif_wake_queue(dev);
		}
#endif
	}
	if (unlikely(credits - ndesc < q->stop_thres))
		if (USE_GTS || !should_restart_tx(q))
			t3_stop_queue(dev, qs, q);

	gen = q->gen;
	q->unacked += ndesc;
Loading