diff options
Diffstat (limited to 'include/linux/mdio.h')
-rw-r--r-- | include/linux/mdio.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/include/linux/mdio.h b/include/linux/mdio.h index ca08ab16ecdc..2cfffe586885 100644 --- a/include/linux/mdio.h +++ b/include/linux/mdio.h | |||
@@ -12,6 +12,7 @@ | |||
12 | #include <uapi/linux/mdio.h> | 12 | #include <uapi/linux/mdio.h> |
13 | #include <linux/mod_devicetable.h> | 13 | #include <linux/mod_devicetable.h> |
14 | 14 | ||
15 | struct gpio_desc; | ||
15 | struct mii_bus; | 16 | struct mii_bus; |
16 | 17 | ||
17 | /* Multiple levels of nesting are possible. However typically this is | 18 | /* Multiple levels of nesting are possible. However typically this is |
@@ -39,6 +40,9 @@ struct mdio_device { | |||
39 | /* Bus address of the MDIO device (0-31) */ | 40 | /* Bus address of the MDIO device (0-31) */ |
40 | int addr; | 41 | int addr; |
41 | int flags; | 42 | int flags; |
43 | struct gpio_desc *reset; | ||
44 | unsigned int reset_assert_delay; | ||
45 | unsigned int reset_deassert_delay; | ||
42 | }; | 46 | }; |
43 | #define to_mdio_device(d) container_of(d, struct mdio_device, dev) | 47 | #define to_mdio_device(d) container_of(d, struct mdio_device, dev) |
44 | 48 | ||
@@ -71,6 +75,7 @@ void mdio_device_free(struct mdio_device *mdiodev); | |||
71 | struct mdio_device *mdio_device_create(struct mii_bus *bus, int addr); | 75 | struct mdio_device *mdio_device_create(struct mii_bus *bus, int addr); |
72 | int mdio_device_register(struct mdio_device *mdiodev); | 76 | int mdio_device_register(struct mdio_device *mdiodev); |
73 | void mdio_device_remove(struct mdio_device *mdiodev); | 77 | void mdio_device_remove(struct mdio_device *mdiodev); |
78 | void mdio_device_reset(struct mdio_device *mdiodev, int value); | ||
74 | int mdio_driver_register(struct mdio_driver *drv); | 79 | int mdio_driver_register(struct mdio_driver *drv); |
75 | void mdio_driver_unregister(struct mdio_driver *drv); | 80 | void mdio_driver_unregister(struct mdio_driver *drv); |
76 | int mdio_device_bus_match(struct device *dev, struct device_driver *drv); | 81 | int mdio_device_bus_match(struct device *dev, struct device_driver *drv); |
@@ -257,6 +262,9 @@ static inline u16 ethtool_adv_to_mmd_eee_adv_t(u32 adv) | |||
257 | return reg; | 262 | return reg; |
258 | } | 263 | } |
259 | 264 | ||
265 | int __mdiobus_read(struct mii_bus *bus, int addr, u32 regnum); | ||
266 | int __mdiobus_write(struct mii_bus *bus, int addr, u32 regnum, u16 val); | ||
267 | |||
260 | int mdiobus_read(struct mii_bus *bus, int addr, u32 regnum); | 268 | int mdiobus_read(struct mii_bus *bus, int addr, u32 regnum); |
261 | int mdiobus_read_nested(struct mii_bus *bus, int addr, u32 regnum); | 269 | int mdiobus_read_nested(struct mii_bus *bus, int addr, u32 regnum); |
262 | int mdiobus_write(struct mii_bus *bus, int addr, u32 regnum, u16 val); | 270 | int mdiobus_write(struct mii_bus *bus, int addr, u32 regnum, u16 val); |