mvswitch,adm6996: use phy fixups instead of a nonstandard patch for hardware detection
[openwrt.git] / target / linux / generic-2.6 / patches-2.6.23 / 640-mvswitch.patch
1 --- a/drivers/net/phy/Kconfig
2 +++ b/drivers/net/phy/Kconfig
3 @@ -65,6 +65,12 @@ config ADM6996_PHY
4         ---help---
5           Currently supports the ADM6996F switch
6  
7 +config MVSWITCH_PHY
8 +       tristate "Driver for Marvell switches"
9 +       select VLAN_8021Q
10 +       ---help---
11 +         Currently supports the Marvell 88E6060 switch.
12 +
13  config FIXED_PHY
14         tristate "Drivers for PHY emulation on fixed speed/link"
15         ---help---
16 --- a/drivers/net/phy/Makefile
17 +++ b/drivers/net/phy/Makefile
18 @@ -13,4 +13,5 @@ obj-$(CONFIG_VITESSE_PHY)     += vitesse.o
19  obj-$(CONFIG_BROADCOM_PHY)     += broadcom.o
20  obj-$(CONFIG_ICPLUS_PHY)       += icplus.o
21  obj-$(CONFIG_ADM6996_PHY)      += adm6996.o
22 +obj-$(CONFIG_MVSWITCH_PHY)     += mvswitch.o
23  obj-$(CONFIG_FIXED_PHY)                += fixed.o
24 --- a/drivers/net/phy/mdio_bus.c
25 +++ b/drivers/net/phy/mdio_bus.c
26 @@ -35,6 +35,12 @@
27  #include <asm/irq.h>
28  #include <asm/uaccess.h>
29  
30 +static void mdio_dev_release(struct device *dev)
31 +{
32 +       /* nothing to do */
33 +}
34 +
35 +
36  /**
37   * mdiobus_register - bring up all the PHYs on a given bus and attach them to bus
38   * @bus: target mii_bus
39 @@ -85,6 +91,7 @@ int mdiobus_register(struct mii_bus *bus
40  
41                         phydev->dev.parent = bus->dev;
42                         phydev->dev.bus = &mdio_bus_type;
43 +                       phydev->dev.release = mdio_dev_release;
44                         snprintf(phydev->dev.bus_id, BUS_ID_SIZE, PHY_ID_FMT, bus->id, i);
45  
46                         phydev->bus = bus;