| From 5cf15d2aad5f33e52618ab5fc329805d5d95bcb9 Mon Sep 17 00:00:00 2001 |
| From: Nicolas Ferre <nicolas.ferre@microchip.com> |
| Date: Fri, 10 Jul 2020 14:46:42 +0200 |
| Subject: [PATCH] net: macb: mark device wake capable when "magic-packet" |
| property present |
| |
| commit ced4799d06375929e013eea04ba6908207afabbe upstream. |
| |
| Change the way the "magic-packet" DT property is handled in the |
| macb_probe() function, matching DT binding documentation. |
| Now we mark the device as "wakeup capable" instead of calling the |
| device_init_wakeup() function that would enable the wakeup source. |
| |
| For Ethernet WoL, enabling the wakeup_source is done by |
| using ethtool and associated macb_set_wol() function that |
| already calls device_set_wakeup_enable() for this purpose. |
| |
| That would reduce power consumption by cutting more clocks if |
| "magic-packet" property is set but WoL is not configured by ethtool. |
| |
| Fixes: 3e2a5e153906 ("net: macb: add wake-on-lan support via magic packet") |
| Cc: Claudiu Beznea <claudiu.beznea@microchip.com> |
| Cc: Harini Katakam <harini.katakam@xilinx.com> |
| Cc: Sergio Prado <sergio.prado@e-labworks.com> |
| Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> |
| Signed-off-by: Nicolas Ferre <nicolas.ferre@microchip.com> |
| Signed-off-by: David S. Miller <davem@davemloft.net> |
| Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> |
| |
| diff --git a/drivers/net/ethernet/cadence/macb_main.c b/drivers/net/ethernet/cadence/macb_main.c |
| index 624b3f8e8437..13be9836dbb0 100644 |
| --- a/drivers/net/ethernet/cadence/macb_main.c |
| +++ b/drivers/net/ethernet/cadence/macb_main.c |
| @@ -4144,7 +4144,7 @@ static int macb_probe(struct platform_device *pdev) |
| bp->wol = 0; |
| if (of_get_property(np, "magic-packet", NULL)) |
| bp->wol |= MACB_WOL_HAS_MAGIC_PACKET; |
| - device_init_wakeup(&pdev->dev, bp->wol & MACB_WOL_HAS_MAGIC_PACKET); |
| + device_set_wakeup_capable(&pdev->dev, bp->wol & MACB_WOL_HAS_MAGIC_PACKET); |
| |
| spin_lock_init(&bp->lock); |
| |
| -- |
| 2.27.0 |
| |