public inbox for linux-serial@vger.kernel.org
 help / color / mirror / Atom feed
* [tty:tty-testing 11/22] drivers/tty/serial/sc16is7xx.c:596:9: error: implicit declaration of function 'sc16is7xx_efr_lock'; did you mean 'sc16is7xx_regs_lock'?
@ 2025-10-22 13:07 kernel test robot
  2025-10-22 13:55 ` Hugo Villeneuve
  0 siblings, 1 reply; 4+ messages in thread
From: kernel test robot @ 2025-10-22 13:07 UTC (permalink / raw)
  To: Hugo Villeneuve; +Cc: oe-kbuild-all, linux-serial, Greg Kroah-Hartman

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git tty-testing
head:   cdca3a77b423691b0e3780653642cd5b31de8bd8
commit: 5a91e16ba44d9850088278ebe209b5c533f87cb8 [11/22] serial: sc16is7xx: define common register access function
config: x86_64-buildonly-randconfig-003-20251022 (https://download.01.org/0day-ci/archive/20251022/202510222048.fnK8S60G-lkp@intel.com/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251022/202510222048.fnK8S60G-lkp@intel.com/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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202510222048.fnK8S60G-lkp@intel.com/

All errors (new ones prefixed by >>):

   drivers/tty/serial/sc16is7xx.c: In function 'sc16is7xx_set_baud':
>> drivers/tty/serial/sc16is7xx.c:596:9: error: implicit declaration of function 'sc16is7xx_efr_lock'; did you mean 'sc16is7xx_regs_lock'? [-Wimplicit-function-declaration]
     596 |         sc16is7xx_efr_lock(port);
         |         ^~~~~~~~~~~~~~~~~~
         |         sc16is7xx_regs_lock
>> drivers/tty/serial/sc16is7xx.c:600:9: error: implicit declaration of function 'sc16is7xx_efr_unlock'; did you mean 'sc16is7xx_regs_unlock'? [-Wimplicit-function-declaration]
     600 |         sc16is7xx_efr_unlock(port);
         |         ^~~~~~~~~~~~~~~~~~~~
         |         sc16is7xx_regs_unlock


vim +596 drivers/tty/serial/sc16is7xx.c

dbf4ab821804df0 Hugo Villeneuve 2023-12-11  572  
8492bd91aa05590 Hugo Villeneuve 2024-04-30  573  /*
8492bd91aa05590 Hugo Villeneuve 2024-04-30  574   * Configure programmable baud rate generator (divisor) according to the
8492bd91aa05590 Hugo Villeneuve 2024-04-30  575   * desired baud rate.
8492bd91aa05590 Hugo Villeneuve 2024-04-30  576   *
8492bd91aa05590 Hugo Villeneuve 2024-04-30  577   * From the datasheet, the divisor is computed according to:
8492bd91aa05590 Hugo Villeneuve 2024-04-30  578   *
8492bd91aa05590 Hugo Villeneuve 2024-04-30  579   *              XTAL1 input frequency
8492bd91aa05590 Hugo Villeneuve 2024-04-30  580   *             -----------------------
8492bd91aa05590 Hugo Villeneuve 2024-04-30  581   *                    prescaler
8492bd91aa05590 Hugo Villeneuve 2024-04-30  582   * divisor = ---------------------------
8492bd91aa05590 Hugo Villeneuve 2024-04-30  583   *            baud-rate x sampling-rate
8492bd91aa05590 Hugo Villeneuve 2024-04-30  584   */
dfeae619d781dee Jon Ringle      2014-04-24  585  static int sc16is7xx_set_baud(struct uart_port *port, int baud)
dfeae619d781dee Jon Ringle      2014-04-24  586  {
8492bd91aa05590 Hugo Villeneuve 2024-04-30  587  	unsigned int prescaler = 1;
dfeae619d781dee Jon Ringle      2014-04-24  588  	unsigned long clk = port->uartclk, div = clk / 16 / baud;
dfeae619d781dee Jon Ringle      2014-04-24  589  
2e57cefc4477659 Hugo Villeneuve 2023-12-21  590  	if (div >= BIT(16)) {
8492bd91aa05590 Hugo Villeneuve 2024-04-30  591  		prescaler = 4;
8492bd91aa05590 Hugo Villeneuve 2024-04-30  592  		div /= prescaler;
dfeae619d781dee Jon Ringle      2014-04-24  593  	}
dfeae619d781dee Jon Ringle      2014-04-24  594  
dfeae619d781dee Jon Ringle      2014-04-24  595  	/* Enable enhanced features */
0c84bea0cabc4e2 Hugo Villeneuve 2023-12-21 @596  	sc16is7xx_efr_lock(port);
c112653b89e0cea Lech Perczak    2022-02-21  597  	sc16is7xx_port_update(port, SC16IS7XX_EFR_REG,
c112653b89e0cea Lech Perczak    2022-02-21  598  			      SC16IS7XX_EFR_ENABLE_BIT,
dfeae619d781dee Jon Ringle      2014-04-24  599  			      SC16IS7XX_EFR_ENABLE_BIT);
0c84bea0cabc4e2 Hugo Villeneuve 2023-12-21 @600  	sc16is7xx_efr_unlock(port);
30ec514d440cf2c Phil Elwell     2018-09-12  601  
8492bd91aa05590 Hugo Villeneuve 2024-04-30  602  	/* If bit MCR_CLKSEL is set, the divide by 4 prescaler is activated. */
dfeae619d781dee Jon Ringle      2014-04-24  603  	sc16is7xx_port_update(port, SC16IS7XX_MCR_REG,
dfeae619d781dee Jon Ringle      2014-04-24  604  			      SC16IS7XX_MCR_CLKSEL_BIT,
8492bd91aa05590 Hugo Villeneuve 2024-04-30  605  			      prescaler == 1 ? 0 : SC16IS7XX_MCR_CLKSEL_BIT);
dfeae619d781dee Jon Ringle      2014-04-24  606  
5a91e16ba44d985 Hugo Villeneuve 2025-10-02  607  	/* Access special register set (DLL/DLH) */
5a91e16ba44d985 Hugo Villeneuve 2025-10-02  608  	sc16is7xx_regs_lock(port, SC16IS7XX_LCR_REG_SET_SPECIAL);
dfeae619d781dee Jon Ringle      2014-04-24  609  
dfeae619d781dee Jon Ringle      2014-04-24  610  	/* Write the new divisor */
dfeae619d781dee Jon Ringle      2014-04-24  611  	sc16is7xx_port_write(port, SC16IS7XX_DLH_REG, div / 256);
dfeae619d781dee Jon Ringle      2014-04-24  612  	sc16is7xx_port_write(port, SC16IS7XX_DLL_REG, div % 256);
dfeae619d781dee Jon Ringle      2014-04-24  613  
5a91e16ba44d985 Hugo Villeneuve 2025-10-02  614  	/* Restore access to general register set */
5a91e16ba44d985 Hugo Villeneuve 2025-10-02  615  	sc16is7xx_regs_unlock(port);
7d3b793faaab130 Hugo Villeneuve 2024-07-23  616  
8492bd91aa05590 Hugo Villeneuve 2024-04-30  617  	return DIV_ROUND_CLOSEST((clk / prescaler) / 16, div);
dfeae619d781dee Jon Ringle      2014-04-24  618  }
dfeae619d781dee Jon Ringle      2014-04-24  619  

:::::: The code at line 596 was first introduced by commit
:::::: 0c84bea0cabc4e2b98a3de88eeb4ff798931f056 serial: sc16is7xx: refactor EFR lock

:::::: TO: Hugo Villeneuve <hvilleneuve@dimonoff.com>
:::::: CC: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [tty:tty-testing 11/22] drivers/tty/serial/sc16is7xx.c:596:9: error: implicit declaration of function 'sc16is7xx_efr_lock'; did you mean 'sc16is7xx_regs_lock'?
  2025-10-22 13:07 [tty:tty-testing 11/22] drivers/tty/serial/sc16is7xx.c:596:9: error: implicit declaration of function 'sc16is7xx_efr_lock'; did you mean 'sc16is7xx_regs_lock'? kernel test robot
@ 2025-10-22 13:55 ` Hugo Villeneuve
  2025-10-22 14:08   ` Greg Kroah-Hartman
  0 siblings, 1 reply; 4+ messages in thread
From: Hugo Villeneuve @ 2025-10-22 13:55 UTC (permalink / raw)
  To: kernel test robot
  Cc: Hugo Villeneuve, oe-kbuild-all, linux-serial, Greg Kroah-Hartman

On Wed, 22 Oct 2025 21:07:24 +0800
kernel test robot <lkp@intel.com> wrote:

> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git tty-testing
> head:   cdca3a77b423691b0e3780653642cd5b31de8bd8
> commit: 5a91e16ba44d9850088278ebe209b5c533f87cb8 [11/22] serial: sc16is7xx: define common register access function
> config: x86_64-buildonly-randconfig-003-20251022 (https://download.01.org/0day-ci/archive/20251022/202510222048.fnK8S60G-lkp@intel.com/config)
> compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
> reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251022/202510222048.fnK8S60G-lkp@intel.com/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@intel.com>
> | Closes: https://lore.kernel.org/oe-kbuild-all/202510222048.fnK8S60G-lkp@intel.com/
> 
> All errors (new ones prefixed by >>):
> 
>    drivers/tty/serial/sc16is7xx.c: In function 'sc16is7xx_set_baud':
> >> drivers/tty/serial/sc16is7xx.c:596:9: error: implicit declaration of function 'sc16is7xx_efr_lock'; did you mean 'sc16is7xx_regs_lock'? [-Wimplicit-function-declaration]
>      596 |         sc16is7xx_efr_lock(port);
>          |         ^~~~~~~~~~~~~~~~~~
>          |         sc16is7xx_regs_lock
> >> drivers/tty/serial/sc16is7xx.c:600:9: error: implicit declaration of function 'sc16is7xx_efr_unlock'; did you mean 'sc16is7xx_regs_unlock'? [-Wimplicit-function-declaration]
>      600 |         sc16is7xx_efr_unlock(port);
>          |         ^~~~~~~~~~~~~~~~~~~~
>          |         sc16is7xx_regs_unlock
> 
> 
> vim +596 drivers/tty/serial/sc16is7xx.c
> 
> dbf4ab821804df0 Hugo Villeneuve 2023-12-11  572  
> 8492bd91aa05590 Hugo Villeneuve 2024-04-30  573  /*
> 8492bd91aa05590 Hugo Villeneuve 2024-04-30  574   * Configure programmable baud rate generator (divisor) according to the
> 8492bd91aa05590 Hugo Villeneuve 2024-04-30  575   * desired baud rate.
> 8492bd91aa05590 Hugo Villeneuve 2024-04-30  576   *
> 8492bd91aa05590 Hugo Villeneuve 2024-04-30  577   * From the datasheet, the divisor is computed according to:
> 8492bd91aa05590 Hugo Villeneuve 2024-04-30  578   *
> 8492bd91aa05590 Hugo Villeneuve 2024-04-30  579   *              XTAL1 input frequency
> 8492bd91aa05590 Hugo Villeneuve 2024-04-30  580   *             -----------------------
> 8492bd91aa05590 Hugo Villeneuve 2024-04-30  581   *                    prescaler
> 8492bd91aa05590 Hugo Villeneuve 2024-04-30  582   * divisor = ---------------------------
> 8492bd91aa05590 Hugo Villeneuve 2024-04-30  583   *            baud-rate x sampling-rate
> 8492bd91aa05590 Hugo Villeneuve 2024-04-30  584   */
> dfeae619d781dee Jon Ringle      2014-04-24  585  static int sc16is7xx_set_baud(struct uart_port *port, int baud)
> dfeae619d781dee Jon Ringle      2014-04-24  586  {
> 8492bd91aa05590 Hugo Villeneuve 2024-04-30  587  	unsigned int prescaler = 1;
> dfeae619d781dee Jon Ringle      2014-04-24  588  	unsigned long clk = port->uartclk, div = clk / 16 / baud;
> dfeae619d781dee Jon Ringle      2014-04-24  589  
> 2e57cefc4477659 Hugo Villeneuve 2023-12-21  590  	if (div >= BIT(16)) {
> 8492bd91aa05590 Hugo Villeneuve 2024-04-30  591  		prescaler = 4;
> 8492bd91aa05590 Hugo Villeneuve 2024-04-30  592  		div /= prescaler;
> dfeae619d781dee Jon Ringle      2014-04-24  593  	}
> dfeae619d781dee Jon Ringle      2014-04-24  594  
> dfeae619d781dee Jon Ringle      2014-04-24  595  	/* Enable enhanced features */
> 0c84bea0cabc4e2 Hugo Villeneuve 2023-12-21 @596  	sc16is7xx_efr_lock(port);
> c112653b89e0cea Lech Perczak    2022-02-21  597  	sc16is7xx_port_update(port, SC16IS7XX_EFR_REG,
> c112653b89e0cea Lech Perczak    2022-02-21  598  			      SC16IS7XX_EFR_ENABLE_BIT,
> dfeae619d781dee Jon Ringle      2014-04-24  599  			      SC16IS7XX_EFR_ENABLE_BIT);
> 0c84bea0cabc4e2 Hugo Villeneuve 2023-12-21 @600  	sc16is7xx_efr_unlock(port);
> 30ec514d440cf2c Phil Elwell     2018-09-12  601  
> 8492bd91aa05590 Hugo Villeneuve 2024-04-30  602  	/* If bit MCR_CLKSEL is set, the divide by 4 prescaler is activated. */
> dfeae619d781dee Jon Ringle      2014-04-24  603  	sc16is7xx_port_update(port, SC16IS7XX_MCR_REG,
> dfeae619d781dee Jon Ringle      2014-04-24  604  			      SC16IS7XX_MCR_CLKSEL_BIT,
> 8492bd91aa05590 Hugo Villeneuve 2024-04-30  605  			      prescaler == 1 ? 0 : SC16IS7XX_MCR_CLKSEL_BIT);
> dfeae619d781dee Jon Ringle      2014-04-24  606  
> 5a91e16ba44d985 Hugo Villeneuve 2025-10-02  607  	/* Access special register set (DLL/DLH) */
> 5a91e16ba44d985 Hugo Villeneuve 2025-10-02  608  	sc16is7xx_regs_lock(port, SC16IS7XX_LCR_REG_SET_SPECIAL);
> dfeae619d781dee Jon Ringle      2014-04-24  609  
> dfeae619d781dee Jon Ringle      2014-04-24  610  	/* Write the new divisor */
> dfeae619d781dee Jon Ringle      2014-04-24  611  	sc16is7xx_port_write(port, SC16IS7XX_DLH_REG, div / 256);
> dfeae619d781dee Jon Ringle      2014-04-24  612  	sc16is7xx_port_write(port, SC16IS7XX_DLL_REG, div % 256);
> dfeae619d781dee Jon Ringle      2014-04-24  613  
> 5a91e16ba44d985 Hugo Villeneuve 2025-10-02  614  	/* Restore access to general register set */
> 5a91e16ba44d985 Hugo Villeneuve 2025-10-02  615  	sc16is7xx_regs_unlock(port);
> 7d3b793faaab130 Hugo Villeneuve 2024-07-23  616  
> 8492bd91aa05590 Hugo Villeneuve 2024-04-30  617  	return DIV_ROUND_CLOSEST((clk / prescaler) / 16, div);
> dfeae619d781dee Jon Ringle      2014-04-24  618  }
> dfeae619d781dee Jon Ringle      2014-04-24  619  
> 
> :::::: The code at line 596 was first introduced by commit
> :::::: 0c84bea0cabc4e2b98a3de88eeb4ff798931f056 serial: sc16is7xx: refactor EFR lock
> 
> :::::: TO: Hugo Villeneuve <hvilleneuve@dimonoff.com>
> :::::: CC: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> 
> -- 
> 0-DAY CI Kernel Test Service
> https://github.com/intel/lkp-tests/wiki

Hi Greg,
this patch, and other patches in this series, depends on the patch
"serial: sc16is7xx: remove useless enable of enhanced features"
that you just added to your tty-linus tree.

If you first add this patch to tty-testing, then the error
disappear.

Thank you,
Hugo.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [tty:tty-testing 11/22] drivers/tty/serial/sc16is7xx.c:596:9: error: implicit declaration of function 'sc16is7xx_efr_lock'; did you mean 'sc16is7xx_regs_lock'?
  2025-10-22 13:55 ` Hugo Villeneuve
@ 2025-10-22 14:08   ` Greg Kroah-Hartman
  2025-10-22 14:16     ` Hugo Villeneuve
  0 siblings, 1 reply; 4+ messages in thread
From: Greg Kroah-Hartman @ 2025-10-22 14:08 UTC (permalink / raw)
  To: Hugo Villeneuve
  Cc: kernel test robot, Hugo Villeneuve, oe-kbuild-all, linux-serial

On Wed, Oct 22, 2025 at 09:55:24AM -0400, Hugo Villeneuve wrote:
> On Wed, 22 Oct 2025 21:07:24 +0800
> kernel test robot <lkp@intel.com> wrote:
> 
> > tree:   https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git tty-testing
> > head:   cdca3a77b423691b0e3780653642cd5b31de8bd8
> > commit: 5a91e16ba44d9850088278ebe209b5c533f87cb8 [11/22] serial: sc16is7xx: define common register access function
> > config: x86_64-buildonly-randconfig-003-20251022 (https://download.01.org/0day-ci/archive/20251022/202510222048.fnK8S60G-lkp@intel.com/config)
> > compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
> > reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251022/202510222048.fnK8S60G-lkp@intel.com/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@intel.com>
> > | Closes: https://lore.kernel.org/oe-kbuild-all/202510222048.fnK8S60G-lkp@intel.com/
> > 
> > All errors (new ones prefixed by >>):
> > 
> >    drivers/tty/serial/sc16is7xx.c: In function 'sc16is7xx_set_baud':
> > >> drivers/tty/serial/sc16is7xx.c:596:9: error: implicit declaration of function 'sc16is7xx_efr_lock'; did you mean 'sc16is7xx_regs_lock'? [-Wimplicit-function-declaration]
> >      596 |         sc16is7xx_efr_lock(port);
> >          |         ^~~~~~~~~~~~~~~~~~
> >          |         sc16is7xx_regs_lock
> > >> drivers/tty/serial/sc16is7xx.c:600:9: error: implicit declaration of function 'sc16is7xx_efr_unlock'; did you mean 'sc16is7xx_regs_unlock'? [-Wimplicit-function-declaration]
> >      600 |         sc16is7xx_efr_unlock(port);
> >          |         ^~~~~~~~~~~~~~~~~~~~
> >          |         sc16is7xx_regs_unlock
> > 
> > 
> > vim +596 drivers/tty/serial/sc16is7xx.c
> > 
> > dbf4ab821804df0 Hugo Villeneuve 2023-12-11  572  
> > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  573  /*
> > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  574   * Configure programmable baud rate generator (divisor) according to the
> > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  575   * desired baud rate.
> > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  576   *
> > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  577   * From the datasheet, the divisor is computed according to:
> > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  578   *
> > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  579   *              XTAL1 input frequency
> > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  580   *             -----------------------
> > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  581   *                    prescaler
> > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  582   * divisor = ---------------------------
> > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  583   *            baud-rate x sampling-rate
> > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  584   */
> > dfeae619d781dee Jon Ringle      2014-04-24  585  static int sc16is7xx_set_baud(struct uart_port *port, int baud)
> > dfeae619d781dee Jon Ringle      2014-04-24  586  {
> > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  587  	unsigned int prescaler = 1;
> > dfeae619d781dee Jon Ringle      2014-04-24  588  	unsigned long clk = port->uartclk, div = clk / 16 / baud;
> > dfeae619d781dee Jon Ringle      2014-04-24  589  
> > 2e57cefc4477659 Hugo Villeneuve 2023-12-21  590  	if (div >= BIT(16)) {
> > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  591  		prescaler = 4;
> > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  592  		div /= prescaler;
> > dfeae619d781dee Jon Ringle      2014-04-24  593  	}
> > dfeae619d781dee Jon Ringle      2014-04-24  594  
> > dfeae619d781dee Jon Ringle      2014-04-24  595  	/* Enable enhanced features */
> > 0c84bea0cabc4e2 Hugo Villeneuve 2023-12-21 @596  	sc16is7xx_efr_lock(port);
> > c112653b89e0cea Lech Perczak    2022-02-21  597  	sc16is7xx_port_update(port, SC16IS7XX_EFR_REG,
> > c112653b89e0cea Lech Perczak    2022-02-21  598  			      SC16IS7XX_EFR_ENABLE_BIT,
> > dfeae619d781dee Jon Ringle      2014-04-24  599  			      SC16IS7XX_EFR_ENABLE_BIT);
> > 0c84bea0cabc4e2 Hugo Villeneuve 2023-12-21 @600  	sc16is7xx_efr_unlock(port);
> > 30ec514d440cf2c Phil Elwell     2018-09-12  601  
> > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  602  	/* If bit MCR_CLKSEL is set, the divide by 4 prescaler is activated. */
> > dfeae619d781dee Jon Ringle      2014-04-24  603  	sc16is7xx_port_update(port, SC16IS7XX_MCR_REG,
> > dfeae619d781dee Jon Ringle      2014-04-24  604  			      SC16IS7XX_MCR_CLKSEL_BIT,
> > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  605  			      prescaler == 1 ? 0 : SC16IS7XX_MCR_CLKSEL_BIT);
> > dfeae619d781dee Jon Ringle      2014-04-24  606  
> > 5a91e16ba44d985 Hugo Villeneuve 2025-10-02  607  	/* Access special register set (DLL/DLH) */
> > 5a91e16ba44d985 Hugo Villeneuve 2025-10-02  608  	sc16is7xx_regs_lock(port, SC16IS7XX_LCR_REG_SET_SPECIAL);
> > dfeae619d781dee Jon Ringle      2014-04-24  609  
> > dfeae619d781dee Jon Ringle      2014-04-24  610  	/* Write the new divisor */
> > dfeae619d781dee Jon Ringle      2014-04-24  611  	sc16is7xx_port_write(port, SC16IS7XX_DLH_REG, div / 256);
> > dfeae619d781dee Jon Ringle      2014-04-24  612  	sc16is7xx_port_write(port, SC16IS7XX_DLL_REG, div % 256);
> > dfeae619d781dee Jon Ringle      2014-04-24  613  
> > 5a91e16ba44d985 Hugo Villeneuve 2025-10-02  614  	/* Restore access to general register set */
> > 5a91e16ba44d985 Hugo Villeneuve 2025-10-02  615  	sc16is7xx_regs_unlock(port);
> > 7d3b793faaab130 Hugo Villeneuve 2024-07-23  616  
> > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  617  	return DIV_ROUND_CLOSEST((clk / prescaler) / 16, div);
> > dfeae619d781dee Jon Ringle      2014-04-24  618  }
> > dfeae619d781dee Jon Ringle      2014-04-24  619  
> > 
> > :::::: The code at line 596 was first introduced by commit
> > :::::: 0c84bea0cabc4e2b98a3de88eeb4ff798931f056 serial: sc16is7xx: refactor EFR lock
> > 
> > :::::: TO: Hugo Villeneuve <hvilleneuve@dimonoff.com>
> > :::::: CC: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> > 
> > -- 
> > 0-DAY CI Kernel Test Service
> > https://github.com/intel/lkp-tests/wiki
> 
> Hi Greg,
> this patch, and other patches in this series, depends on the patch
> "serial: sc16is7xx: remove useless enable of enhanced features"
> that you just added to your tty-linus tree.
> 
> If you first add this patch to tty-testing, then the error
> disappear.

Ugh, that was not obvious at all :(

I'll go drop all of these from my tty-next branch, can you resend them
when I merge -rc3 into that branch so that things do not break?

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [tty:tty-testing 11/22] drivers/tty/serial/sc16is7xx.c:596:9: error: implicit declaration of function 'sc16is7xx_efr_lock'; did you mean 'sc16is7xx_regs_lock'?
  2025-10-22 14:08   ` Greg Kroah-Hartman
@ 2025-10-22 14:16     ` Hugo Villeneuve
  0 siblings, 0 replies; 4+ messages in thread
From: Hugo Villeneuve @ 2025-10-22 14:16 UTC (permalink / raw)
  To: Greg Kroah-Hartman
  Cc: kernel test robot, Hugo Villeneuve, oe-kbuild-all, linux-serial

On Wed, 22 Oct 2025 16:08:21 +0200
Greg Kroah-Hartman <gregkh@linuxfoundation.org> wrote:

> On Wed, Oct 22, 2025 at 09:55:24AM -0400, Hugo Villeneuve wrote:
> > On Wed, 22 Oct 2025 21:07:24 +0800
> > kernel test robot <lkp@intel.com> wrote:
> > 
> > > tree:   https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git tty-testing
> > > head:   cdca3a77b423691b0e3780653642cd5b31de8bd8
> > > commit: 5a91e16ba44d9850088278ebe209b5c533f87cb8 [11/22] serial: sc16is7xx: define common register access function
> > > config: x86_64-buildonly-randconfig-003-20251022 (https://download.01.org/0day-ci/archive/20251022/202510222048.fnK8S60G-lkp@intel.com/config)
> > > compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
> > > reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251022/202510222048.fnK8S60G-lkp@intel.com/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@intel.com>
> > > | Closes: https://lore.kernel.org/oe-kbuild-all/202510222048.fnK8S60G-lkp@intel.com/
> > > 
> > > All errors (new ones prefixed by >>):
> > > 
> > >    drivers/tty/serial/sc16is7xx.c: In function 'sc16is7xx_set_baud':
> > > >> drivers/tty/serial/sc16is7xx.c:596:9: error: implicit declaration of function 'sc16is7xx_efr_lock'; did you mean 'sc16is7xx_regs_lock'? [-Wimplicit-function-declaration]
> > >      596 |         sc16is7xx_efr_lock(port);
> > >          |         ^~~~~~~~~~~~~~~~~~
> > >          |         sc16is7xx_regs_lock
> > > >> drivers/tty/serial/sc16is7xx.c:600:9: error: implicit declaration of function 'sc16is7xx_efr_unlock'; did you mean 'sc16is7xx_regs_unlock'? [-Wimplicit-function-declaration]
> > >      600 |         sc16is7xx_efr_unlock(port);
> > >          |         ^~~~~~~~~~~~~~~~~~~~
> > >          |         sc16is7xx_regs_unlock
> > > 
> > > 
> > > vim +596 drivers/tty/serial/sc16is7xx.c
> > > 
> > > dbf4ab821804df0 Hugo Villeneuve 2023-12-11  572  
> > > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  573  /*
> > > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  574   * Configure programmable baud rate generator (divisor) according to the
> > > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  575   * desired baud rate.
> > > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  576   *
> > > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  577   * From the datasheet, the divisor is computed according to:
> > > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  578   *
> > > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  579   *              XTAL1 input frequency
> > > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  580   *             -----------------------
> > > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  581   *                    prescaler
> > > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  582   * divisor = ---------------------------
> > > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  583   *            baud-rate x sampling-rate
> > > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  584   */
> > > dfeae619d781dee Jon Ringle      2014-04-24  585  static int sc16is7xx_set_baud(struct uart_port *port, int baud)
> > > dfeae619d781dee Jon Ringle      2014-04-24  586  {
> > > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  587  	unsigned int prescaler = 1;
> > > dfeae619d781dee Jon Ringle      2014-04-24  588  	unsigned long clk = port->uartclk, div = clk / 16 / baud;
> > > dfeae619d781dee Jon Ringle      2014-04-24  589  
> > > 2e57cefc4477659 Hugo Villeneuve 2023-12-21  590  	if (div >= BIT(16)) {
> > > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  591  		prescaler = 4;
> > > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  592  		div /= prescaler;
> > > dfeae619d781dee Jon Ringle      2014-04-24  593  	}
> > > dfeae619d781dee Jon Ringle      2014-04-24  594  
> > > dfeae619d781dee Jon Ringle      2014-04-24  595  	/* Enable enhanced features */
> > > 0c84bea0cabc4e2 Hugo Villeneuve 2023-12-21 @596  	sc16is7xx_efr_lock(port);
> > > c112653b89e0cea Lech Perczak    2022-02-21  597  	sc16is7xx_port_update(port, SC16IS7XX_EFR_REG,
> > > c112653b89e0cea Lech Perczak    2022-02-21  598  			      SC16IS7XX_EFR_ENABLE_BIT,
> > > dfeae619d781dee Jon Ringle      2014-04-24  599  			      SC16IS7XX_EFR_ENABLE_BIT);
> > > 0c84bea0cabc4e2 Hugo Villeneuve 2023-12-21 @600  	sc16is7xx_efr_unlock(port);
> > > 30ec514d440cf2c Phil Elwell     2018-09-12  601  
> > > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  602  	/* If bit MCR_CLKSEL is set, the divide by 4 prescaler is activated. */
> > > dfeae619d781dee Jon Ringle      2014-04-24  603  	sc16is7xx_port_update(port, SC16IS7XX_MCR_REG,
> > > dfeae619d781dee Jon Ringle      2014-04-24  604  			      SC16IS7XX_MCR_CLKSEL_BIT,
> > > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  605  			      prescaler == 1 ? 0 : SC16IS7XX_MCR_CLKSEL_BIT);
> > > dfeae619d781dee Jon Ringle      2014-04-24  606  
> > > 5a91e16ba44d985 Hugo Villeneuve 2025-10-02  607  	/* Access special register set (DLL/DLH) */
> > > 5a91e16ba44d985 Hugo Villeneuve 2025-10-02  608  	sc16is7xx_regs_lock(port, SC16IS7XX_LCR_REG_SET_SPECIAL);
> > > dfeae619d781dee Jon Ringle      2014-04-24  609  
> > > dfeae619d781dee Jon Ringle      2014-04-24  610  	/* Write the new divisor */
> > > dfeae619d781dee Jon Ringle      2014-04-24  611  	sc16is7xx_port_write(port, SC16IS7XX_DLH_REG, div / 256);
> > > dfeae619d781dee Jon Ringle      2014-04-24  612  	sc16is7xx_port_write(port, SC16IS7XX_DLL_REG, div % 256);
> > > dfeae619d781dee Jon Ringle      2014-04-24  613  
> > > 5a91e16ba44d985 Hugo Villeneuve 2025-10-02  614  	/* Restore access to general register set */
> > > 5a91e16ba44d985 Hugo Villeneuve 2025-10-02  615  	sc16is7xx_regs_unlock(port);
> > > 7d3b793faaab130 Hugo Villeneuve 2024-07-23  616  
> > > 8492bd91aa05590 Hugo Villeneuve 2024-04-30  617  	return DIV_ROUND_CLOSEST((clk / prescaler) / 16, div);
> > > dfeae619d781dee Jon Ringle      2014-04-24  618  }
> > > dfeae619d781dee Jon Ringle      2014-04-24  619  
> > > 
> > > :::::: The code at line 596 was first introduced by commit
> > > :::::: 0c84bea0cabc4e2b98a3de88eeb4ff798931f056 serial: sc16is7xx: refactor EFR lock
> > > 
> > > :::::: TO: Hugo Villeneuve <hvilleneuve@dimonoff.com>
> > > :::::: CC: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> > > 
> > > -- 
> > > 0-DAY CI Kernel Test Service
> > > https://github.com/intel/lkp-tests/wiki
> > 
> > Hi Greg,
> > this patch, and other patches in this series, depends on the patch
> > "serial: sc16is7xx: remove useless enable of enhanced features"
> > that you just added to your tty-linus tree.
> > 
> > If you first add this patch to tty-testing, then the error
> > disappear.
> 

> Ugh, that was not obvious at all :(

Hi Greg,
sorry about that.

> I'll go drop all of these from my tty-next branch, can you resend them
> when I merge -rc3 into that branch so that things do not break?

No problem, in fact that is what I was planning to do all along,
sending a v3 of the series once patch "serial: sc16is7xx: remove
useless enable of enhanced features" lands in tty-testing or tty-next.

Hugo.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2025-10-22 14:36 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-22 13:07 [tty:tty-testing 11/22] drivers/tty/serial/sc16is7xx.c:596:9: error: implicit declaration of function 'sc16is7xx_efr_lock'; did you mean 'sc16is7xx_regs_lock'? kernel test robot
2025-10-22 13:55 ` Hugo Villeneuve
2025-10-22 14:08   ` Greg Kroah-Hartman
2025-10-22 14:16     ` Hugo Villeneuve

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox