diff options
Diffstat (limited to 'net/rose/rose_dev.c')
-rw-r--r-- | net/rose/rose_dev.c | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/net/rose/rose_dev.c b/net/rose/rose_dev.c index 12cfcf09556b..7dcf2569613b 100644 --- a/net/rose/rose_dev.c +++ b/net/rose/rose_dev.c | |||
@@ -57,7 +57,7 @@ static int rose_rebuild_header(struct sk_buff *skb) | |||
57 | { | 57 | { |
58 | #ifdef CONFIG_INET | 58 | #ifdef CONFIG_INET |
59 | struct net_device *dev = skb->dev; | 59 | struct net_device *dev = skb->dev; |
60 | struct net_device_stats *stats = netdev_priv(dev); | 60 | struct net_device_stats *stats = &dev->stats; |
61 | unsigned char *bp = (unsigned char *)skb->data; | 61 | unsigned char *bp = (unsigned char *)skb->data; |
62 | struct sk_buff *skbn; | 62 | struct sk_buff *skbn; |
63 | unsigned int len; | 63 | unsigned int len; |
@@ -133,7 +133,7 @@ static int rose_close(struct net_device *dev) | |||
133 | 133 | ||
134 | static int rose_xmit(struct sk_buff *skb, struct net_device *dev) | 134 | static int rose_xmit(struct sk_buff *skb, struct net_device *dev) |
135 | { | 135 | { |
136 | struct net_device_stats *stats = netdev_priv(dev); | 136 | struct net_device_stats *stats = &dev->stats; |
137 | 137 | ||
138 | if (!netif_running(dev)) { | 138 | if (!netif_running(dev)) { |
139 | printk(KERN_ERR "ROSE: rose_xmit - called when iface is down\n"); | 139 | printk(KERN_ERR "ROSE: rose_xmit - called when iface is down\n"); |
@@ -144,30 +144,28 @@ static int rose_xmit(struct sk_buff *skb, struct net_device *dev) | |||
144 | return 0; | 144 | return 0; |
145 | } | 145 | } |
146 | 146 | ||
147 | static struct net_device_stats *rose_get_stats(struct net_device *dev) | ||
148 | { | ||
149 | return netdev_priv(dev); | ||
150 | } | ||
151 | |||
152 | static const struct header_ops rose_header_ops = { | 147 | static const struct header_ops rose_header_ops = { |
153 | .create = rose_header, | 148 | .create = rose_header, |
154 | .rebuild= rose_rebuild_header, | 149 | .rebuild= rose_rebuild_header, |
155 | }; | 150 | }; |
156 | 151 | ||
152 | static const struct net_device_ops rose_netdev_ops = { | ||
153 | .ndo_open = rose_open, | ||
154 | .ndo_stop = rose_close, | ||
155 | .ndo_start_xmit = rose_xmit, | ||
156 | .ndo_set_mac_address = rose_set_mac_address, | ||
157 | }; | ||
158 | |||
157 | void rose_setup(struct net_device *dev) | 159 | void rose_setup(struct net_device *dev) |
158 | { | 160 | { |
159 | dev->mtu = ROSE_MAX_PACKET_SIZE - 2; | 161 | dev->mtu = ROSE_MAX_PACKET_SIZE - 2; |
160 | dev->hard_start_xmit = rose_xmit; | 162 | dev->netdev_ops = &rose_netdev_ops; |
161 | dev->open = rose_open; | ||
162 | dev->stop = rose_close; | ||
163 | 163 | ||
164 | dev->header_ops = &rose_header_ops; | 164 | dev->header_ops = &rose_header_ops; |
165 | dev->hard_header_len = AX25_BPQ_HEADER_LEN + AX25_MAX_HEADER_LEN + ROSE_MIN_LEN; | 165 | dev->hard_header_len = AX25_BPQ_HEADER_LEN + AX25_MAX_HEADER_LEN + ROSE_MIN_LEN; |
166 | dev->addr_len = ROSE_ADDR_LEN; | 166 | dev->addr_len = ROSE_ADDR_LEN; |
167 | dev->type = ARPHRD_ROSE; | 167 | dev->type = ARPHRD_ROSE; |
168 | dev->set_mac_address = rose_set_mac_address; | ||
169 | 168 | ||
170 | /* New-style flags. */ | 169 | /* New-style flags. */ |
171 | dev->flags = IFF_NOARP; | 170 | dev->flags = IFF_NOARP; |
172 | dev->get_stats = rose_get_stats; | ||
173 | } | 171 | } |