提交 53c6f0bf 编写于 作者: L Lizhi Hou 提交者: Zheng Zengkai

tty: serial: uartlite: allow 64 bit address

stable inclusion
from stable-v5.10.94
commit 8409d2394cca3cef7f625d8a74702f1d600eee3e
bugzilla: https://gitee.com/openeuler/kernel/issues/I531X9

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=8409d2394cca3cef7f625d8a74702f1d600eee3e

--------------------------------

[ Upstream commit 3672fb65 ]

The base address of uartlite registers could be 64 bit address which is from
device resource. When ulite_probe() calls ulite_assign(), this 64 bit
address is casted to 32-bit. The fix is to replace "u32" type with
"phys_addr_t" type for the base address in ulite_assign() argument list.

Fixes: 8fa7b610 ("[POWERPC] Uartlite: Separate the bus binding from the driver proper")
Signed-off-by: NLizhi Hou <lizhi.hou@xilinx.com>
Link: https://lore.kernel.org/r/20211129202302.1319033-1-lizhi.hou@xilinx.comSigned-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: NSasha Levin <sashal@kernel.org>
Signed-off-by: NZheng Zengkai <zhengzengkai@huawei.com>
Acked-by: NXie XiuQi <xiexiuqi@huawei.com>
上级 a916b88d
...@@ -615,7 +615,7 @@ static struct uart_driver ulite_uart_driver = { ...@@ -615,7 +615,7 @@ static struct uart_driver ulite_uart_driver = {
* *
* Returns: 0 on success, <0 otherwise * Returns: 0 on success, <0 otherwise
*/ */
static int ulite_assign(struct device *dev, int id, u32 base, int irq, static int ulite_assign(struct device *dev, int id, phys_addr_t base, int irq,
struct uartlite_data *pdata) struct uartlite_data *pdata)
{ {
struct uart_port *port; struct uart_port *port;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册