summaryrefslogtreecommitdiff
path: root/include/linux/phylink.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/phylink.h')
-rw-r--r--include/linux/phylink.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/include/linux/phylink.h b/include/linux/phylink.h
index 9d4a57529d9d..10c0d4728391 100644
--- a/include/linux/phylink.h
+++ b/include/linux/phylink.h
@@ -21,6 +21,11 @@ enum {
MLO_AN_FIXED, /* Fixed-link mode */
MLO_AN_INBAND, /* In-band protocol */
+ /* pcs_validate() return values */
+ PCS_VALIDATE_FAIL = -EINVAL, /* Failed */
+ PCS_VALIDATE_PASS = 0, /* Passed */
+ PCS_VALIDATE_RATEADAPT = 1, /* Passed with rate adaption at PCS */
+
MAC_SYM_PAUSE = BIT(0),
MAC_ASYM_PAUSE = BIT(1),
MAC_10HD = BIT(2),
@@ -460,7 +465,9 @@ struct phylink_pcs_ops {
* &struct phylink_mac_ops validate() method.
*
* Returns -EINVAL if the interface mode/autoneg mode is not supported.
- * Returns non-zero positive if the link state can be supported.
+ * Returns non-zero positive if the link state can be supported and does
+ * not depend on the MAC.
+ * Returns 0 if the link state can be supported but does depend on the MAC.
*/
int pcs_validate(struct phylink_pcs *pcs, unsigned long *supported,
const struct phylink_link_state *state);