summaryrefslogtreecommitdiffstats
path: root/drivers/tty
diff options
context:
space:
mode:
authorYi Yang <yiyang13@huawei.com>2023-08-17 18:54:06 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2023-09-13 09:42:56 +0200
commitdb18d5e3eee46f2da86191d9669ac9d763ee57d8 (patch)
tree72d141d975dec090e8371c768952ea778b0ea1ad /drivers/tty
parent93e908545361c58a092dad46999536d2c12159b0 (diff)
downloadlinux-stable-db18d5e3eee46f2da86191d9669ac9d763ee57d8.tar.gz
linux-stable-db18d5e3eee46f2da86191d9669ac9d763ee57d8.tar.bz2
linux-stable-db18d5e3eee46f2da86191d9669ac9d763ee57d8.zip
serial: tegra: handle clk prepare error in tegra_uart_hw_init()
[ Upstream commit 5abd01145d0cc6cd1b7c2fe6ee0b9ea0fa13671e ] In tegra_uart_hw_init(), the return value of clk_prepare_enable() should be checked since it might fail. Fixes: e9ea096dd225 ("serial: tegra: add serial driver") Signed-off-by: Yi Yang <yiyang13@huawei.com> Link: https://lore.kernel.org/r/20230817105406.228674-1-yiyang13@huawei.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers/tty')
-rw-r--r--drivers/tty/serial/serial-tegra.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/tty/serial/serial-tegra.c b/drivers/tty/serial/serial-tegra.c
index c08360212aa2..7aa2b5b67001 100644
--- a/drivers/tty/serial/serial-tegra.c
+++ b/drivers/tty/serial/serial-tegra.c
@@ -999,7 +999,11 @@ static int tegra_uart_hw_init(struct tegra_uart_port *tup)
tup->ier_shadow = 0;
tup->current_baud = 0;
- clk_prepare_enable(tup->uart_clk);
+ ret = clk_prepare_enable(tup->uart_clk);
+ if (ret) {
+ dev_err(tup->uport.dev, "could not enable clk\n");
+ return ret;
+ }
/* Reset the UART controller to clear all previous status.*/
reset_control_assert(tup->rst);