Merge tag 'block-5.14-2021-07-08' of git://git.kernel.dk/linux-block
[platform/kernel/linux-starfive.git] / include / linux / fwnode_mdio.h
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /*
3  * FWNODE helper for the MDIO (Ethernet PHY) API
4  */
5
6 #ifndef __LINUX_FWNODE_MDIO_H
7 #define __LINUX_FWNODE_MDIO_H
8
9 #include <linux/phy.h>
10
11 #if IS_ENABLED(CONFIG_FWNODE_MDIO)
12 int fwnode_mdiobus_phy_device_register(struct mii_bus *mdio,
13                                        struct phy_device *phy,
14                                        struct fwnode_handle *child, u32 addr);
15
16 int fwnode_mdiobus_register_phy(struct mii_bus *bus,
17                                 struct fwnode_handle *child, u32 addr);
18
19 #else /* CONFIG_FWNODE_MDIO */
20 int fwnode_mdiobus_phy_device_register(struct mii_bus *mdio,
21                                        struct phy_device *phy,
22                                        struct fwnode_handle *child, u32 addr)
23 {
24         return -EINVAL;
25 }
26
27 static inline int fwnode_mdiobus_register_phy(struct mii_bus *bus,
28                                               struct fwnode_handle *child,
29                                               u32 addr)
30 {
31         return -EINVAL;
32 }
33 #endif
34
35 #endif /* __LINUX_FWNODE_MDIO_H */