Index: linux-2.6.25.1/drivers/net/phy/Kconfig =================================================================== --- linux-2.6.25.1.orig/drivers/net/phy/Kconfig 2008-05-12 23:44:33.000000000 +0200 +++ linux-2.6.25.1/drivers/net/phy/Kconfig 2008-05-12 23:45:33.000000000 +0200 @@ -70,6 +70,12 @@ ---help--- Currently supports the ADM6996F switch +config MVSWITCH_PHY + tristate "Driver for Marvell switches" + select VLAN_8021Q + ---help--- + Currently supports the Marvell 88E6060 switch. + config FIXED_PHY bool "Driver for MDIO Bus/PHY emulation with fixed speed/link PHYs" depends on PHYLIB=y Index: linux-2.6.25.1/drivers/net/phy/Makefile =================================================================== --- linux-2.6.25.1.orig/drivers/net/phy/Makefile 2008-05-12 23:44:50.000000000 +0200 +++ linux-2.6.25.1/drivers/net/phy/Makefile 2008-05-12 23:45:59.000000000 +0200 @@ -13,6 +13,7 @@ obj-$(CONFIG_BROADCOM_PHY) += broadcom.o obj-$(CONFIG_ICPLUS_PHY) += icplus.o obj-$(CONFIG_ADM6996_PHY) += adm6996.o +obj-$(CONFIG_MVSWITCH_PHY) += mvswitch.o obj-$(CONFIG_REALTEK_PHY) += realtek.o obj-$(CONFIG_FIXED_PHY) += fixed.o obj-$(CONFIG_MDIO_BITBANG) += mdio-bitbang.o Index: linux-2.6.25.1/drivers/net/phy/mdio_bus.c =================================================================== --- linux-2.6.25.1.orig/drivers/net/phy/mdio_bus.c 2008-05-12 23:44:21.000000000 +0200 +++ linux-2.6.25.1/drivers/net/phy/mdio_bus.c 2008-05-12 23:45:33.000000000 +0200 @@ -35,6 +35,12 @@ #include #include +static void mdio_dev_release(struct device *dev) +{ + /* nothing to do */ +} + + /** * mdiobus_register - bring up all the PHYs on a given bus and attach them to bus * @bus: target mii_bus @@ -85,6 +91,7 @@ phydev->dev.parent = bus->dev; phydev->dev.bus = &mdio_bus_type; + phydev->dev.release = mdio_dev_release; snprintf(phydev->dev.bus_id, BUS_ID_SIZE, PHY_ID_FMT, bus->id, i); phydev->bus = bus;