summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorBartosz Golaszewski <bgolaszewski@baylibre.com>2020-06-29 14:03:41 +0200
committerDavid S. Miller <davem@davemloft.net>2020-06-30 15:57:34 -0700
commit8b11c20a658de159fcf18ebce4f2acfdf747ff25 (patch)
treea108af20681fcab3ab87ff1dc44d1c2f262ec817 /drivers
parentbd8ff6de0cf5b05bc7e1822aec79edac05b02a35 (diff)
downloadlinux-8b11c20a658de159fcf18ebce4f2acfdf747ff25.tar.bz2
phy: un-inline devm_mdiobus_register()
Functions should only be static inline if they're very short. This devres helper is already over 10 lines and it will grow soon as we'll be improving upon its approach. Pull it into mdio_devres.c. Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/phy/Makefile2
-rw-r--r--drivers/net/phy/mdio_devres.c18
2 files changed, 19 insertions, 1 deletions
diff --git a/drivers/net/phy/Makefile b/drivers/net/phy/Makefile
index dc9e53b511d6..896afdcac437 100644
--- a/drivers/net/phy/Makefile
+++ b/drivers/net/phy/Makefile
@@ -3,7 +3,7 @@
libphy-y := phy.o phy-c45.o phy-core.o phy_device.o \
linkmode.o
-mdio-bus-y += mdio_bus.o mdio_device.o
+mdio-bus-y += mdio_bus.o mdio_device.o mdio_devres.o
ifdef CONFIG_MDIO_DEVICE
obj-y += mdio-boardinfo.o
diff --git a/drivers/net/phy/mdio_devres.c b/drivers/net/phy/mdio_devres.c
new file mode 100644
index 000000000000..f0b4b6cfe5e3
--- /dev/null
+++ b/drivers/net/phy/mdio_devres.c
@@ -0,0 +1,18 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include <linux/phy.h>
+
+int __devm_mdiobus_register(struct mii_bus *bus, struct module *owner)
+{
+ int ret;
+
+ if (!bus->is_managed)
+ return -EPERM;
+
+ ret = __mdiobus_register(bus, owner);
+ if (!ret)
+ bus->is_managed_registered = 1;
+
+ return ret;
+}
+EXPORT_SYMBOL(__devm_mdiobus_register);