From: Sebastian Andrzej Siewior Date: Wed, 12 Nov 2014 09:28:33 +0000 (+0100) Subject: tty: serial: 8250: omap: line is unsigned, don't check < 0 X-Git-Tag: v3.19-rc1~79^2~24 X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=commitdiff_plain;h=54178fe6b3443249ec2dcd6eec9f2c3ebcdc3142;p=linux.git tty: serial: 8250: omap: line is unsigned, don't check < 0 Dan Carpenter reported: |drivers/tty/serial/8250/8250_omap.c:1025 omap8250_probe() |warn: unsigned 'up.port.line' is never less than zero. |1025 if (up.port.line < 0) { I (wrongly) assumed that line is an int and compiler didn't complain nor did sparse. Since of_alias_get_id() and pdev->id can get negative I check for the error via ret variable. Reported-by: Dan Carpenter Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/tty/serial/8250/8250_omap.c b/drivers/tty/serial/8250/8250_omap.c index 57a8b1241b85..336602eb453e 100644 --- a/drivers/tty/serial/8250/8250_omap.c +++ b/drivers/tty/serial/8250/8250_omap.c @@ -1014,19 +1014,20 @@ static int omap8250_probe(struct platform_device *pdev) up.port.unthrottle = omap_8250_unthrottle; if (pdev->dev.of_node) { - up.port.line = of_alias_get_id(pdev->dev.of_node, "serial"); + ret = of_alias_get_id(pdev->dev.of_node, "serial"); + of_property_read_u32(pdev->dev.of_node, "clock-frequency", &up.port.uartclk); priv->wakeirq = irq_of_parse_and_map(pdev->dev.of_node, 1); } else { - up.port.line = pdev->id; + ret = pdev->id; } - - if (up.port.line < 0) { - dev_err(&pdev->dev, "failed to get alias/pdev id, errno %d\n", - up.port.line); - return -ENODEV; + if (ret < 0) { + dev_err(&pdev->dev, "failed to get alias/pdev id\n"); + return ret; } + up.port.line = ret; + if (!up.port.uartclk) { up.port.uartclk = DEFAULT_CLK_SPEED; dev_warn(&pdev->dev,