From: Andrew Lunn <andrew@lunn.ch>
To: Jijie Shao <shaojijie@huawei.com>
Cc: davem@davemloft.net, edumazet@google.com, kuba@kernel.org,
pabeni@redhat.com, andrew+netdev@lunn.ch, horms@kernel.org,
shenjian15@huawei.com, wangpeiyang1@huawei.com,
liuyonglong@huawei.com, chenhao418@huawei.com,
sudongming1@huawei.com, xujunsheng@huawei.com,
shiyongbang@huawei.com, libaihan@huawei.com,
jonathan.cameron@huawei.com,
shameerali.kolothum.thodi@huawei.com, salil.mehta@huawei.com,
netdev@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH V3 net-next 5/7] net: hibmcge: Add pauseparam supported in this module
Date: Tue, 12 Nov 2024 17:32:18 +0100 [thread overview]
Message-ID: <d22285c6-8286-4db0-86ca-90fff08e3a42@lunn.ch> (raw)
In-Reply-To: <98187fe7-23f1-4c52-a62f-c96e720cb491@huawei.com>
On Tue, Nov 12, 2024 at 10:37:27PM +0800, Jijie Shao wrote:
>
> on 2024/11/12 1:58, Andrew Lunn wrote:
> > On Mon, Nov 11, 2024 at 10:55:56PM +0800, Jijie Shao wrote:
> > > The MAC can automatically send or respond to pause frames.
> > > This patch supports the function of enabling pause frames
> > > by using ethtool.
> > >
> > > Pause auto-negotiation is not supported currently.
> > What is actually missing to support auto-neg pause? You are using
> > phylib, so it will do most of the work. You just need your adjust_link
> > callback to configure the hardware to the result of the negotiation.
> > And call phy_support_asym_pause() to let phylib know what the MAC
> > supports.
> >
> > Andrew
>
> Thanks for your guidance,
>
> I haven't really figured out the difference between phy_support_sym_pause()
> and phy_support_asym_paus().
sym_pause means that when the MAC pauses, it does it in both
directions, receive and transmit. Asymmetric pause means it can pause
just receive, or just transmit.
Since you have both tx_pause and rx_pause, you can do both.
> +static void hbg_ethtool_get_pauseparam(struct net_device *net_dev,
> + struct ethtool_pauseparam *param)
> +{
> + struct hbg_priv *priv = netdev_priv(net_dev);
> +
> + param->autoneg = priv->mac.pause_autoneg;
> + hbg_hw_get_pause_enable(priv, ¶m->tx_pause, ¶m->rx_pause);
> +}
> +
> +static int hbg_ethtool_set_pauseparam(struct net_device *net_dev,
> + struct ethtool_pauseparam *param)
> +{
> + struct hbg_priv *priv = netdev_priv(net_dev);
> + struct phy_device *phydev = priv->mac.phydev;
> +
> + phy_set_asym_pause(phydev, param->rx_pause, param->tx_pause);
Not needed. This just tells phylib what the MAC is capable of. The
capabilities does not change, so telling it once in hbg_phy_connect()
is sufficient.
Andrew
next prev parent reply other threads:[~2024-11-12 16:32 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-11-11 14:55 [PATCH V3 net-next 0/7] Support some features for the HIBMCGE driver Jijie Shao
2024-11-11 14:55 ` [PATCH V3 net-next 1/7] net: hibmcge: Add debugfs supported in this module Jijie Shao
2024-11-11 14:55 ` [PATCH V3 net-next 2/7] net: hibmcge: Add irq_info file to debugfs Jijie Shao
2024-11-11 14:55 ` [PATCH V3 net-next 3/7] net: hibmcge: Add unicast frame filter supported in this module Jijie Shao
2024-11-13 13:33 ` Simon Horman
2024-11-11 14:55 ` [PATCH V3 net-next 4/7] net: hibmcge: Add register dump " Jijie Shao
2024-11-11 14:55 ` [PATCH V3 net-next 5/7] net: hibmcge: Add pauseparam " Jijie Shao
2024-11-11 17:58 ` Andrew Lunn
2024-11-12 14:37 ` Jijie Shao
2024-11-12 16:32 ` Andrew Lunn [this message]
2024-11-13 3:20 ` Jijie Shao
2024-11-13 20:41 ` Andrew Lunn
2024-11-11 14:55 ` [PATCH V3 net-next 6/7] net: hibmcge: Add reset " Jijie Shao
2024-11-11 14:55 ` [PATCH V3 net-next 7/7] net: hibmcge: Add nway_reset " Jijie Shao
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=d22285c6-8286-4db0-86ca-90fff08e3a42@lunn.ch \
--to=andrew@lunn.ch \
--cc=andrew+netdev@lunn.ch \
--cc=chenhao418@huawei.com \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=horms@kernel.org \
--cc=jonathan.cameron@huawei.com \
--cc=kuba@kernel.org \
--cc=libaihan@huawei.com \
--cc=linux-kernel@vger.kernel.org \
--cc=liuyonglong@huawei.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=salil.mehta@huawei.com \
--cc=shameerali.kolothum.thodi@huawei.com \
--cc=shaojijie@huawei.com \
--cc=shenjian15@huawei.com \
--cc=shiyongbang@huawei.com \
--cc=sudongming1@huawei.com \
--cc=wangpeiyang1@huawei.com \
--cc=xujunsheng@huawei.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®