]> git.baikalelectronics.ru Git - kernel.git/commit
net: phy: Add cable test support to state machine
authorAndrew Lunn <andrew@lunn.ch>
Sun, 10 May 2020 19:12:30 +0000 (21:12 +0200)
committerJakub Kicinski <kuba@kernel.org>
Sun, 10 May 2020 19:27:31 +0000 (12:27 -0700)
commit85fa5703f1a7102069d8f90bc425ced79b045d35
treefab31149fd53722c3c1f3157e115513b08d5d146
parentc15aea5629ce944d1d1c05d2bccc2f54ff0f7405
net: phy: Add cable test support to state machine

Running a cable test is desruptive to normal operation of the PHY and
can take a 5 to 10 seconds to complete. The RTNL lock cannot be held
for this amount of time, and add a new state to the state machine for
running a cable test.

The driver is expected to implement two functions. The first is used
to start a cable test. Once the test has started, it should return.

The second function is called once per second, or on interrupt to
check if the cable test is complete, and to allow the PHY to report
the status.

v2:
Rename phy_cable_test_abort to phy_abort_cable_test
Return different extack when already running test
Use phy_init_hw() to reset the PHY

Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/phy/phy.c
include/linux/phy.h