diff options
Diffstat (limited to 'net')
-rw-r--r-- | net/atm/br2684.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/net/atm/br2684.c b/net/atm/br2684.c index 26a646d4eb32..c9230c398697 100644 --- a/net/atm/br2684.c +++ b/net/atm/br2684.c | |||
@@ -554,6 +554,12 @@ static const struct net_device_ops br2684_netdev_ops = { | |||
554 | .ndo_validate_addr = eth_validate_addr, | 554 | .ndo_validate_addr = eth_validate_addr, |
555 | }; | 555 | }; |
556 | 556 | ||
557 | static const struct net_device_ops br2684_netdev_ops_routed = { | ||
558 | .ndo_start_xmit = br2684_start_xmit, | ||
559 | .ndo_set_mac_address = br2684_mac_addr, | ||
560 | .ndo_change_mtu = eth_change_mtu | ||
561 | }; | ||
562 | |||
557 | static void br2684_setup(struct net_device *netdev) | 563 | static void br2684_setup(struct net_device *netdev) |
558 | { | 564 | { |
559 | struct br2684_dev *brdev = BRPRIV(netdev); | 565 | struct br2684_dev *brdev = BRPRIV(netdev); |
@@ -569,11 +575,10 @@ static void br2684_setup(struct net_device *netdev) | |||
569 | static void br2684_setup_routed(struct net_device *netdev) | 575 | static void br2684_setup_routed(struct net_device *netdev) |
570 | { | 576 | { |
571 | struct br2684_dev *brdev = BRPRIV(netdev); | 577 | struct br2684_dev *brdev = BRPRIV(netdev); |
572 | brdev->net_dev = netdev; | ||
573 | 578 | ||
579 | brdev->net_dev = netdev; | ||
574 | netdev->hard_header_len = 0; | 580 | netdev->hard_header_len = 0; |
575 | 581 | netdev->netdev_ops = &br2684_netdev_ops_routed; | |
576 | netdev->netdev_ops = &br2684_netdev_ops; | ||
577 | netdev->addr_len = 0; | 582 | netdev->addr_len = 0; |
578 | netdev->mtu = 1500; | 583 | netdev->mtu = 1500; |
579 | netdev->type = ARPHRD_PPP; | 584 | netdev->type = ARPHRD_PPP; |