equal
deleted
inserted
replaced
981 e1000_get_hw_control(adapter); |
981 e1000_get_hw_control(adapter); |
982 |
982 |
983 // offer device to EtherCAT master module |
983 // offer device to EtherCAT master module |
984 adapter->ecdev = ecdev_offer(netdev, ec_poll, THIS_MODULE); |
984 adapter->ecdev = ecdev_offer(netdev, ec_poll, THIS_MODULE); |
985 if (adapter->ecdev) { |
985 if (adapter->ecdev) { |
986 if (ecdev_open(adapter->ecdev)) { |
986 err = ecdev_open(adapter->ecdev); |
|
987 if (err) { |
987 ecdev_withdraw(adapter->ecdev); |
988 ecdev_withdraw(adapter->ecdev); |
988 goto err_register; |
989 goto err_register; |
989 } |
990 } |
990 } else { |
991 } else { |
991 strcpy(netdev->name, "eth%d"); |
992 strcpy(netdev->name, "eth%d"); |
2176 |
2177 |
2177 if (!adapter->ecdev && netif_running(netdev)) { |
2178 if (!adapter->ecdev && netif_running(netdev)) { |
2178 /* No need to loop, because 82542 supports only 1 queue */ |
2179 /* No need to loop, because 82542 supports only 1 queue */ |
2179 struct e1000_rx_ring *ring = &adapter->rx_ring[0]; |
2180 struct e1000_rx_ring *ring = &adapter->rx_ring[0]; |
2180 e1000_configure_rx(adapter); |
2181 e1000_configure_rx(adapter); |
2181 if (adapter->ecdev) { |
2182 if (adapter->ecdev) { |
2182 /* fill rx ring completely! */ |
2183 /* fill rx ring completely! */ |
2183 adapter->alloc_rx_buf(adapter, ring, ring->count); |
2184 adapter->alloc_rx_buf(adapter, ring, ring->count); |
2184 } else { |
2185 } else { |
2185 /* this one leaves the last ring element unallocated! */ |
2186 /* this one leaves the last ring element unallocated! */ |
2186 adapter->alloc_rx_buf(adapter, ring, E1000_DESC_UNUSED(ring)); |
2187 adapter->alloc_rx_buf(adapter, ring, E1000_DESC_UNUSED(ring)); |