Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d144aff1 authored by Tobias Klauser's avatar Tobias Klauser Committed by Greg Kroah-Hartman
Browse files

serial: altera_uart: Use of_property_read_u32 instead of open-coding it



Use of_property_read_u32 instead of of_get_property with return value
checks and endianness conversion. Also remove the !CONFIG_OF
implementation of altera_uart_get_of_uartclk as of_property_read_u32
will return a non-zero value for !CONFIG_OF.

Signed-off-by: default avatarTobias Klauser <tklauser@distanz.ch>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent acccab42
Loading
Loading
Loading
Loading
+2 −24
Original line number Diff line number Diff line
@@ -508,29 +508,6 @@ static struct uart_driver altera_uart_driver = {
	.cons		= ALTERA_UART_CONSOLE,
};

#ifdef CONFIG_OF
static int altera_uart_get_of_uartclk(struct platform_device *pdev,
				      struct uart_port *port)
{
	int len;
	const __be32 *clk;

	clk = of_get_property(pdev->dev.of_node, "clock-frequency", &len);
	if (!clk || len < sizeof(__be32))
		return -ENODEV;

	port->uartclk = be32_to_cpup(clk);

	return 0;
}
#else
static int altera_uart_get_of_uartclk(struct platform_device *pdev,
				      struct uart_port *port)
{
	return -ENODEV;
}
#endif /* CONFIG_OF */

static int altera_uart_probe(struct platform_device *pdev)
{
	struct altera_uart_platform_uart *platp = dev_get_platdata(&pdev->dev);
@@ -570,7 +547,8 @@ static int altera_uart_probe(struct platform_device *pdev)
	if (platp)
		port->uartclk = platp->uartclk;
	else {
		ret = altera_uart_get_of_uartclk(pdev, port);
		ret = of_property_read_u32(pdev->dev.of_node, "clock-frequency",
					   &port->uartclk);
		if (ret)
			return ret;
	}