'c' is not in wrapped in parentheses in the to_pic32_sport() macro, so it might be problematic wrt macro expansion. Using an inline is always safer in these cases. Both type-wise and macro-expansion-wise. So switch the macro to an inline. Signed-off-by: Jiri Slaby <jslaby@xxxxxxx> --- drivers/tty/serial/pic32_uart.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/tty/serial/pic32_uart.c b/drivers/tty/serial/pic32_uart.c index 32a86b12f203..c3b4fd0b5b76 100644 --- a/drivers/tty/serial/pic32_uart.c +++ b/drivers/tty/serial/pic32_uart.c @@ -72,7 +72,11 @@ struct pic32_sport { struct device *dev; }; -#define to_pic32_sport(c) container_of(c, struct pic32_sport, port) + +static inline struct pic32_sport *to_pic32_sport(struct uart_port *port) +{ + return container_of(port, struct pic32_sport, port); +} static inline void pic32_uart_writel(struct pic32_sport *sport, u32 reg, u32 val) -- 2.36.0