diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/tty/serial/imx.c | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c index 827db7654594..7e91b3d368cd 100644 --- a/drivers/tty/serial/imx.c +++ b/drivers/tty/serial/imx.c | |||
@@ -1286,22 +1286,17 @@ static int serial_imx_resume(struct platform_device *dev) | |||
1286 | static int serial_imx_probe_dt(struct imx_port *sport, | 1286 | static int serial_imx_probe_dt(struct imx_port *sport, |
1287 | struct platform_device *pdev) | 1287 | struct platform_device *pdev) |
1288 | { | 1288 | { |
1289 | static int portnum = 0; | ||
1289 | struct device_node *np = pdev->dev.of_node; | 1290 | struct device_node *np = pdev->dev.of_node; |
1290 | const struct of_device_id *of_id = | 1291 | const struct of_device_id *of_id = |
1291 | of_match_device(imx_uart_dt_ids, &pdev->dev); | 1292 | of_match_device(imx_uart_dt_ids, &pdev->dev); |
1292 | int ret; | ||
1293 | 1293 | ||
1294 | if (!np) | 1294 | if (!np) |
1295 | return -ENODEV; | 1295 | return -ENODEV; |
1296 | 1296 | ||
1297 | ret = of_alias_get_id(np, "serial"); | 1297 | sport->port.line = portnum++; |
1298 | if (ret < 0) { | 1298 | if (sport->port.line >= UART_NR) |
1299 | pr_err("%s: failed to get alias id, errno %d\n", | 1299 | return -EINVAL; |
1300 | __func__, ret); | ||
1301 | return -ENODEV; | ||
1302 | } else { | ||
1303 | sport->port.line = ret; | ||
1304 | } | ||
1305 | 1300 | ||
1306 | if (of_get_property(np, "fsl,uart-has-rtscts", NULL)) | 1301 | if (of_get_property(np, "fsl,uart-has-rtscts", NULL)) |
1307 | sport->have_rtscts = 1; | 1302 | sport->have_rtscts = 1; |