From: Ben Hutchings Date: Wed, 29 Apr 2009 08:19:03 +0000 (+0000) Subject: mii: Add mii_advertise_flowctrl() X-Git-Tag: v3.0~8655^2~581 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a8c30832b5b12e5d4e9d1c20cdac3cc2880e08b8;p=platform%2Fkernel%2Flinux-amlogic.git mii: Add mii_advertise_flowctrl() This converts flow control capabilites to an advertising mask and can be useful in combination with mii_resolve_flowctrl_fdx(). Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller --- diff --git a/include/linux/mii.h b/include/linux/mii.h index 14ecb2e..359fba8 100644 --- a/include/linux/mii.h +++ b/include/linux/mii.h @@ -240,6 +240,22 @@ static inline unsigned int mii_duplex (unsigned int duplex_lock, } /** + * mii_advertise_flowctrl - get flow control advertisement flags + * @cap: Flow control capabilities (FLOW_CTRL_RX, FLOW_CTRL_TX or both) + */ +static inline u16 mii_advertise_flowctrl(int cap) +{ + u16 adv = 0; + + if (cap & FLOW_CTRL_RX) + adv = ADVERTISE_PAUSE_CAP | ADVERTISE_PAUSE_ASYM; + if (cap & FLOW_CTRL_TX) + adv ^= ADVERTISE_PAUSE_ASYM; + + return adv; +} + +/** * mii_resolve_flowctrl_fdx * @lcladv: value of MII ADVERTISE register * @rmtadv: value of MII LPA register