]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
net: mdio: add a driver for PIC64-HPSC/HX MDIO controller
authorCharles Perry <charles.perry@microchip.com>
Wed, 8 Apr 2026 13:18:15 +0000 (06:18 -0700)
committerJakub Kicinski <kuba@kernel.org>
Sun, 12 Apr 2026 21:19:19 +0000 (14:19 -0700)
commitf76aef980206e7c6bc09933fd3c8e2b8a3479bd2
tree8a0541ee4e0ec24a5b87707e7f21975652a75899
parent268bb35d1a34c9965ec79922a412e966af98be34
net: mdio: add a driver for PIC64-HPSC/HX MDIO controller

This adds an MDIO driver for PIC64-HPSC/HX. The hardware supports C22
and C45 but only C22 is implemented in this commit.

This MDIO hardware is based on a Microsemi design supported in Linux by
mdio-mscc-miim.c. However, The register interface is completely
different with pic64hpsc, hence the need for a separate driver.

The documentation recommends an input clock of 156.25MHz and a prescaler
of 39, which yields an MDIO clock of 1.95MHz.

The hardware supports an interrupt pin or a "TRIGGER" bit that can be
polled to signal transaction completion. This commit uses polling.

This was tested on Microchip HB1301 evalkit with a VSC8574 and a
VSC8541.

Signed-off-by: Charles Perry <charles.perry@microchip.com>
Reviewed-by: Maxime Chevallier <maxime.chevallier@bootlin.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Link: https://patch.msgid.link/20260408131821.1145334-3-charles.perry@microchip.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
MAINTAINERS
drivers/net/mdio/Kconfig
drivers/net/mdio/Makefile
drivers/net/mdio/mdio-pic64hpsc.c [new file with mode: 0644]