|
@@ -0,0 +1,42 @@
|
|
|
|
+commit 2e302ebfeac04beb5a5d6af1ac583c6a1fb76d1a
|
|
|
|
+Author: chas williams - CONTRACTOR <[email protected]>
|
|
|
|
+Date: Fri Dec 4 11:06:32 2009 +0000
|
|
|
|
+
|
|
|
|
+ atm: [br2684] allow routed mode operation again
|
|
|
|
+
|
|
|
|
+ in routed mode, we don't have a hardware address so netdev_ops doesnt
|
|
|
|
+ need to validate our hardware address via .ndo_validate_addr
|
|
|
|
+
|
|
|
|
+ Reported-by: Manuel Fuentes <[email protected]>
|
|
|
|
+ Signed-off-by: Chas Williams - CONTRACTOR <[email protected]>
|
|
|
|
+ Signed-off-by: David S. Miller <[email protected]>
|
|
|
|
+
|
|
|
|
+--- a/net/atm/br2684.c
|
|
|
|
++++ b/net/atm/br2684.c
|
|
|
|
+@@ -544,6 +544,12 @@ static const struct net_device_ops br268
|
|
|
|
+ .ndo_validate_addr = eth_validate_addr,
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
++static const struct net_device_ops br2684_netdev_ops_routed = {
|
|
|
|
++ .ndo_start_xmit = br2684_start_xmit,
|
|
|
|
++ .ndo_set_mac_address = br2684_mac_addr,
|
|
|
|
++ .ndo_change_mtu = eth_change_mtu
|
|
|
|
++};
|
|
|
|
++
|
|
|
|
+ static void br2684_setup(struct net_device *netdev)
|
|
|
|
+ {
|
|
|
|
+ struct br2684_dev *brdev = BRPRIV(netdev);
|
|
|
|
+@@ -559,11 +565,10 @@ static void br2684_setup(struct net_devi
|
|
|
|
+ static void br2684_setup_routed(struct net_device *netdev)
|
|
|
|
+ {
|
|
|
|
+ struct br2684_dev *brdev = BRPRIV(netdev);
|
|
|
|
+- brdev->net_dev = netdev;
|
|
|
|
+
|
|
|
|
++ brdev->net_dev = netdev;
|
|
|
|
+ netdev->hard_header_len = 0;
|
|
|
|
+-
|
|
|
|
+- netdev->netdev_ops = &br2684_netdev_ops;
|
|
|
|
++ netdev->netdev_ops = &br2684_netdev_ops_routed;
|
|
|
|
+ netdev->addr_len = 0;
|
|
|
|
+ netdev->mtu = 1500;
|
|
|
|
+ netdev->type = ARPHRD_PPP;
|