1 // SPDX-License-Identifier: GPL-2.0-or-later 2 3 #include <linux/phy.h> 4 5 /** 6 * __devm_mdiobus_register - Resource-managed variant of mdiobus_register() 7 * @bus: MII bus structure to register 8 * @owner: Owning module 9 * 10 * Returns 0 on success, negative error number on failure. 11 */ 12 int __devm_mdiobus_register(struct mii_bus *bus, struct module *owner) 13 { 14 int ret; 15 16 if (!bus->is_managed) 17 return -EPERM; 18 19 ret = __mdiobus_register(bus, owner); 20 if (!ret) 21 bus->is_managed_registered = 1; 22 23 return ret; 24 } 25 EXPORT_SYMBOL(__devm_mdiobus_register); 26