* [tty:tty-testing 11/22] drivers/tty/serial/sc16is7xx.c:596:2: error: call to undeclared function 'sc16is7xx_efr_lock'; ISO C99 and later do not support implicit function declarations
@ 2025-10-22 13:48 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2025-10-22 13:48 UTC (permalink / raw)
To: Hugo Villeneuve; +Cc: llvm, 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-001-20251022 (https://download.01.org/0day-ci/archive/20251022/202510222116.kkZML444-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251022/202510222116.kkZML444-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/202510222116.kkZML444-lkp@intel.com/
All errors (new ones prefixed by >>):
>> drivers/tty/serial/sc16is7xx.c:596:2: error: call to undeclared function 'sc16is7xx_efr_lock'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
596 | sc16is7xx_efr_lock(port);
| ^
drivers/tty/serial/sc16is7xx.c:596:2: note: did you mean 'sc16is7xx_regs_lock'?
drivers/tty/serial/sc16is7xx.c:441:13: note: 'sc16is7xx_regs_lock' declared here
441 | static void sc16is7xx_regs_lock(struct uart_port *port, u8 register_set)
| ^
>> drivers/tty/serial/sc16is7xx.c:600:2: error: call to undeclared function 'sc16is7xx_efr_unlock'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
600 | sc16is7xx_efr_unlock(port);
| ^
2 errors generated.
vim +/sc16is7xx_efr_lock +596 drivers/tty/serial/sc16is7xx.c
dbf4ab821804df Hugo Villeneuve 2023-12-11 572
8492bd91aa0559 Hugo Villeneuve 2024-04-30 573 /*
8492bd91aa0559 Hugo Villeneuve 2024-04-30 574 * Configure programmable baud rate generator (divisor) according to the
8492bd91aa0559 Hugo Villeneuve 2024-04-30 575 * desired baud rate.
8492bd91aa0559 Hugo Villeneuve 2024-04-30 576 *
8492bd91aa0559 Hugo Villeneuve 2024-04-30 577 * From the datasheet, the divisor is computed according to:
8492bd91aa0559 Hugo Villeneuve 2024-04-30 578 *
8492bd91aa0559 Hugo Villeneuve 2024-04-30 579 * XTAL1 input frequency
8492bd91aa0559 Hugo Villeneuve 2024-04-30 580 * -----------------------
8492bd91aa0559 Hugo Villeneuve 2024-04-30 581 * prescaler
8492bd91aa0559 Hugo Villeneuve 2024-04-30 582 * divisor = ---------------------------
8492bd91aa0559 Hugo Villeneuve 2024-04-30 583 * baud-rate x sampling-rate
8492bd91aa0559 Hugo Villeneuve 2024-04-30 584 */
dfeae619d781de Jon Ringle 2014-04-24 585 static int sc16is7xx_set_baud(struct uart_port *port, int baud)
dfeae619d781de Jon Ringle 2014-04-24 586 {
8492bd91aa0559 Hugo Villeneuve 2024-04-30 587 unsigned int prescaler = 1;
dfeae619d781de Jon Ringle 2014-04-24 588 unsigned long clk = port->uartclk, div = clk / 16 / baud;
dfeae619d781de Jon Ringle 2014-04-24 589
2e57cefc447765 Hugo Villeneuve 2023-12-21 590 if (div >= BIT(16)) {
8492bd91aa0559 Hugo Villeneuve 2024-04-30 591 prescaler = 4;
8492bd91aa0559 Hugo Villeneuve 2024-04-30 592 div /= prescaler;
dfeae619d781de Jon Ringle 2014-04-24 593 }
dfeae619d781de Jon Ringle 2014-04-24 594
dfeae619d781de Jon Ringle 2014-04-24 595 /* Enable enhanced features */
0c84bea0cabc4e Hugo Villeneuve 2023-12-21 @596 sc16is7xx_efr_lock(port);
c112653b89e0ce Lech Perczak 2022-02-21 597 sc16is7xx_port_update(port, SC16IS7XX_EFR_REG,
c112653b89e0ce Lech Perczak 2022-02-21 598 SC16IS7XX_EFR_ENABLE_BIT,
dfeae619d781de Jon Ringle 2014-04-24 599 SC16IS7XX_EFR_ENABLE_BIT);
0c84bea0cabc4e Hugo Villeneuve 2023-12-21 @600 sc16is7xx_efr_unlock(port);
30ec514d440cf2 Phil Elwell 2018-09-12 601
8492bd91aa0559 Hugo Villeneuve 2024-04-30 602 /* If bit MCR_CLKSEL is set, the divide by 4 prescaler is activated. */
dfeae619d781de Jon Ringle 2014-04-24 603 sc16is7xx_port_update(port, SC16IS7XX_MCR_REG,
dfeae619d781de Jon Ringle 2014-04-24 604 SC16IS7XX_MCR_CLKSEL_BIT,
8492bd91aa0559 Hugo Villeneuve 2024-04-30 605 prescaler == 1 ? 0 : SC16IS7XX_MCR_CLKSEL_BIT);
dfeae619d781de Jon Ringle 2014-04-24 606
5a91e16ba44d98 Hugo Villeneuve 2025-10-02 607 /* Access special register set (DLL/DLH) */
5a91e16ba44d98 Hugo Villeneuve 2025-10-02 608 sc16is7xx_regs_lock(port, SC16IS7XX_LCR_REG_SET_SPECIAL);
dfeae619d781de Jon Ringle 2014-04-24 609
dfeae619d781de Jon Ringle 2014-04-24 610 /* Write the new divisor */
dfeae619d781de Jon Ringle 2014-04-24 611 sc16is7xx_port_write(port, SC16IS7XX_DLH_REG, div / 256);
dfeae619d781de Jon Ringle 2014-04-24 612 sc16is7xx_port_write(port, SC16IS7XX_DLL_REG, div % 256);
dfeae619d781de Jon Ringle 2014-04-24 613
5a91e16ba44d98 Hugo Villeneuve 2025-10-02 614 /* Restore access to general register set */
5a91e16ba44d98 Hugo Villeneuve 2025-10-02 615 sc16is7xx_regs_unlock(port);
7d3b793faaab13 Hugo Villeneuve 2024-07-23 616
8492bd91aa0559 Hugo Villeneuve 2024-04-30 617 return DIV_ROUND_CLOSEST((clk / prescaler) / 16, div);
dfeae619d781de Jon Ringle 2014-04-24 618 }
dfeae619d781de 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] only message in thread
only message in thread, other threads:[~2025-10-22 13:50 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-22 13:48 [tty:tty-testing 11/22] drivers/tty/serial/sc16is7xx.c:596:2: error: call to undeclared function 'sc16is7xx_efr_lock'; ISO C99 and later do not support implicit function declarations kernel test robot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).