From: Florian Fainelli <f.fainelli@gmail.com>
To: netdev@vger.kernel.org
Cc: davem@davemloft.net, andrew@lunn.ch, sf84@laposte.net,
martin.blumenstingl@googlemail.com, mans@mansr.com,
alexandre.torgue@st.com, peppe.cavallaro@st.com,
timur@codeaurora.org, jbrunet@baylibre.com,
Florian Fainelli <f.fainelli@gmail.com>
Subject: [PATCH net-next v2 2/4] Documentation: net: phy: Add a paragraph about pause frames/flow control
Date: Sun, 27 Nov 2016 10:44:47 -0800 [thread overview]
Message-ID: <20161127184449.12351-3-f.fainelli@gmail.com> (raw)
In-Reply-To: <20161127184449.12351-1-f.fainelli@gmail.com>
Describe that the Ethernet MAC controller is ultimately responsible for
dealing with proper pause frames/flow control advertisement and
enabling, and that it is therefore allowed to have it change
phydev->supported/advertising with SUPPORTED_Pause and
SUPPORTED_AsymPause.
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
---
Documentation/networking/phy.txt | 18 ++++++++++++++++--
1 file changed, 16 insertions(+), 2 deletions(-)
diff --git a/Documentation/networking/phy.txt b/Documentation/networking/phy.txt
index 4b25c0f24201..9a42a9414cea 100644
--- a/Documentation/networking/phy.txt
+++ b/Documentation/networking/phy.txt
@@ -127,8 +127,9 @@ Letting the PHY Abstraction Layer do Everything
values pruned from them which don't make sense for your controller (a 10/100
controller may be connected to a gigabit capable PHY, so you would need to
mask off SUPPORTED_1000baseT*). See include/linux/ethtool.h for definitions
- for these bitfields. Note that you should not SET any bits, or the PHY may
- get put into an unsupported state.
+ for these bitfields. Note that you should not SET any bits, except the
+ SUPPORTED_Pause and SUPPORTED_AsymPause bits (see below), or the PHY may get
+ put into an unsupported state.
Lastly, once the controller is ready to handle network traffic, you call
phy_start(phydev). This tells the PAL that you are ready, and configures the
@@ -139,6 +140,19 @@ Letting the PHY Abstraction Layer do Everything
When you want to disconnect from the network (even if just briefly), you call
phy_stop(phydev).
+Pause frames / flow control
+
+ The PHY does not participate directly in flow control/pause frames except by
+ making sure that the SUPPORTED_Pause and SUPPORTED_AsymPause bits are set in
+ MII_ADVERTISE to indicate towards the link partner that the Ethernet MAC
+ controller supports such a thing. Since flow control/pause frames generation
+ involves the Ethernet MAC driver, it is recommended that this driver takes care
+ of properly indicating advertisement and support for such features by setting
+ the SUPPORTED_Pause and SUPPORTED_AsymPause bits accordingly. This can be done
+ either before or after phy_connect() and/or as a result of implementing the
+ ethtool::set_pauseparam feature.
+
+
Keeping Close Tabs on the PAL
It is possible that the PAL's built-in state machine needs a little help to
--
2.9.3
next prev parent reply other threads:[~2016-11-27 18:44 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-27 18:44 [PATCH net-next v2 0/4] Documentation: net: phy: Improve documentation Florian Fainelli
2016-11-27 18:44 ` [PATCH net-next v2 1/4] Documentation: net: phy: remove description of function pointers Florian Fainelli
2016-11-27 18:44 ` Florian Fainelli [this message]
2016-11-28 10:38 ` [PATCH net-next v2 2/4] Documentation: net: phy: Add a paragraph about pause frames/flow control Sebastian Frias
2016-11-28 17:33 ` Florian Fainelli
2016-11-30 13:20 ` Sebastian Frias
2016-11-27 18:44 ` [PATCH net-next v2 3/4] Documentation: net: phy: Add blurb about RGMII Florian Fainelli
2016-11-27 22:24 ` Timur Tabi
2016-11-27 23:02 ` Florian Fainelli
2016-11-30 12:32 ` David Laight
2016-11-30 13:43 ` Måns Rullgård
2016-11-28 10:34 ` Sebastian Frias
2016-11-28 17:43 ` Florian Fainelli
2016-11-28 19:15 ` Mason
2016-11-28 19:47 ` Florian Fainelli
2016-11-27 18:44 ` [PATCH net-next v2 4/4] Documentation: net: phy: Add links to several standards documents Florian Fainelli
2016-11-27 20:32 ` [PATCH net-next v2 0/4] Documentation: net: phy: Improve documentation Martin Blumenstingl
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=20161127184449.12351-3-f.fainelli@gmail.com \
--to=f.fainelli@gmail.com \
--cc=alexandre.torgue@st.com \
--cc=andrew@lunn.ch \
--cc=davem@davemloft.net \
--cc=jbrunet@baylibre.com \
--cc=mans@mansr.com \
--cc=martin.blumenstingl@googlemail.com \
--cc=netdev@vger.kernel.org \
--cc=peppe.cavallaro@st.com \
--cc=sf84@laposte.net \
--cc=timur@codeaurora.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.