<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/net/phy/phy-c45.c, branch linux-5.14.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.14.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.14.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2021-06-16T19:34:07Z</updated>
<entry>
<title>net: phy: delete repeated words of comments</title>
<updated>2021-06-16T19:34:07Z</updated>
<author>
<name>Wenpeng Liang</name>
</author>
<published>2021-06-16T10:01:21Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e1f82127d67f53a11443d5ce76c7fe52d89ee588'/>
<id>urn:sha1:e1f82127d67f53a11443d5ce76c7fe52d89ee588</id>
<content type='text'>
There are some repeated words in some comments, they should be deleted.

Signed-off-by: Wenpeng Liang &lt;liangwenpeng@huawei.com&gt;
Signed-off-by: Weihang Li &lt;liweihang@huawei.com&gt;
Reviewed-by: Andrew Lunn &lt;andrew@lunn.ch&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: phy: add genphy_c45_pma_suspend/resume</title>
<updated>2021-04-19T23:19:44Z</updated>
<author>
<name>Radu Pirea (NXP OSS)</name>
</author>
<published>2021-04-19T16:13:59Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=da702f34e3cc4b6b87ed2d63c17d65d841fa81c6'/>
<id>urn:sha1:da702f34e3cc4b6b87ed2d63c17d65d841fa81c6</id>
<content type='text'>
Add generic PMA suspend and resume callback functions for C45 PHYs.

Signed-off-by: Radu Pirea (NXP OSS) &lt;radu-nicolae.pirea@oss.nxp.com&gt;
Reviewed-by: Andrew Lunn &lt;andrew@lunn.ch&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: phy: add genphy_c45_loopback</title>
<updated>2021-03-24T22:20:07Z</updated>
<author>
<name>Wong Vee Khee</name>
</author>
<published>2021-03-23T16:46:40Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0ef25ed104ac17fa0586fbb076f24a5e8940b966'/>
<id>urn:sha1:0ef25ed104ac17fa0586fbb076f24a5e8940b966</id>
<content type='text'>
Add generic code to enable C45 PHY loopback into the common phy-c45.c
file. This will allow C45 PHY drivers aceess this by setting
.set_loopback.

Suggested-by: Heiner Kallweit &lt;hkallweit1@gmail.com&gt;
Signed-off-by: Wong Vee Khee &lt;vee.khee.wong@linux.intel.com&gt;
Reviewed-by: Heiner Kallweit &lt;hkallweit1@gmail.com&gt;
Reviewed-by: Andrew Lunn &lt;andrew@lunn.ch&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: phy: fix kernel-doc markups</title>
<updated>2020-11-17T22:15:03Z</updated>
<author>
<name>Mauro Carvalho Chehab</name>
</author>
<published>2020-11-16T10:17:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=69280228d2b1cf650b6c9fc43e3158fa911b13d1'/>
<id>urn:sha1:69280228d2b1cf650b6c9fc43e3158fa911b13d1</id>
<content type='text'>
Some functions have different names between their prototypes
and the kernel-doc markup.

Reviewed-by: Andrew Lunn &lt;andrew@lunn.ch&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
</content>
</entry>
<entry>
<title>net: phy: split devices_in_package</title>
<updated>2020-06-20T03:17:15Z</updated>
<author>
<name>Russell King</name>
</author>
<published>2020-06-18T13:46:08Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=320ed3bf900075614c43499dc01db8d25717b986'/>
<id>urn:sha1:320ed3bf900075614c43499dc01db8d25717b986</id>
<content type='text'>
We have two competing requirements for the devices_in_package field.
We want to use it as a bit array indicating which MMDs are present, but
we also want to know if the Clause 22 registers are present.

Since "devices in package" is a term used in the 802.3 specification,
keep this as the as-specified values read from the PHY, and introduce
a new member "mmds_present" to indicate which MMDs are actually
present in the PHY, derived from the "devices in package" value.

Reviewed-by: Florian Fainelli &lt;f.fainelli@gmail.com&gt;
Signed-off-by: Russell King &lt;rmk+kernel@armlinux.org.uk&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: phy: remove genphy_no_soft_reset</title>
<updated>2020-04-24T23:47:51Z</updated>
<author>
<name>Heiner Kallweit</name>
</author>
<published>2020-04-23T19:35:36Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3194915486b2bc3f77745774f1731b78f32ff688'/>
<id>urn:sha1:3194915486b2bc3f77745774f1731b78f32ff688</id>
<content type='text'>
Since 6e2d85ec0559 ("net: phy: Stop with excessive soft reset")
we don't need genphy_no_soft_reset() any longer. Not setting
callback soft_reset results in a no-op now.

Signed-off-by: Heiner Kallweit &lt;hkallweit1@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net</title>
<updated>2020-02-28T02:31:39Z</updated>
<author>
<name>David S. Miller</name>
</author>
<published>2020-02-28T02:31:39Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9f6e055907362f6692185c1c9658295d24095c74'/>
<id>urn:sha1:9f6e055907362f6692185c1c9658295d24095c74</id>
<content type='text'>
The mptcp conflict was overlapping additions.

The SMC conflict was an additional and removal happening at the same
time.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: phy: corrected the return value for genphy_check_and_restart_aneg and genphy_c45_check_and_restart_aneg</title>
<updated>2020-02-27T04:41:42Z</updated>
<author>
<name>Sudheesh Mavila</name>
</author>
<published>2020-02-26T07:10:45Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4f31c532ad400a34dbdd836c204ed964d1ec2da5'/>
<id>urn:sha1:4f31c532ad400a34dbdd836c204ed964d1ec2da5</id>
<content type='text'>
When auto-negotiation is not required, return value should be zero.

Changes v1-&gt;v2:
- improved comments and code as Andrew Lunn and Heiner Kallweit suggestion
- fixed issue in genphy_c45_check_and_restart_aneg as Russell King
  suggestion.

Fixes: 2a10ab043ac5 ("net: phy: add genphy_check_and_restart_aneg()")
Fixes: 1af9f16840e9 ("net: phy: add genphy_c45_check_and_restart_aneg()")
Signed-off-by: Sudheesh Mavila &lt;sudheesh.mavila@amd.com&gt;
Reviewed-by: Heiner Kallweit &lt;hkallweit1@gmail.com&gt;
Reviewed-by: Andrew Lunn &lt;andrew@lunn.ch&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>phy: avoid unnecessary link-up delay in polling mode</title>
<updated>2020-02-20T00:17:28Z</updated>
<author>
<name>Petr Oros</name>
</author>
<published>2020-02-18T09:35:55Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e96bd2d3b1f83170d1d5c1a99e439b39a22a5b58'/>
<id>urn:sha1:e96bd2d3b1f83170d1d5c1a99e439b39a22a5b58</id>
<content type='text'>
commit 93c0970493c71f ("net: phy: consider latched link-down status in
polling mode") removed double-read of latched link-state register for
polling mode from genphy_update_link(). This added extra ~1s delay into
sequence link down-&gt;up.
Following scenario:
 - After boot link goes up
 - phy_start() is called triggering an aneg restart, hence link goes
   down and link-down info is latched.
 - After aneg has finished link goes up. In phy_state_machine is checked
   link state but it is latched "link is down". The state machine is
   scheduled after one second and there is detected "link is up". This
   extra delay can be avoided when we keep link-state register double read
   in case when link was down previously.

With this solution we don't miss a link-down event in polling mode and
link-up is faster.

Details about this quirky behavior on Realtek phy:
Without patch:
T0:    aneg is started, link goes down, link-down status is latched
T0+3s: state machine runs, up-to-date link-down is read
T0+4s: state machine runs, aneg is finished (BMSR_ANEGCOMPLETE==1),
       here i read link-down (BMSR_LSTATUS==0),
T0+5s: state machine runs, aneg is finished (BMSR_ANEGCOMPLETE==1),
       up-to-date link-up is read (BMSR_LSTATUS==1),
       phydev-&gt;link goes up, state change PHY_NOLINK to PHY_RUNNING

With patch:
T0:    aneg is started, link goes down, link-down status is latched
T0+3s: state machine runs, up-to-date link-down is read
T0+4s: state machine runs, aneg is finished (BMSR_ANEGCOMPLETE==1),
       first BMSR read: BMSR_ANEGCOMPLETE==1 and BMSR_LSTATUS==0,
       second BMSR read: BMSR_ANEGCOMPLETE==1 and BMSR_LSTATUS==1,
       phydev-&gt;link goes up, state change PHY_NOLINK to PHY_RUNNING

Signed-off-by: Petr Oros &lt;poros@redhat.com&gt;
Reviewed-by: Heiner Kallweit &lt;hkallweit1@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: phy: Fix "link partner" information disappear issue</title>
<updated>2019-10-16T20:17:01Z</updated>
<author>
<name>Yonglong Liu</name>
</author>
<published>2019-10-16T02:30:39Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3de5ae54712c75cf3c517a288e0a704784ec6cf5'/>
<id>urn:sha1:3de5ae54712c75cf3c517a288e0a704784ec6cf5</id>
<content type='text'>
Some drivers just call phy_ethtool_ksettings_set() to set the
links, for those phy drivers that use genphy_read_status(), if
autoneg is on, and the link is up, than execute "ethtool -s
ethx autoneg on" will cause "link partner" information disappear.

The call trace is phy_ethtool_ksettings_set()-&gt;phy_start_aneg()
-&gt;linkmode_zero(phydev-&gt;lp_advertising)-&gt;genphy_read_status(),
the link didn't change, so genphy_read_status() just return, and
phydev-&gt;lp_advertising is zero now.

This patch moves the clear operation of lp_advertising from
phy_start_aneg() to genphy_read_lpa()/genphy_c45_read_lpa(), and
if autoneg on and autoneg not complete, just clear what the
generic functions care about.

Fixes: 88d6272acaaa ("net: phy: avoid unneeded MDIO reads in genphy_read_status")
Signed-off-by: Yonglong Liu &lt;liuyonglong@huawei.com&gt;
Reviewed-by: Heiner Kallweit &lt;hkallweit1@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
