[jirislaby:devel 10/31] drivers/tty/serial/samsung_tty.c:2983:46: error: passing argument 4 of 'uart_console_write' from incompatible pointer type

From: kernel test robot
Date: Tue Jan 18 2022 - 13:21:41 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/jirislaby/linux.git devel
head: 0ecc0cdeaabd6b08ef3ec6dfaf724139031c00b8
commit: 2258e16ea4fe67f9700294b439b7aa1669aef643 [10/31] serial: make uart_console_write->putchar's character a char
config: nds32-randconfig-r023-20220116 (https://download.01.org/0day-ci/archive/20220119/202201190244.I2BjsDwz-lkp@xxxxxxxxx/config)
compiler: nds32le-linux-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://git.kernel.org/pub/scm/linux/kernel/git/jirislaby/linux.git/commit/?id=2258e16ea4fe67f9700294b439b7aa1669aef643
git remote add jirislaby https://git.kernel.org/pub/scm/linux/kernel/git/jirislaby/linux.git
git fetch --no-tags jirislaby devel
git checkout 2258e16ea4fe67f9700294b439b7aa1669aef643
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=nds32 SHELL=/bin/bash drivers/tty/serial/

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

drivers/tty/serial/samsung_tty.c: In function 'samsung_early_write':
>> drivers/tty/serial/samsung_tty.c:2983:46: error: passing argument 4 of 'uart_console_write' from incompatible pointer type [-Werror=incompatible-pointer-types]
2983 | uart_console_write(&dev->port, s, n, samsung_early_putc);
| ^~~~~~~~~~~~~~~~~~
| |
| void (*)(struct uart_port *, int)
In file included from drivers/tty/serial/samsung_tty.c:36:
include/linux/serial_core.h:402:32: note: expected 'void (*)(struct uart_port *, char)' but argument is of type 'void (*)(struct uart_port *, int)'
402 | void (*putchar)(struct uart_port *, char));
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors


vim +/uart_console_write +2983 drivers/tty/serial/samsung_tty.c

b94ba0328d3b36 drivers/tty/serial/samsung.c Tomasz Figa 2015-01-23 2977
90ece856a227c4 drivers/tty/serial/samsung_tty.c Greg Kroah-Hartman 2019-12-10 2978 static void samsung_early_write(struct console *con, const char *s,
90ece856a227c4 drivers/tty/serial/samsung_tty.c Greg Kroah-Hartman 2019-12-10 2979 unsigned int n)
b94ba0328d3b36 drivers/tty/serial/samsung.c Tomasz Figa 2015-01-23 2980 {
b94ba0328d3b36 drivers/tty/serial/samsung.c Tomasz Figa 2015-01-23 2981 struct earlycon_device *dev = con->data;
b94ba0328d3b36 drivers/tty/serial/samsung.c Tomasz Figa 2015-01-23 2982
b94ba0328d3b36 drivers/tty/serial/samsung.c Tomasz Figa 2015-01-23 @2983 uart_console_write(&dev->port, s, n, samsung_early_putc);
b94ba0328d3b36 drivers/tty/serial/samsung.c Tomasz Figa 2015-01-23 2984 }
b94ba0328d3b36 drivers/tty/serial/samsung.c Tomasz Figa 2015-01-23 2985

:::::: The code at line 2983 was first introduced by commit
:::::: b94ba0328d3b36ff95f5074c0e9b44f90dc56bb5 serial: samsung: Add support for early console

:::::: TO: Tomasz Figa <t.figa@xxxxxxxxxxx>
:::::: CC: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx