Re: [PATCH 2/2] tty: serial: samsung_tty: cast the interrupt's void *id just once
From: kernel test robot
Date: Fri Aug 09 2024 - 03:02:08 EST
Hi André,
kernel test robot noticed the following build warnings:
[auto build test WARNING on 1e391b34f6aa043c7afa40a2103163a0ef06d179]
url: https://github.com/intel-lab-lkp/linux/commits/Andr-Draszik/tty-serial-samsung_tty-drop-unused-argument-to-irq-handlers/20240806-234342
base: 1e391b34f6aa043c7afa40a2103163a0ef06d179
patch link: https://lore.kernel.org/r/20240806-samsung-tty-cleanup-v1-2-a68d3abf31fe%40linaro.org
patch subject: [PATCH 2/2] tty: serial: samsung_tty: cast the interrupt's void *id just once
config: i386-allmodconfig (https://download.01.org/0day-ci/archive/20240809/202408091405.QtjNlf8Z-lkp@xxxxxxxxx/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240809/202408091405.QtjNlf8Z-lkp@xxxxxxxxx/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202408091405.QtjNlf8Z-lkp@xxxxxxxxx/
All warnings (new ones prefixed by >>):
drivers/tty/serial/samsung_tty.c: In function 's3c64xx_serial_handle_irq':
>> drivers/tty/serial/samsung_tty.c:948:45: warning: passing argument 1 of 's3c24xx_serial_rx_irq' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
948 | ret = s3c24xx_serial_rx_irq(ourport);
| ^~~~~~~
drivers/tty/serial/samsung_tty.c:856:68: note: expected 'struct s3c24xx_uart_port *' but argument is of type 'const struct s3c24xx_uart_port *'
856 | static irqreturn_t s3c24xx_serial_rx_irq(struct s3c24xx_uart_port *ourport)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
>> drivers/tty/serial/samsung_tty.c:952:45: warning: passing argument 1 of 's3c24xx_serial_tx_irq' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
952 | ret = s3c24xx_serial_tx_irq(ourport);
| ^~~~~~~
drivers/tty/serial/samsung_tty.c:927:68: note: expected 'struct s3c24xx_uart_port *' but argument is of type 'const struct s3c24xx_uart_port *'
927 | static irqreturn_t s3c24xx_serial_tx_irq(struct s3c24xx_uart_port *ourport)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
drivers/tty/serial/samsung_tty.c: In function 'apple_serial_handle_irq':
drivers/tty/serial/samsung_tty.c:969:45: warning: passing argument 1 of 's3c24xx_serial_rx_irq' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
969 | ret = s3c24xx_serial_rx_irq(ourport);
| ^~~~~~~
drivers/tty/serial/samsung_tty.c:856:68: note: expected 'struct s3c24xx_uart_port *' but argument is of type 'const struct s3c24xx_uart_port *'
856 | static irqreturn_t s3c24xx_serial_rx_irq(struct s3c24xx_uart_port *ourport)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
drivers/tty/serial/samsung_tty.c:973:45: warning: passing argument 1 of 's3c24xx_serial_tx_irq' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
973 | ret = s3c24xx_serial_tx_irq(ourport);
| ^~~~~~~
drivers/tty/serial/samsung_tty.c:927:68: note: expected 'struct s3c24xx_uart_port *' but argument is of type 'const struct s3c24xx_uart_port *'
927 | static irqreturn_t s3c24xx_serial_tx_irq(struct s3c24xx_uart_port *ourport)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
vim +948 drivers/tty/serial/samsung_tty.c
938
939 /* interrupt handler for s3c64xx and later SoC's.*/
940 static irqreturn_t s3c64xx_serial_handle_irq(int irq, void *id)
941 {
942 const struct s3c24xx_uart_port *ourport = id;
943 const struct uart_port *port = &ourport->port;
944 u32 pend = rd_regl(port, S3C64XX_UINTP);
945 irqreturn_t ret = IRQ_HANDLED;
946
947 if (pend & S3C64XX_UINTM_RXD_MSK) {
> 948 ret = s3c24xx_serial_rx_irq(ourport);
949 wr_regl(port, S3C64XX_UINTP, S3C64XX_UINTM_RXD_MSK);
950 }
951 if (pend & S3C64XX_UINTM_TXD_MSK) {
> 952 ret = s3c24xx_serial_tx_irq(ourport);
953 wr_regl(port, S3C64XX_UINTP, S3C64XX_UINTM_TXD_MSK);
954 }
955 return ret;
956 }
957
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki