mbox series

[net-next,v4,0/9] net: phy: icplus: cleanups and new features

Message ID 20210211074750.28674-1-michael@walle.cc (mailing list archive)
Headers show
Series net: phy: icplus: cleanups and new features | expand

Message

Michael Walle Feb. 11, 2021, 7:47 a.m. UTC
Cleanup the PHY drivers for IPplus devices and add PHY counters and MDIX
support for the IP101A/G.

Patch 5 adds a model detection based on the behavior of the PHY.
Unfortunately, the IP101A shares the PHY ID with the IP101G. But the latter
provides more features. Try to detect the newer model by accessing the page
selection register. If it is writeable, it is assumed, that it is a IP101G.

With this detection in place, we can now access registers >= 16 in a
correct way on the IP101G; that is by first selecting the correct page.
This might previouly worked, because no one ever set another active page
before booting linux.

The last two patches add the new features.

Michael Walle (9):
  net: phy: icplus: use PHY_ID_MATCH_MODEL() macro
  net: phy: icplus: use PHY_ID_MATCH_EXACT() for IP101A/G
  net: phy: icplus: drop address operator for functions
  net: phy: icplus: use the .soft_reset() of the phy-core
  net: phy: icplus: split IP101A/G driver
  net: phy: icplus: don't set APS_EN bit on IP101G
  net: phy: icplus: fix paged register access
  net: phy: icplus: add PHY counter for IP101G
  net: phy: icplus: add MDI/MDIX support for IP101A/G

 drivers/net/phy/icplus.c | 384 ++++++++++++++++++++++++++++++++-------
 1 file changed, 323 insertions(+), 61 deletions(-)

Comments

patchwork-bot+netdevbpf@kernel.org Feb. 11, 2021, 10:10 p.m. UTC | #1
Hello:

This series was applied to netdev/net-next.git (refs/heads/master):

On Thu, 11 Feb 2021 08:47:41 +0100 you wrote:
> Cleanup the PHY drivers for IPplus devices and add PHY counters and MDIX
> support for the IP101A/G.
> 
> Patch 5 adds a model detection based on the behavior of the PHY.
> Unfortunately, the IP101A shares the PHY ID with the IP101G. But the latter
> provides more features. Try to detect the newer model by accessing the page
> selection register. If it is writeable, it is assumed, that it is a IP101G.
> 
> [...]

Here is the summary with links:
  - [net-next,v4,1/9] net: phy: icplus: use PHY_ID_MATCH_MODEL() macro
    https://git.kernel.org/netdev/net-next/c/2ad4758cec48
  - [net-next,v4,2/9] net: phy: icplus: use PHY_ID_MATCH_EXACT() for IP101A/G
    https://git.kernel.org/netdev/net-next/c/7360a4de36a4
  - [net-next,v4,3/9] net: phy: icplus: drop address operator for functions
    https://git.kernel.org/netdev/net-next/c/8edf206cc2b5
  - [net-next,v4,4/9] net: phy: icplus: use the .soft_reset() of the phy-core
    https://git.kernel.org/netdev/net-next/c/df22de9a6f13
  - [net-next,v4,5/9] net: phy: icplus: split IP101A/G driver
    https://git.kernel.org/netdev/net-next/c/675115bf8c3d
  - [net-next,v4,6/9] net: phy: icplus: don't set APS_EN bit on IP101G
    https://git.kernel.org/netdev/net-next/c/eeac7d43d4dd
  - [net-next,v4,7/9] net: phy: icplus: fix paged register access
    https://git.kernel.org/netdev/net-next/c/f9bc51e6cce2
  - [net-next,v4,8/9] net: phy: icplus: add PHY counter for IP101G
    https://git.kernel.org/netdev/net-next/c/a0750d42e951
  - [net-next,v4,9/9] net: phy: icplus: add MDI/MDIX support for IP101A/G
    https://git.kernel.org/netdev/net-next/c/32ab60e53920

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html