diff options
author | hayeswang <hayeswang@realtek.com> | 2014-09-12 07:35:11 +0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-09-14 00:52:44 +0400 |
commit | 48c20407f49039d8da155ca00877ec5f057799e6 (patch) | |
tree | 5f97d3d48d3612e4bef012df3525d5b201a92932 /drivers/net/ethernet | |
parent | 618073e30c225ddaef086c030a5f0a3c7ef2d323 (diff) | |
download | linux-48c20407f49039d8da155ca00877ec5f057799e6.tar.xz |
r8169: fix the default setting of rx vlan
If the parameter "features" of __rtl8169_set_features() is equal to
dev->features, the variable "changed" is alwayes 0, and nothing would
be changed.
Signed-off-by: Hayes Wang <hayeswang@realtek.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet')
-rw-r--r-- | drivers/net/ethernet/realtek/r8169.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/net/ethernet/realtek/r8169.c b/drivers/net/ethernet/realtek/r8169.c index 91652e7235e4..f3ce284e54f0 100644 --- a/drivers/net/ethernet/realtek/r8169.c +++ b/drivers/net/ethernet/realtek/r8169.c @@ -6707,7 +6707,12 @@ static int rtl_open(struct net_device *dev) rtl8169_init_phy(dev, tp); - __rtl8169_set_features(dev, dev->features); + if (dev->features & NETIF_F_HW_VLAN_CTAG_RX) + tp->cp_cmd |= RxVlan; + else + tp->cp_cmd &= ~RxVlan; + + RTL_W16(CPlusCmd, tp->cp_cmd); rtl_pll_power_up(tp); |