net: phylink: clarify flow control settings in documentation
Clarify the expected flow control settings operation in the phylink documentation for each negotiation mode. Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: hongrongxuan <hongrongxuan@huawei.com>
This commit is contained in:
parent
202442fe4e
commit
9a6a9df235
|
@ -149,13 +149,20 @@ int mac_link_state(struct phylink_config *config,
|
||||||
* guaranteed to be correct, and so any mac_config() implementation must
|
* guaranteed to be correct, and so any mac_config() implementation must
|
||||||
* never reference these fields.
|
* never reference these fields.
|
||||||
*
|
*
|
||||||
|
* In all negotiation modes, as defined by @mode, @state->pause indicates the
|
||||||
|
* pause settings which should be applied as follows. If %MLO_PAUSE_AN is not
|
||||||
|
* set, %MLO_PAUSE_TX and %MLO_PAUSE_RX indicate whether the MAC should send
|
||||||
|
* pause frames and/or act on received pause frames respectively. Otherwise,
|
||||||
|
* the results of in-band negotiation/status from the MAC PCS should be used
|
||||||
|
* to control the MAC pause mode settings.
|
||||||
|
*
|
||||||
* The action performed depends on the currently selected mode:
|
* The action performed depends on the currently selected mode:
|
||||||
*
|
*
|
||||||
* %MLO_AN_FIXED, %MLO_AN_PHY:
|
* %MLO_AN_FIXED, %MLO_AN_PHY:
|
||||||
* Configure the specified @state->speed, @state->duplex and
|
* Configure the specified @state->speed and @state->duplex over a link
|
||||||
* @state->pause (%MLO_PAUSE_TX / %MLO_PAUSE_RX) modes over a link
|
* specified by @state->interface. @state->advertising may be used, but
|
||||||
* specified by @state->interface. @state->advertising may be used,
|
* is not required. Pause modes as above. Other members of @state must
|
||||||
* but is not required. Other members of @state must be ignored.
|
* be ignored.
|
||||||
*
|
*
|
||||||
* Valid state members: interface, speed, duplex, pause, advertising.
|
* Valid state members: interface, speed, duplex, pause, advertising.
|
||||||
*
|
*
|
||||||
|
@ -167,11 +174,14 @@ int mac_link_state(struct phylink_config *config,
|
||||||
* mac_link_state() callback. Changes in link state must be made
|
* mac_link_state() callback. Changes in link state must be made
|
||||||
* by calling phylink_mac_change().
|
* by calling phylink_mac_change().
|
||||||
*
|
*
|
||||||
|
* Interface mode specific details are mentioned below.
|
||||||
|
*
|
||||||
* If in 802.3z mode, the link speed is fixed, dependent on the
|
* If in 802.3z mode, the link speed is fixed, dependent on the
|
||||||
* @state->interface. Duplex is negotiated, and pause is advertised
|
* @state->interface. Duplex and pause modes are negotiated via
|
||||||
* according to @state->an_enabled, @state->pause and
|
* the in-band configuration word. Advertised pause modes are set
|
||||||
* @state->advertising flags. Beware of MACs which only support full
|
* according to the @state->an_enabled and @state->advertising
|
||||||
* duplex at gigabit and higher speeds.
|
* flags. Beware of MACs which only support full duplex at gigabit
|
||||||
|
* and higher speeds.
|
||||||
*
|
*
|
||||||
* If in Cisco SGMII mode, the link speed and duplex mode are passed
|
* If in Cisco SGMII mode, the link speed and duplex mode are passed
|
||||||
* in the serial bitstream 16-bit configuration word, and the MAC
|
* in the serial bitstream 16-bit configuration word, and the MAC
|
||||||
|
|
Loading…
Reference in New Issue