git.openpandora.org
/
pandora-kernel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
[pandora-kernel.git]
/
drivers
/
net
/
wan
/
hdlc_cisco.c
diff --git
a/drivers/net/wan/hdlc_cisco.c
b/drivers/net/wan/hdlc_cisco.c
index
48c03c1
..
f289dab
100644
(file)
--- a/
drivers/net/wan/hdlc_cisco.c
+++ b/
drivers/net/wan/hdlc_cisco.c
@@
-72,7
+72,7
@@
static void cisco_keepalive_send(struct net_device *dev, u32 type,
}
skb_reserve(skb, 4);
cisco_hard_header(skb, dev, CISCO_KEEPALIVE, NULL, NULL, 0);
}
skb_reserve(skb, 4);
cisco_hard_header(skb, dev, CISCO_KEEPALIVE, NULL, NULL, 0);
- data = (cisco_packet*)
skb->data
;
+ data = (cisco_packet*)
(skb->data + 4)
;
data->type = htonl(type);
data->par1 = htonl(par1);
data->type = htonl(type);
data->par1 = htonl(par1);
@@
-192,7
+192,7
@@
static int cisco_rx(struct sk_buff *skb)
"uptime %ud%uh%um%us)\n",
dev->name, days, hrs,
min, sec);
"uptime %ud%uh%um%us)\n",
dev->name, days, hrs,
min, sec);
- netif_
carrier_on
(dev);
+ netif_
dormant_off
(dev);
hdlc->state.cisco.up = 1;
}
}
hdlc->state.cisco.up = 1;
}
}
@@
-225,7
+225,7
@@
static void cisco_timer(unsigned long arg)
hdlc->state.cisco.settings.timeout * HZ)) {
hdlc->state.cisco.up = 0;
printk(KERN_INFO "%s: Link down\n", dev->name);
hdlc->state.cisco.settings.timeout * HZ)) {
hdlc->state.cisco.up = 0;
printk(KERN_INFO "%s: Link down\n", dev->name);
- netif_
carrier_off
(dev);
+ netif_
dormant_on
(dev);
}
cisco_keepalive_send(dev, CISCO_KEEPALIVE_REQ,
}
cisco_keepalive_send(dev, CISCO_KEEPALIVE_REQ,
@@
-261,8
+261,7
@@
static void cisco_stop(struct net_device *dev)
{
hdlc_device *hdlc = dev_to_hdlc(dev);
del_timer_sync(&hdlc->state.cisco.timer);
{
hdlc_device *hdlc = dev_to_hdlc(dev);
del_timer_sync(&hdlc->state.cisco.timer);
- if (netif_carrier_ok(dev))
- netif_carrier_off(dev);
+ netif_dormant_on(dev);
hdlc->state.cisco.up = 0;
hdlc->state.cisco.request_sent = 0;
}
hdlc->state.cisco.up = 0;
hdlc->state.cisco.request_sent = 0;
}
@@
-322,6
+321,7
@@
int hdlc_cisco_ioctl(struct net_device *dev, struct ifreq *ifr)
dev->type = ARPHRD_CISCO;
dev->flags = IFF_POINTOPOINT | IFF_NOARP;
dev->addr_len = 0;
dev->type = ARPHRD_CISCO;
dev->flags = IFF_POINTOPOINT | IFF_NOARP;
dev->addr_len = 0;
+ netif_dormant_on(dev);
return 0;
}
return 0;
}