Message ID | 20240625032919.73-1-ychuang570808@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v3] tty: serial: ma35d1: Add a NULL check for of_node | expand |
On Tue, Jun 25, 2024 at 03:29:19AM +0000, Jacky Huang wrote: > From: Jacky Huang <ychuang3@nuvoton.com> > > The pdev->dev.of_node can be NULL if the "serial" node is absent. > Add a NULL check to return an error in such cases. > > v3: > - Added "Reported-by:" line. > v2: > - Added "Fixes" line. As per the kernel documentation, these "v3:" information goes below the --- line. Please fix up and send a v4. thanks, greg k-h
diff --git a/drivers/tty/serial/ma35d1_serial.c b/drivers/tty/serial/ma35d1_serial.c index 19f0a305cc43..3b4206e815fe 100644 --- a/drivers/tty/serial/ma35d1_serial.c +++ b/drivers/tty/serial/ma35d1_serial.c @@ -688,12 +688,13 @@ static int ma35d1serial_probe(struct platform_device *pdev) struct uart_ma35d1_port *up; int ret = 0; - if (pdev->dev.of_node) { - ret = of_alias_get_id(pdev->dev.of_node, "serial"); - if (ret < 0) { - dev_err(&pdev->dev, "failed to get alias/pdev id, errno %d\n", ret); - return ret; - } + if (!pdev->dev.of_node) + return -ENODEV; + + ret = of_alias_get_id(pdev->dev.of_node, "serial"); + if (ret < 0) { + dev_err(&pdev->dev, "failed to get alias/pdev id, errno %d\n", ret); + return ret; } up = &ma35d1serial_ports[ret]; up->port.line = ret;