From: Mintz, Yuval Date: Sun, 21 May 2017 09:10:52 +0000 (+0300) Subject: qede: Allow WoL to activate by default X-Git-Tag: v4.1.12-111.0.20170918_2215~109 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=3ad96ec184d61dd91d55abf3a3ea524090161dbd;p=users%2Fjedix%2Flinux-maple.git qede: Allow WoL to activate by default Orabug: 26783820 When management firmware declares that the device is WoL-capable, the default driver behavior would be to allow the management firmware to take the decision of whether it's actually needed or not. Problem is ethtool interface doesn't have a 'default' kind of option, and user would see the interface WoL as disabled, which doesn't accurately reflect the actual configuration. More-so, if the user actually wants to explicitly disable WoL he'd have to first enable it [otherwise ethtool would block the command]. Instead of allowing management to make the decision, enable WoL by default on all devices capable of it. Signed-off-by: Yuval Mintz Signed-off-by: David S. Miller [ Upstream commit ba798b5b6d067baa7ca7be3cdfd1f37a89da873f ] Signed-off-by: Somasundaram Krishnasamy --- diff --git a/drivers/net/ethernet/qlogic/qede/qede_main.c b/drivers/net/ethernet/qlogic/qede/qede_main.c index a6c30356c3ce..e59d854673ea 100644 --- a/drivers/net/ethernet/qlogic/qede/qede_main.c +++ b/drivers/net/ethernet/qlogic/qede/qede_main.c @@ -685,6 +685,12 @@ static struct qede_dev *qede_alloc_etherdev(struct qed_dev *cdev, memset(&edev->stats, 0, sizeof(edev->stats)); memcpy(&edev->dev_info, info, sizeof(*info)); + /* As ethtool doesn't have the ability to show WoL behavior as + * 'default', if device supports it declare it's enabled. + */ + if (edev->dev_info.common.wol_support) + edev->wol_enabled = true; + INIT_LIST_HEAD(&edev->vlan_list); return edev;