mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-22 15:02:32 +00:00
43 lines
1.4 KiB
Diff
43 lines
1.4 KiB
Diff
|
commit 2e302ebfeac04beb5a5d6af1ac583c6a1fb76d1a
|
||
|
Author: chas williams - CONTRACTOR <chas@cmf.nrl.navy.mil>
|
||
|
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 <mfuentes@agenciaefe.com>
|
||
|
Signed-off-by: Chas Williams - CONTRACTOR <chas@cmf.nrl.navy.mil>
|
||
|
Signed-off-by: David S. Miller <davem@davemloft.net>
|
||
|
|
||
|
--- a/net/atm/br2684.c
|
||
|
+++ b/net/atm/br2684.c
|
||
|
@@ -554,6 +554,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);
|
||
|
@@ -569,11 +575,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;
|