stm32mp: stm32prog: replace alias by serial device sequence number
[platform/kernel/u-boot.git] / arch / arm / mach-stm32mp / cmd_stm32prog / stm32prog_serial.c
index 373ca20..a51e5e3 100644 (file)
@@ -187,36 +187,19 @@ static int stm32prog_read(struct stm32prog_data *data, u8 phase, u32 offset,
 int stm32prog_serial_init(struct stm32prog_data *data, int link_dev)
 {
        struct udevice *dev = NULL;
-       int node;
-       char alias[10];
-       const char *path;
        struct dm_serial_ops *ops;
        /* no parity, 8 bits, 1 stop */
        u32 serial_config = SERIAL_DEFAULT_CONFIG;
 
        down_serial_dev = NULL;
 
-       sprintf(alias, "serial%d", link_dev);
-       path = fdt_get_alias(gd->fdt_blob, alias);
-       if (!path) {
-               log_err("%s alias not found", alias);
-               return -ENODEV;
-       }
-       node = fdt_path_offset(gd->fdt_blob, path);
-       if (!uclass_get_device_by_of_offset(UCLASS_SERIAL, node,
-                                           &dev)) {
-               down_serial_dev = dev;
-       } else if (node > 0 &&
-                  !lists_bind_fdt(gd->dm_root, offset_to_ofnode(node),
-                                  &dev, false)) {
-               if (!device_probe(dev))
-                       down_serial_dev = dev;
-       }
-       if (!down_serial_dev) {
-               log_err("%s = %s device not found", alias, path);
+       if (uclass_get_device_by_seq(UCLASS_SERIAL, link_dev, &dev)) {
+               log_err("serial %d device not found\n", link_dev);
                return -ENODEV;
        }
 
+       down_serial_dev = dev;
+
        /* force silent console on uart only when used */
        if (gd->cur_serial_dev == down_serial_dev)
                gd->flags |= GD_FLG_DISABLE_CONSOLE | GD_FLG_SILENT;
@@ -226,11 +209,11 @@ int stm32prog_serial_init(struct stm32prog_data *data, int link_dev)
        ops = serial_get_ops(down_serial_dev);
 
        if (!ops) {
-               log_err("%s = %s missing ops", alias, path);
+               log_err("serial %d = %s missing ops\n", link_dev, dev->name);
                return -ENODEV;
        }
        if (!ops->setconfig) {
-               log_err("%s = %s missing setconfig", alias, path);
+               log_err("serial %d = %s missing setconfig\n", link_dev, dev->name);
                return -ENODEV;
        }