remove old wl fixes and some unused qos stuff
SVN-Revision: 742
This commit is contained in:
parent
34d809cf62
commit
60b0fa6315
File diff suppressed because it is too large
Load Diff
@ -1,45 +0,0 @@
|
||||
--- linux-mips-cvs-21012005/net/core/dev.c 2004-04-16 05:14:21.000000000 +0200
|
||||
+++ linux-bridge/net/core/dev.c 2005-01-25 08:15:53.000000000 +0100
|
||||
@@ -1289,6 +1289,19 @@
|
||||
local_irq_save(flags);
|
||||
|
||||
netdev_rx_stat[this_cpu].total++;
|
||||
+
|
||||
+#if defined(CONFIG_BCM4710) && defined(CONFIG_BRIDGE)
|
||||
+ /* Optimisation for framebursting (allow interleaving of pkts by
|
||||
+ immediately processing the rx pkt instead of Qing the pkt and deferring
|
||||
+ the processing). Only optimise for bridging and guard against non
|
||||
+ TASKLET based netif_rx calls.
|
||||
+ */
|
||||
+ if (!in_irq() && skb->dev->br_port != NULL && br_handle_frame_hook != NULL){
|
||||
+ local_irq_restore(flags);
|
||||
+ return(netif_receive_skb(skb));
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
if (queue->input_pkt_queue.qlen <= netdev_max_backlog) {
|
||||
if (queue->input_pkt_queue.qlen) {
|
||||
if (queue->throttle)
|
||||
@@ -2053,6 +2066,7 @@
|
||||
{
|
||||
struct net_device *dev;
|
||||
int err;
|
||||
+ struct net_device_stats *stats;
|
||||
|
||||
if ((dev = __dev_get_by_name(ifr->ifr_name)) == NULL)
|
||||
return -ENODEV;
|
||||
@@ -2167,6 +2181,14 @@
|
||||
ifr->ifr_ifindex = dev->ifindex;
|
||||
return 0;
|
||||
|
||||
+#ifdef PERFORMANCE_SUPPORT
|
||||
+ case SIOCGIFSTATS:
|
||||
+ if (!dev->get_stats || !(stats = dev->get_stats(dev)))
|
||||
+ return -ENODEV;
|
||||
+ if (copy_to_user(ifr->ifr_data, stats, sizeof(struct net_device_stats)))
|
||||
+ return -EFAULT;
|
||||
+ return 0;
|
||||
+#endif
|
||||
case SIOCGIFTXQLEN:
|
||||
ifr->ifr_qlen = dev->tx_queue_len;
|
||||
return 0;
|
@ -1,28 +0,0 @@
|
||||
--- linux-mips-cvs-21012005/include/linux/netdevice.h 2004-11-19 01:28:51.000000000 +0100
|
||||
+++ linux-broadcom/include/linux/netdevice.h 2005-01-26 19:51:37.000000000 +0100
|
||||
@@ -297,7 +297,10 @@
|
||||
* See <net/iw_handler.h> for details. Jean II */
|
||||
struct iw_handler_def * wireless_handlers;
|
||||
|
||||
+#ifndef CONFIG_BCM4710
|
||||
struct ethtool_ops *ethtool_ops;
|
||||
+#endif
|
||||
+
|
||||
|
||||
/*
|
||||
* This marks the end of the "visible" part of the structure. All
|
||||
@@ -353,7 +356,14 @@
|
||||
struct Qdisc *qdisc;
|
||||
struct Qdisc *qdisc_sleeping;
|
||||
struct Qdisc *qdisc_ingress;
|
||||
+ /*
|
||||
+ * this is needed for the wlan driver binary blob from linksys
|
||||
+ */
|
||||
+#ifdef CONFIG_BCM4710
|
||||
+ struct Qdisc *qdisc_list;
|
||||
+#else
|
||||
struct list_head qdisc_list;
|
||||
+#endif
|
||||
unsigned long tx_queue_len; /* Max frames per queue allowed */
|
||||
|
||||
/* hard_start_xmit synchronizer */
|
@ -1,28 +0,0 @@
|
||||
--- linux-mips-cvs-21012005/net/core/Makefile 2004-11-19 01:28:53.000000000 +0100
|
||||
+++ linux-broadcom/net/core/Makefile 2005-01-26 15:56:36.000000000 +0100
|
||||
@@ -9,7 +9,11 @@
|
||||
|
||||
O_TARGET := core.o
|
||||
|
||||
+ifeq ($(CONFIG_BCM4710),y)
|
||||
+export-objs := netfilter.o profile.o neighbour.o
|
||||
+else
|
||||
export-objs := netfilter.o profile.o ethtool.o neighbour.o
|
||||
+endif
|
||||
|
||||
obj-y := sock.o skbuff.o iovec.o datagram.o scm.o
|
||||
|
||||
@@ -21,8 +25,13 @@
|
||||
|
||||
obj-$(CONFIG_FILTER) += filter.o
|
||||
|
||||
+ifeq ($(CONFIG_BCM4710),y)
|
||||
+obj-$(CONFIG_NET) += dev.o dev_mcast.o dst.o neighbour.o \
|
||||
+ rtnetlink.o utils.o
|
||||
+else
|
||||
obj-$(CONFIG_NET) += dev.o ethtool.o dev_mcast.o dst.o neighbour.o \
|
||||
rtnetlink.o utils.o
|
||||
+endif
|
||||
|
||||
obj-$(CONFIG_NETFILTER) += netfilter.o
|
||||
obj-$(CONFIG_NET_DIVERT) += dv.o
|
@ -1,60 +0,0 @@
|
||||
--- linux-mips-cvs-21012005/net/sched/sch_generic.c 2005-01-26 16:31:42.000000000 +0100
|
||||
+++ linux-broadcom/net/sched/sch_generic.c 2005-01-27 05:13:47.000000000 +0100
|
||||
@@ -392,7 +392,11 @@
|
||||
return NULL;
|
||||
memset(sch, 0, size);
|
||||
|
||||
+#ifdef CONFIG_BCM4710
|
||||
+ sch->next = NULL;
|
||||
+#else
|
||||
INIT_LIST_HEAD(&sch->list);
|
||||
+#endif
|
||||
skb_queue_head_init(&sch->q);
|
||||
sch->ops = ops;
|
||||
sch->enqueue = ops->enqueue;
|
||||
@@ -426,7 +430,9 @@
|
||||
if (qdisc->flags&TCQ_F_BUILTIN ||
|
||||
!atomic_dec_and_test(&qdisc->refcnt))
|
||||
return;
|
||||
+#ifndef CONFIG_BCM4710
|
||||
list_del(&qdisc->list);
|
||||
+#endif
|
||||
#ifdef CONFIG_NET_ESTIMATOR
|
||||
qdisc_kill_estimator(&qdisc->stats);
|
||||
#endif
|
||||
@@ -454,9 +460,11 @@
|
||||
printk(KERN_INFO "%s: activation failed\n", dev->name);
|
||||
return;
|
||||
}
|
||||
+#ifndef CONFIG_BCM4710
|
||||
write_lock(&qdisc_tree_lock);
|
||||
list_add_tail(&qdisc->list, &dev->qdisc_list);
|
||||
write_unlock(&qdisc_tree_lock);
|
||||
+#endif
|
||||
|
||||
} else {
|
||||
qdisc = &noqueue_qdisc;
|
||||
@@ -501,7 +509,11 @@
|
||||
dev->qdisc = &noop_qdisc;
|
||||
spin_unlock_bh(&dev->queue_lock);
|
||||
dev->qdisc_sleeping = &noop_qdisc;
|
||||
+#ifdef CONFIG_BCM4710
|
||||
+ dev->qdisc_list = NULL;
|
||||
+#else
|
||||
INIT_LIST_HEAD(&dev->qdisc_list);
|
||||
+#endif
|
||||
write_unlock(&qdisc_tree_lock);
|
||||
|
||||
dev_watchdog_init(dev);
|
||||
@@ -523,7 +535,11 @@
|
||||
qdisc_destroy(qdisc);
|
||||
}
|
||||
#endif
|
||||
+#ifdef CONFIG_BCM4710
|
||||
+ BUG_TRAP(dev->qdisc_list == NULL);
|
||||
+#else
|
||||
BUG_TRAP(list_empty(&dev->qdisc_list));
|
||||
+#endif
|
||||
BUG_TRAP(!timer_pending(&dev->watchdog_timer));
|
||||
spin_unlock_bh(&dev->queue_lock);
|
||||
write_unlock(&qdisc_tree_lock);
|
@ -1,34 +0,0 @@
|
||||
--- linux-mips-cvs-21012005/include/net/pkt_sched.h 2004-11-19 01:28:51.000000000 +0100
|
||||
+++ linux-broadcom/include/net/pkt_sched.h 2005-01-27 04:34:10.000000000 +0100
|
||||
@@ -59,7 +59,11 @@
|
||||
int (*enqueue)(struct sk_buff *, struct Qdisc *);
|
||||
struct sk_buff * (*dequeue)(struct Qdisc *);
|
||||
int (*requeue)(struct sk_buff *, struct Qdisc *);
|
||||
+#ifdef CONFIG_BCM4710
|
||||
+ int (*drop)(struct Qdisc *);
|
||||
+#else
|
||||
unsigned int (*drop)(struct Qdisc *);
|
||||
+#endif
|
||||
|
||||
int (*init)(struct Qdisc *, struct rtattr *arg);
|
||||
void (*reset)(struct Qdisc *);
|
||||
@@ -80,12 +84,19 @@
|
||||
#define TCQ_F_THROTTLED 2
|
||||
#define TCQ_F_INGRESS 4
|
||||
struct Qdisc_ops *ops;
|
||||
+#ifdef CONFIG_BCM4710
|
||||
+ struct Qdisc *next;
|
||||
+#endif
|
||||
u32 handle;
|
||||
+#ifndef CONFIG_BCM4710
|
||||
u32 parent;
|
||||
+#endif
|
||||
atomic_t refcnt;
|
||||
struct sk_buff_head q;
|
||||
struct net_device *dev;
|
||||
+#ifndef CONFIG_BCM4710
|
||||
struct list_head list;
|
||||
+#endif
|
||||
|
||||
struct tc_stats stats;
|
||||
int (*reshape_fail)(struct sk_buff *skb, struct Qdisc *q);
|
@ -1,83 +0,0 @@
|
||||
--- linux-mips-cvs/net/sched/sch_api.c 2004-11-19 01:29:09.000000000 +0100
|
||||
+++ linux-broadcom/net/sched/sch_api.c 2005-01-31 18:07:45.000000000 +0100
|
||||
@@ -194,7 +194,11 @@
|
||||
{
|
||||
struct Qdisc *q;
|
||||
|
||||
+#ifdef CONFIG_BCM4710
|
||||
+ for (q = dev->qdisc_list; q; q = q->next) {
|
||||
+#else
|
||||
list_for_each_entry(q, &dev->qdisc_list, list) {
|
||||
+#endif
|
||||
if (q->handle == handle)
|
||||
return q;
|
||||
}
|
||||
@@ -371,8 +375,10 @@
|
||||
unsigned long cl = cops->get(parent, classid);
|
||||
if (cl) {
|
||||
err = cops->graft(parent, cl, new, old);
|
||||
+#ifndef CONFIG_BCM4710
|
||||
if (new)
|
||||
new->parent = classid;
|
||||
+#endif
|
||||
cops->put(parent, cl);
|
||||
}
|
||||
}
|
||||
@@ -427,7 +433,11 @@
|
||||
|
||||
memset(sch, 0, size);
|
||||
|
||||
+#ifdef CONFIG_BCM4710
|
||||
+ sch->next = NULL;
|
||||
+#else
|
||||
INIT_LIST_HEAD(&sch->list);
|
||||
+#endif
|
||||
skb_queue_head_init(&sch->q);
|
||||
|
||||
if (handle == TC_H_INGRESS)
|
||||
@@ -453,7 +463,12 @@
|
||||
|
||||
if (!ops->init || (err = ops->init(sch, tca[TCA_OPTIONS-1])) == 0) {
|
||||
write_lock(&qdisc_tree_lock);
|
||||
+#ifdef CONFIG_BCM4710
|
||||
+ sch->next = dev->qdisc_list;
|
||||
+ dev->qdisc_list = sch;
|
||||
+#else
|
||||
list_add_tail(&sch->list, &dev->qdisc_list);
|
||||
+#endif
|
||||
write_unlock(&qdisc_tree_lock);
|
||||
#ifdef CONFIG_NET_ESTIMATOR
|
||||
if (tca[TCA_RATE-1])
|
||||
@@ -809,12 +824,20 @@
|
||||
s_q_idx = 0;
|
||||
read_lock(&qdisc_tree_lock);
|
||||
q_idx = 0;
|
||||
+#ifdef CONFIG_BCM4710
|
||||
+ for (q = dev->qdisc_list, q_idx = 0; q; q = q->next, q_idx++) {
|
||||
+#else
|
||||
list_for_each_entry(q, &dev->qdisc_list, list) {
|
||||
+#endif
|
||||
if (q_idx < s_q_idx) {
|
||||
q_idx++;
|
||||
continue;
|
||||
}
|
||||
+#ifdef CONFIG_BCM4710
|
||||
+ if (tc_fill_qdisc(skb, q, 0, NETLINK_CB(cb->skb).pid,
|
||||
+#else
|
||||
if (tc_fill_qdisc(skb, q, q->parent, NETLINK_CB(cb->skb).pid,
|
||||
+#endif
|
||||
cb->nlh->nlmsg_seq, NLM_F_MULTI, RTM_NEWQDISC) <= 0) {
|
||||
read_unlock(&qdisc_tree_lock);
|
||||
goto done;
|
||||
@@ -1033,7 +1056,11 @@
|
||||
t = 0;
|
||||
|
||||
read_lock(&qdisc_tree_lock);
|
||||
+#ifdef CONFIG_BCM4710
|
||||
+ for (q=dev->qdisc_list, t=0; q; q = q->next, t++) {
|
||||
+#else
|
||||
list_for_each_entry(q, &dev->qdisc_list, list) {
|
||||
+#endif
|
||||
if (t < s_t || !q->ops->cl_ops ||
|
||||
(tcm->tcm_parent &&
|
||||
TC_H_MAJ(tcm->tcm_parent) != q->handle)) {
|
@ -1,18 +0,0 @@
|
||||
--- linux-mips-cvs-21012005/net/core/dev.c 2004-04-16 05:14:21.000000000 +0200
|
||||
+++ linux-broadcom/net/core/dev.c 2005-01-26 20:06:32.000000000 +0100
|
||||
@@ -2295,6 +2295,7 @@
|
||||
}
|
||||
return ret;
|
||||
|
||||
+#ifndef CONFIG_BCM4710
|
||||
case SIOCETHTOOL:
|
||||
dev_load(ifr.ifr_name);
|
||||
rtnl_lock();
|
||||
@@ -2308,6 +2309,7 @@
|
||||
ret = -EFAULT;
|
||||
}
|
||||
return ret;
|
||||
+#endif
|
||||
|
||||
/*
|
||||
* These ioctl calls:
|
@ -1,24 +0,0 @@
|
||||
--- linux-mips-cvs-21012005/include/linux/skbuff.h 2005-01-31 12:56:47.000000000 +0100
|
||||
+++ linux-broadcom/include/linux/skbuff.h 2005-01-31 12:55:24.000000000 +0100
|
||||
@@ -135,10 +135,6 @@
|
||||
struct sock *sk; /* Socket we are owned by */
|
||||
struct timeval stamp; /* Time we arrived */
|
||||
struct net_device *dev; /* Device we arrived on/are leaving by */
|
||||
- struct net_device *real_dev; /* For support of point to point protocols
|
||||
- (e.g. 802.3ad) over bonding, we must save the
|
||||
- physical device that got the packet before
|
||||
- replacing skb->dev with the virtual device. */
|
||||
|
||||
/* Transport layer header */
|
||||
union
|
||||
@@ -219,6 +215,10 @@
|
||||
#ifdef CONFIG_NET_SCHED
|
||||
__u32 tc_index; /* traffic control index */
|
||||
#endif
|
||||
+ struct net_device *real_dev; /* For support of point to point protocols
|
||||
+ (e.g. 802.3ad) over bonding, we must save the
|
||||
+ physical device that got the packet before
|
||||
+ replacing skb->dev with the virtual device. */
|
||||
};
|
||||
|
||||
#ifdef __KERNEL__
|
Loading…
Reference in New Issue
Block a user