]> git.baikalelectronics.ru Git - kernel.git/commit
gianfar: Add WAKE_UCAST and "wake-on-filer" support
authorClaudiu Manoil <claudiu.manoil@freescale.com>
Mon, 5 Oct 2015 14:19:59 +0000 (17:19 +0300)
committerDavid S. Miller <davem@davemloft.net>
Wed, 7 Oct 2015 11:19:45 +0000 (04:19 -0700)
commit3f0c2c9f6b8c6389c658b79b284f7021117f9406
tree20eada1f69c35dabaa1ae50dee96455897fc772d
parent2a24b8c3b00145ae2621bc3e4e832de2fb66cb93
gianfar: Add WAKE_UCAST and "wake-on-filer" support

This enables eTSEC's filer (Rx parser) and the FGPI Rx
interrupt (Filer General Purpose Interrupt) as a wakeup
source event.

Upon entering suspend state, the eTSEC filer is given
a rule to match incoming L2 unicast packets.  A packet
matching the rule will be enqueued in the Rx ring and
a FGPI Rx interrupt will be asserted by the filer to
wakeup the system.  Other packet types will be dropped.
On resume the filer table is restored to the content
before entering suspend state.
The set of rules from gfar_filer_config_wol() could be
extended to implement other WoL capabilities as well.

The "fsl,wake-on-filer" DT binding enables this capability
on certain platforms that feature the necessary power
management infrastructure, targeting mainly printing and
imaging applications.
(refer to Power Management section of the SoC Ref Man)

Cc: Li Yang <leoli@freescale.com>
Cc: Zhao Chenhui <chenhui.zhao@freescale.com>
Signed-off-by: Claudiu Manoil <claudiu.manoil@freescale.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/freescale/gianfar.c
drivers/net/ethernet/freescale/gianfar.h
drivers/net/ethernet/freescale/gianfar_ethtool.c