All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Lukas Wunner <lukas@wunner.de>
Cc: llvm@lists.linux.dev, kbuild-all@lists.01.org,
	linux-kernel@vger.kernel.org
Subject: [l1k:rs485_fixes 8/8] drivers/tty/serial/8250/8250_omap.c:327:2: error: implicit declaration of function 'serial8250_set_mctrl'
Date: Wed, 5 Jan 2022 19:33:22 +0800	[thread overview]
Message-ID: <202201051919.S2AM5Jqq-lkp@intel.com> (raw)

tree:   https://github.com/l1k/linux rs485_fixes
head:   5545dfa04324da44dd044c03e7c13a7d6066f47e
commit: 5545dfa04324da44dd044c03e7c13a7d6066f47e [8/8] serial: 8250: 8250_omap: Avoid rs485 RTS glitch on set_termios
config: riscv-buildonly-randconfig-r002-20220105 (https://download.01.org/0day-ci/archive/20220105/202201051919.S2AM5Jqq-lkp@intel.com/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project d5b6e30ed3acad794dd0aec400e617daffc6cc3d)
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
        # install riscv cross compiling tool for clang build
        # apt-get install binutils-riscv64-linux-gnu
        # https://github.com/l1k/linux/commit/5545dfa04324da44dd044c03e7c13a7d6066f47e
        git remote add l1k https://github.com/l1k/linux
        git fetch --no-tags l1k rs485_fixes
        git checkout 5545dfa04324da44dd044c03e7c13a7d6066f47e
        # save the config file to linux build tree
        mkdir build_dir
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=riscv SHELL=/bin/bash drivers/tty/serial/8250/

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

All errors (new ones prefixed by >>):

   In file included from drivers/tty/serial/8250/8250_omap.c:13:
   In file included from include/linux/io.h:13:
   In file included from arch/riscv/include/asm/io.h:136:
   include/asm-generic/io.h:464:31: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           val = __raw_readb(PCI_IOBASE + addr);
                             ~~~~~~~~~~ ^
   include/asm-generic/io.h:477:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           val = __le16_to_cpu((__le16 __force)__raw_readw(PCI_IOBASE + addr));
                                                           ~~~~~~~~~~ ^
   include/uapi/linux/byteorder/little_endian.h:36:51: note: expanded from macro '__le16_to_cpu'
   #define __le16_to_cpu(x) ((__force __u16)(__le16)(x))
                                                     ^
   In file included from drivers/tty/serial/8250/8250_omap.c:13:
   In file included from include/linux/io.h:13:
   In file included from arch/riscv/include/asm/io.h:136:
   include/asm-generic/io.h:490:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           val = __le32_to_cpu((__le32 __force)__raw_readl(PCI_IOBASE + addr));
                                                           ~~~~~~~~~~ ^
   include/uapi/linux/byteorder/little_endian.h:34:51: note: expanded from macro '__le32_to_cpu'
   #define __le32_to_cpu(x) ((__force __u32)(__le32)(x))
                                                     ^
   In file included from drivers/tty/serial/8250/8250_omap.c:13:
   In file included from include/linux/io.h:13:
   In file included from arch/riscv/include/asm/io.h:136:
   include/asm-generic/io.h:501:33: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           __raw_writeb(value, PCI_IOBASE + addr);
                               ~~~~~~~~~~ ^
   include/asm-generic/io.h:511:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           __raw_writew((u16 __force)cpu_to_le16(value), PCI_IOBASE + addr);
                                                         ~~~~~~~~~~ ^
   include/asm-generic/io.h:521:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           __raw_writel((u32 __force)cpu_to_le32(value), PCI_IOBASE + addr);
                                                         ~~~~~~~~~~ ^
   include/asm-generic/io.h:1024:55: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           return (port > MMIO_UPPER_LIMIT) ? NULL : PCI_IOBASE + port;
                                                     ~~~~~~~~~~ ^
>> drivers/tty/serial/8250/8250_omap.c:327:2: error: implicit declaration of function 'serial8250_set_mctrl' [-Werror,-Wimplicit-function-declaration]
           serial8250_set_mctrl(&up->port, up->port.mctrl);
           ^
   drivers/tty/serial/8250/8250_omap.c:327:2: note: did you mean 'serial8250_do_set_mctrl'?
   include/linux/serial_8250.h:167:13: note: 'serial8250_do_set_mctrl' declared here
   extern void serial8250_do_set_mctrl(struct uart_port *port, unsigned int mctrl);
               ^
   7 warnings and 1 error generated.


vim +/serial8250_set_mctrl +327 drivers/tty/serial/8250/8250_omap.c

   290	
   291	static void omap8250_restore_regs(struct uart_8250_port *up)
   292	{
   293		struct omap8250_priv *priv = up->port.private_data;
   294		struct uart_8250_dma	*dma = up->dma;
   295	
   296		if (dma && dma->tx_running) {
   297			/*
   298			 * TCSANOW requests the change to occur immediately however if
   299			 * we have a TX-DMA operation in progress then it has been
   300			 * observed that it might stall and never complete. Therefore we
   301			 * delay DMA completes to prevent this hang from happen.
   302			 */
   303			priv->delayed_restore = 1;
   304			return;
   305		}
   306	
   307		serial_out(up, UART_LCR, UART_LCR_CONF_MODE_B);
   308		serial_out(up, UART_EFR, UART_EFR_ECB);
   309	
   310		serial_out(up, UART_LCR, UART_LCR_CONF_MODE_A);
   311		serial8250_out_MCR(up, serial8250_in_MCR(up) | UART_MCR_TCRTLR);
   312		serial_out(up, UART_FCR, up->fcr);
   313	
   314		omap8250_update_scr(up, priv);
   315	
   316		serial_out(up, UART_LCR, UART_LCR_CONF_MODE_B);
   317	
   318		serial_out(up, UART_TI752_TCR, OMAP_UART_TCR_RESTORE(16) |
   319				OMAP_UART_TCR_HALT(52));
   320		serial_out(up, UART_TI752_TLR,
   321			   TRIGGER_TLR_MASK(priv->tx_trigger) << UART_TI752_TLR_TX |
   322			   TRIGGER_TLR_MASK(priv->rx_trigger) << UART_TI752_TLR_RX);
   323	
   324		serial_out(up, UART_LCR, 0);
   325	
   326		/* drop TCR + TLR access, we setup XON/XOFF later */
 > 327		serial8250_set_mctrl(&up->port, up->port.mctrl);
   328		serial_out(up, UART_IER, up->ier);
   329	
   330		serial_out(up, UART_LCR, UART_LCR_CONF_MODE_B);
   331		serial_dl_write(up, priv->quot);
   332	
   333		serial_out(up, UART_EFR, priv->efr);
   334	
   335		/* Configure flow control */
   336		serial_out(up, UART_LCR, UART_LCR_CONF_MODE_B);
   337		serial_out(up, UART_XON1, priv->xon);
   338		serial_out(up, UART_XOFF1, priv->xoff);
   339	
   340		serial_out(up, UART_LCR, up->lcr);
   341	
   342		omap8250_update_mdr1(up, priv);
   343	}
   344	

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

WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: [l1k:rs485_fixes 8/8] drivers/tty/serial/8250/8250_omap.c:327:2: error: implicit declaration of function 'serial8250_set_mctrl'
Date: Wed, 05 Jan 2022 19:33:22 +0800	[thread overview]
Message-ID: <202201051919.S2AM5Jqq-lkp@intel.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 7063 bytes --]

tree:   https://github.com/l1k/linux rs485_fixes
head:   5545dfa04324da44dd044c03e7c13a7d6066f47e
commit: 5545dfa04324da44dd044c03e7c13a7d6066f47e [8/8] serial: 8250: 8250_omap: Avoid rs485 RTS glitch on set_termios
config: riscv-buildonly-randconfig-r002-20220105 (https://download.01.org/0day-ci/archive/20220105/202201051919.S2AM5Jqq-lkp(a)intel.com/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project d5b6e30ed3acad794dd0aec400e617daffc6cc3d)
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
        # install riscv cross compiling tool for clang build
        # apt-get install binutils-riscv64-linux-gnu
        # https://github.com/l1k/linux/commit/5545dfa04324da44dd044c03e7c13a7d6066f47e
        git remote add l1k https://github.com/l1k/linux
        git fetch --no-tags l1k rs485_fixes
        git checkout 5545dfa04324da44dd044c03e7c13a7d6066f47e
        # save the config file to linux build tree
        mkdir build_dir
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=riscv SHELL=/bin/bash drivers/tty/serial/8250/

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

All errors (new ones prefixed by >>):

   In file included from drivers/tty/serial/8250/8250_omap.c:13:
   In file included from include/linux/io.h:13:
   In file included from arch/riscv/include/asm/io.h:136:
   include/asm-generic/io.h:464:31: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           val = __raw_readb(PCI_IOBASE + addr);
                             ~~~~~~~~~~ ^
   include/asm-generic/io.h:477:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           val = __le16_to_cpu((__le16 __force)__raw_readw(PCI_IOBASE + addr));
                                                           ~~~~~~~~~~ ^
   include/uapi/linux/byteorder/little_endian.h:36:51: note: expanded from macro '__le16_to_cpu'
   #define __le16_to_cpu(x) ((__force __u16)(__le16)(x))
                                                     ^
   In file included from drivers/tty/serial/8250/8250_omap.c:13:
   In file included from include/linux/io.h:13:
   In file included from arch/riscv/include/asm/io.h:136:
   include/asm-generic/io.h:490:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           val = __le32_to_cpu((__le32 __force)__raw_readl(PCI_IOBASE + addr));
                                                           ~~~~~~~~~~ ^
   include/uapi/linux/byteorder/little_endian.h:34:51: note: expanded from macro '__le32_to_cpu'
   #define __le32_to_cpu(x) ((__force __u32)(__le32)(x))
                                                     ^
   In file included from drivers/tty/serial/8250/8250_omap.c:13:
   In file included from include/linux/io.h:13:
   In file included from arch/riscv/include/asm/io.h:136:
   include/asm-generic/io.h:501:33: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           __raw_writeb(value, PCI_IOBASE + addr);
                               ~~~~~~~~~~ ^
   include/asm-generic/io.h:511:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           __raw_writew((u16 __force)cpu_to_le16(value), PCI_IOBASE + addr);
                                                         ~~~~~~~~~~ ^
   include/asm-generic/io.h:521:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           __raw_writel((u32 __force)cpu_to_le32(value), PCI_IOBASE + addr);
                                                         ~~~~~~~~~~ ^
   include/asm-generic/io.h:1024:55: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
           return (port > MMIO_UPPER_LIMIT) ? NULL : PCI_IOBASE + port;
                                                     ~~~~~~~~~~ ^
>> drivers/tty/serial/8250/8250_omap.c:327:2: error: implicit declaration of function 'serial8250_set_mctrl' [-Werror,-Wimplicit-function-declaration]
           serial8250_set_mctrl(&up->port, up->port.mctrl);
           ^
   drivers/tty/serial/8250/8250_omap.c:327:2: note: did you mean 'serial8250_do_set_mctrl'?
   include/linux/serial_8250.h:167:13: note: 'serial8250_do_set_mctrl' declared here
   extern void serial8250_do_set_mctrl(struct uart_port *port, unsigned int mctrl);
               ^
   7 warnings and 1 error generated.


vim +/serial8250_set_mctrl +327 drivers/tty/serial/8250/8250_omap.c

   290	
   291	static void omap8250_restore_regs(struct uart_8250_port *up)
   292	{
   293		struct omap8250_priv *priv = up->port.private_data;
   294		struct uart_8250_dma	*dma = up->dma;
   295	
   296		if (dma && dma->tx_running) {
   297			/*
   298			 * TCSANOW requests the change to occur immediately however if
   299			 * we have a TX-DMA operation in progress then it has been
   300			 * observed that it might stall and never complete. Therefore we
   301			 * delay DMA completes to prevent this hang from happen.
   302			 */
   303			priv->delayed_restore = 1;
   304			return;
   305		}
   306	
   307		serial_out(up, UART_LCR, UART_LCR_CONF_MODE_B);
   308		serial_out(up, UART_EFR, UART_EFR_ECB);
   309	
   310		serial_out(up, UART_LCR, UART_LCR_CONF_MODE_A);
   311		serial8250_out_MCR(up, serial8250_in_MCR(up) | UART_MCR_TCRTLR);
   312		serial_out(up, UART_FCR, up->fcr);
   313	
   314		omap8250_update_scr(up, priv);
   315	
   316		serial_out(up, UART_LCR, UART_LCR_CONF_MODE_B);
   317	
   318		serial_out(up, UART_TI752_TCR, OMAP_UART_TCR_RESTORE(16) |
   319				OMAP_UART_TCR_HALT(52));
   320		serial_out(up, UART_TI752_TLR,
   321			   TRIGGER_TLR_MASK(priv->tx_trigger) << UART_TI752_TLR_TX |
   322			   TRIGGER_TLR_MASK(priv->rx_trigger) << UART_TI752_TLR_RX);
   323	
   324		serial_out(up, UART_LCR, 0);
   325	
   326		/* drop TCR + TLR access, we setup XON/XOFF later */
 > 327		serial8250_set_mctrl(&up->port, up->port.mctrl);
   328		serial_out(up, UART_IER, up->ier);
   329	
   330		serial_out(up, UART_LCR, UART_LCR_CONF_MODE_B);
   331		serial_dl_write(up, priv->quot);
   332	
   333		serial_out(up, UART_EFR, priv->efr);
   334	
   335		/* Configure flow control */
   336		serial_out(up, UART_LCR, UART_LCR_CONF_MODE_B);
   337		serial_out(up, UART_XON1, priv->xon);
   338		serial_out(up, UART_XOFF1, priv->xoff);
   339	
   340		serial_out(up, UART_LCR, up->lcr);
   341	
   342		omap8250_update_mdr1(up, priv);
   343	}
   344	

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

             reply	other threads:[~2022-01-05 11:33 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-05 11:33 kernel test robot [this message]
2022-01-05 11:33 ` [l1k:rs485_fixes 8/8] drivers/tty/serial/8250/8250_omap.c:327:2: error: implicit declaration of function 'serial8250_set_mctrl' kernel test robot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202201051919.S2AM5Jqq-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=kbuild-all@lists.01.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=llvm@lists.linux.dev \
    --cc=lukas@wunner.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.