Subject: Re: [PATCH net-next v3] net: cpsw: Add support for wake-on-lan for cpsw

From: Sergei Shtylyov <[email-masked]>
Date: Tue, 20 Aug 2013 17:40:59 +0400

Hello.

On 20-08-2013 9:38, [email-masked] wrote:

> From: Matus Ujhelyi <[email-masked]>

> Some phy's can be configured to enable wake on lan (e.g. at803x or marvell 88E1318S).
> There is no way how to enable wol on CPSW with such connected phys. This patch
> adds this support. It is provided by calling the phy's related code.

> Tested on board with at8030x connected phy. Wol interrupt line is
> connected to GPIO0 on am335x.

> Signed-off-by: Matus Ujhelyi <[email-masked]>
> ---
>   drivers/net/ethernet/ti/cpsw.c |   24 ++++++++++++++++++++++++
>   1 file changed, 24 insertions(+)

> diff --git a/drivers/net/ethernet/ti/cpsw.c b/drivers/net/ethernet/ti/cpsw.c
> index 0fcf212..5d673bf 100644
> --- a/drivers/net/ethernet/ti/cpsw.c
> +++ b/drivers/net/ethernet/ti/cpsw.c
> @@ -1640,6 +1640,28 @@ static int cpsw_set_settings(struct net_device *ndev, struct ethtool_cmd *ecmd)
>   		return -EOPNOTSUPP;
>   }
>
> +static void cpsw_get_wol(struct net_device *ndev, struct ethtool_wolinfo *wol)
> +{
> +	struct cpsw_priv *priv = netdev_priv(ndev);
> +	int slave_no = cpsw_slave_index(priv);

    You should have put an empty line here, not below.

> +	wol->supported = 0;
> +	wol->wolopts = 0;
> +
> +	if (priv->slaves[slave_no].phy)
> +		phy_ethtool_get_wol(priv->slaves[slave_no].phy, wol);
> +}

WBR, Sergei