Denis Kirjanov 674240
From edf02fb08f21173db3e0801cc49d104695cc3916 Mon Sep 17 00:00:00 2001
Denis Kirjanov 674240
From: Nicolas Ferre <nicolas.ferre@microchip.com>
Denis Kirjanov 674240
Date: Fri, 10 Jul 2020 14:46:42 +0200
Denis Kirjanov 674240
Subject: [PATCH 6/8] net: macb: mark device wake capable when "magic-packet"
Denis Kirjanov 674240
 property present
Denis Kirjanov 674240
Git-commit: ced4799d06375929e013eea04ba6908207afabbe
Denis Kirjanov 674240
Patch-mainline: v5.8-rc5
Denis Kirjanov 674240
References: git-fixes
Denis Kirjanov 674240
Denis Kirjanov 674240
Change the way the "magic-packet" DT property is handled in the
Denis Kirjanov 674240
macb_probe() function, matching DT binding documentation.
Denis Kirjanov 674240
Now we mark the device as "wakeup capable" instead of calling the
Denis Kirjanov 674240
device_init_wakeup() function that would enable the wakeup source.
Denis Kirjanov 674240
Denis Kirjanov 674240
For Ethernet WoL, enabling the wakeup_source is done by
Denis Kirjanov 674240
using ethtool and associated macb_set_wol() function that
Denis Kirjanov 674240
already calls device_set_wakeup_enable() for this purpose.
Denis Kirjanov 674240
Denis Kirjanov 674240
That would reduce power consumption by cutting more clocks if
Denis Kirjanov 674240
"magic-packet" property is set but WoL is not configured by ethtool.
Denis Kirjanov 674240
Denis Kirjanov 674240
Fixes: 3e2a5e153906 ("net: macb: add wake-on-lan support via magic packet")
Denis Kirjanov 674240
Cc: Claudiu Beznea <claudiu.beznea@microchip.com>
Denis Kirjanov 674240
Cc: Harini Katakam <harini.katakam@xilinx.com>
Denis Kirjanov 674240
Cc: Sergio Prado <sergio.prado@e-labworks.com>
Denis Kirjanov 674240
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Denis Kirjanov 674240
Signed-off-by: Nicolas Ferre <nicolas.ferre@microchip.com>
Denis Kirjanov 674240
Signed-off-by: David S. Miller <davem@davemloft.net>
Denis Kirjanov 674240
Signed-off-by: Denis Kirjanov <denis.kirjanov@suse.com>
Denis Kirjanov 674240
---
Denis Kirjanov 674240
 drivers/net/ethernet/cadence/macb.c | 2 +-
Denis Kirjanov 674240
 1 file changed, 1 insertion(+), 1 deletion(-)
Denis Kirjanov 674240
Denis Kirjanov 674240
diff --git a/drivers/net/ethernet/cadence/macb.c b/drivers/net/ethernet/cadence/macb.c
Denis Kirjanov 674240
index 77abec2064ce..acd152c70d17 100644
Denis Kirjanov 674240
--- a/drivers/net/ethernet/cadence/macb.c
Denis Kirjanov 674240
+++ b/drivers/net/ethernet/cadence/macb.c
Denis Kirjanov 674240
@@ -3348,7 +3348,7 @@ static int macb_probe(struct platform_device *pdev)
Denis Kirjanov 674240
 	bp->wol = 0;
Denis Kirjanov 674240
 	if (of_get_property(np, "magic-packet", NULL))
Denis Kirjanov 674240
 		bp->wol |= MACB_WOL_HAS_MAGIC_PACKET;
Denis Kirjanov 674240
-	device_init_wakeup(&pdev->dev, bp->wol & MACB_WOL_HAS_MAGIC_PACKET);
Denis Kirjanov 674240
+	device_set_wakeup_capable(&pdev->dev, bp->wol & MACB_WOL_HAS_MAGIC_PACKET);
Denis Kirjanov 674240
 
Denis Kirjanov 674240
 #ifdef CONFIG_ARCH_DMA_ADDR_T_64BIT
Denis Kirjanov 674240
 	if (GEM_BFEXT(DAW64, gem_readl(bp, DCFG6))) {
Denis Kirjanov 674240
-- 
Denis Kirjanov 674240
2.16.4
Denis Kirjanov 674240