[U-Boot] [PATCH 1/4] net: mdio-uclass: name MDIO according to device-name property if preset
Alex Marginean
alexandru.marginean at nxp.com
Wed Jul 17 15:10:23 UTC 2019
Use the optional property device-name to name the MDIO bus. This works
around limitations with using the DT node name on devices such as
Armada-8040, which integrates two cp100 cores, both featuring MDIOs at the
same relative offsets and with the same DT node names.
The concept was originally proposed by Marvell as a custom property called
mdio-name specific to Marvell driver. This patch uses the more generic
property device-name and moves this into MDIO class code so other can use
it as well.
Signed-off-by: Alex Marginean <alexm.osslist at gmail.com>
---
net/mdio-uclass.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/net/mdio-uclass.c b/net/mdio-uclass.c
index 36a404ff44..428f3a994f 100644
--- a/net/mdio-uclass.c
+++ b/net/mdio-uclass.c
@@ -23,6 +23,17 @@ void dm_mdio_probe_devices(void)
static int dm_mdio_post_bind(struct udevice *dev)
{
+ const char *dt_name;
+
+ /* set a custom name for the MDIO device, if present in DT */
+ if (ofnode_valid(dev->node)) {
+ dt_name = ofnode_read_string(dev->node, "device-name");
+ if (dt_name) {
+ debug("renaming dev %s to %s\n", dev->name, dt_name);
+ device_set_name(dev, dt_name);
+ }
+ }
+
/*
* MDIO command doesn't like spaces in names, don't allow them to keep
* it happy
--
2.17.1
More information about the U-Boot
mailing list