equal
deleted
inserted
replaced
224 |
224 |
225 device->link_state = 0; |
225 device->link_state = 0; |
226 device->tx_count = 0; |
226 device->tx_count = 0; |
227 device->rx_count = 0; |
227 device->rx_count = 0; |
228 |
228 |
|
229 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29) |
|
230 ret = device->dev->netdev_ops->ndo_open(device->dev); |
|
231 #else |
229 ret = device->dev->open(device->dev); |
232 ret = device->dev->open(device->dev); |
|
233 #endif |
230 if (!ret) |
234 if (!ret) |
231 device->open = 1; |
235 device->open = 1; |
232 |
236 |
233 return ret; |
237 return ret; |
234 } |
238 } |
253 if (!device->open) { |
257 if (!device->open) { |
254 EC_WARN("Device already closed!\n"); |
258 EC_WARN("Device already closed!\n"); |
255 return 0; |
259 return 0; |
256 } |
260 } |
257 |
261 |
|
262 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29) |
|
263 ret = device->dev->netdev_ops->ndo_stop(device->dev); |
|
264 #else |
258 ret = device->dev->stop(device->dev); |
265 ret = device->dev->stop(device->dev); |
|
266 #endif |
259 if (!ret) |
267 if (!ret) |
260 device->open = 0; |
268 device->open = 0; |
261 |
269 |
262 return ret; |
270 return ret; |
263 } |
271 } |
304 EC_DBG("sending frame:\n"); |
312 EC_DBG("sending frame:\n"); |
305 ec_print_data(skb->data + ETH_HLEN, size); |
313 ec_print_data(skb->data + ETH_HLEN, size); |
306 } |
314 } |
307 |
315 |
308 // start sending |
316 // start sending |
|
317 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29) |
|
318 if (device->dev->netdev_ops->ndo_start_xmit(skb, device->dev) == NETDEV_TX_OK) { |
|
319 #else |
309 if (device->dev->hard_start_xmit(skb, device->dev) == NETDEV_TX_OK) { |
320 if (device->dev->hard_start_xmit(skb, device->dev) == NETDEV_TX_OK) { |
|
321 #endif |
310 device->tx_count++; |
322 device->tx_count++; |
311 #ifdef EC_DEBUG_IF |
323 #ifdef EC_DEBUG_IF |
312 ec_debug_send(&device->dbg, skb->data, ETH_HLEN + size); |
324 ec_debug_send(&device->dbg, skb->data, ETH_HLEN + size); |
313 #endif |
325 #endif |
314 #ifdef EC_DEBUG_RING |
326 #ifdef EC_DEBUG_RING |