Re: [PATCH] serial: mxs-auart: fix 64-bit cast in probe

From: Jiri Slaby

Date: Fri May 29 2026 - 03:40:57 EST


On 28. 05. 26, 22:30, Rosen Penev wrote:
of_device_get_match_data() returns a pointer. Casting it directly to
enum truncates on 64-bit platforms. Cast to unsigned long instead.

This is a misleading commit log. It still truncates during the assignment.

Fixes compilation with W=1.

Fixes a warning, not compilation, right?

Assisted-by: Opencode:Big-pickle
Signed-off-by: Rosen Penev <rosenp@xxxxxxxxx>
---
drivers/tty/serial/mxs-auart.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/tty/serial/mxs-auart.c b/drivers/tty/serial/mxs-auart.c
index 697318dbb146..de97c0f74e7d 100644
--- a/drivers/tty/serial/mxs-auart.c
+++ b/drivers/tty/serial/mxs-auart.c
@@ -1598,7 +1598,7 @@ static int mxs_auart_probe(struct platform_device *pdev)
return -EINVAL;
}

- s->devtype = (enum mxs_auart_type)of_device_get_match_data(&pdev->dev);
+ s->devtype = (unsigned long)of_device_get_match_data(&pdev->dev);

ret = mxs_get_clks(s, pdev);
if (ret)
--
2.54.0



--
js
suse labs