[br2684] allow routed mode operation again
[openwrt-10.03/.git] / target / linux / generic-2.6 / patches-2.6.32 / 640-br2684_backport_routed.patch
1 commit 2e302ebfeac04beb5a5d6af1ac583c6a1fb76d1a
2 Author: chas williams - CONTRACTOR <chas@cmf.nrl.navy.mil>
3 Date:   Fri Dec 4 11:06:32 2009 +0000
4
5     atm: [br2684] allow routed mode operation again
6     
7     in routed mode, we don't have a hardware address so netdev_ops doesnt
8     need to validate our hardware address via .ndo_validate_addr
9     
10     Reported-by: Manuel Fuentes <mfuentes@agenciaefe.com>
11     Signed-off-by: Chas Williams - CONTRACTOR <chas@cmf.nrl.navy.mil>
12     Signed-off-by: David S. Miller <davem@davemloft.net>
13
14 --- a/net/atm/br2684.c
15 +++ b/net/atm/br2684.c
16 @@ -554,6 +554,12 @@ static const struct net_device_ops br268
17         .ndo_validate_addr      = eth_validate_addr,
18  };
19  
20 +static const struct net_device_ops br2684_netdev_ops_routed = {
21 +       .ndo_start_xmit         = br2684_start_xmit,
22 +       .ndo_set_mac_address    = br2684_mac_addr,
23 +       .ndo_change_mtu         = eth_change_mtu
24 +};
25 +
26  static void br2684_setup(struct net_device *netdev)
27  {
28         struct br2684_dev *brdev = BRPRIV(netdev);
29 @@ -569,11 +575,10 @@ static void br2684_setup(struct net_devi
30  static void br2684_setup_routed(struct net_device *netdev)
31  {
32         struct br2684_dev *brdev = BRPRIV(netdev);
33 -       brdev->net_dev = netdev;
34  
35 +       brdev->net_dev = netdev;
36         netdev->hard_header_len = 0;
37 -
38 -       netdev->netdev_ops = &br2684_netdev_ops;
39 +       netdev->netdev_ops = &br2684_netdev_ops_routed;
40         netdev->addr_len = 0;
41         netdev->mtu = 1500;
42         netdev->type = ARPHRD_PPP;