llvm.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
* Re: [RFC PATCH] Revert "sc16is7xx: Separate GPIOs from modem control lines"
       [not found] <20230515160206.2801991-1-hugo@hugovil.com>
@ 2023-05-16  6:20 ` kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2023-05-16  6:20 UTC (permalink / raw)
  To: Hugo Villeneuve; +Cc: llvm, oe-kbuild-all

Hi Hugo,

[This is a private test report for your RFC patch.]
kernel test robot noticed the following build errors:

[auto build test ERROR on tty/tty-testing]
[also build test ERROR on tty/tty-next tty/tty-linus linus/master v6.4-rc2 next-20230516]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Hugo-Villeneuve/Revert-sc16is7xx-Separate-GPIOs-from-modem-control-lines/20230516-022330
base:   https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git tty-testing
patch link:    https://lore.kernel.org/r/20230515160206.2801991-1-hugo%40hugovil.com
patch subject: [RFC PATCH] Revert "sc16is7xx: Separate GPIOs from modem control lines"
config: i386-randconfig-i053-20230515 (https://download.01.org/0day-ci/archive/20230516/202305161450.DFSDFYLS-lkp@intel.com/config)
compiler: clang version 14.0.6 (https://github.com/llvm/llvm-project f28c006a5895fc0e329fe15fead81e37457cb1d1)
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://github.com/intel-lab-lkp/linux/commit/07f35c5b5f2d204418ea211f585d140c9df5506b
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Hugo-Villeneuve/Revert-sc16is7xx-Separate-GPIOs-from-modem-control-lines/20230516-022330
        git checkout 07f35c5b5f2d204418ea211f585d140c9df5506b
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 olddefconfig
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 SHELL=/bin/bash drivers/tty/serial/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>
| Link: https://lore.kernel.org/oe-kbuild-all/202305161450.DFSDFYLS-lkp@intel.com/

All errors (new ones prefixed by >>):

>> drivers/tty/serial/sc16is7xx.c:1454:16: error: no member named 'has_mctrl' in 'struct sc16is7xx_devtype'
                   if (devtype->has_mctrl)
                       ~~~~~~~  ^
   1 error generated.


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

267913ecf73745 Ilpo Järvinen       2022-06-06  1352  
dfeae619d781de Jon Ringle          2014-04-24  1353  static int sc16is7xx_probe(struct device *dev,
68be64ca7e2adc Jakub Kicinski      2015-07-31  1354  			   const struct sc16is7xx_devtype *devtype,
37f3965d74d5b5 Daniel Mack         2020-05-21  1355  			   struct regmap *regmap, int irq)
dfeae619d781de Jon Ringle          2014-04-24  1356  {
24bc6e68efa00f Andy Shevchenko     2019-03-18  1357  	unsigned long freq = 0, *pfreq = dev_get_platdata(dev);
2aa916e67db3e6 Daniel Mack         2020-05-21  1358  	unsigned int val;
24bc6e68efa00f Andy Shevchenko     2019-03-18  1359  	u32 uartclk = 0;
dfeae619d781de Jon Ringle          2014-04-24  1360  	int i, ret;
dfeae619d781de Jon Ringle          2014-04-24  1361  	struct sc16is7xx_port *s;
dfeae619d781de Jon Ringle          2014-04-24  1362  
dfeae619d781de Jon Ringle          2014-04-24  1363  	if (IS_ERR(regmap))
dfeae619d781de Jon Ringle          2014-04-24  1364  		return PTR_ERR(regmap);
dfeae619d781de Jon Ringle          2014-04-24  1365  
2aa916e67db3e6 Daniel Mack         2020-05-21  1366  	/*
2aa916e67db3e6 Daniel Mack         2020-05-21  1367  	 * This device does not have an identification register that would
2aa916e67db3e6 Daniel Mack         2020-05-21  1368  	 * tell us if we are really connected to the correct device.
2aa916e67db3e6 Daniel Mack         2020-05-21  1369  	 * The best we can do is to check if communication is at all possible.
2aa916e67db3e6 Daniel Mack         2020-05-21  1370  	 */
2aa916e67db3e6 Daniel Mack         2020-05-21  1371  	ret = regmap_read(regmap,
2aa916e67db3e6 Daniel Mack         2020-05-21  1372  			  SC16IS7XX_LSR_REG << SC16IS7XX_REG_SHIFT, &val);
2aa916e67db3e6 Daniel Mack         2020-05-21  1373  	if (ret < 0)
158e800e0fde91 Annaliese McDermond 2021-03-29  1374  		return -EPROBE_DEFER;
2aa916e67db3e6 Daniel Mack         2020-05-21  1375  
dfeae619d781de Jon Ringle          2014-04-24  1376  	/* Alloc port structure */
84f1c5c0174ace Gustavo A. R. Silva 2019-01-04  1377  	s = devm_kzalloc(dev, struct_size(s, p, devtype->nr_uart), GFP_KERNEL);
dfeae619d781de Jon Ringle          2014-04-24  1378  	if (!s) {
dfeae619d781de Jon Ringle          2014-04-24  1379  		dev_err(dev, "Error allocating port structure\n");
dfeae619d781de Jon Ringle          2014-04-24  1380  		return -ENOMEM;
dfeae619d781de Jon Ringle          2014-04-24  1381  	}
dfeae619d781de Jon Ringle          2014-04-24  1382  
24bc6e68efa00f Andy Shevchenko     2019-03-18  1383  	/* Always ask for fixed clock rate from a property. */
24bc6e68efa00f Andy Shevchenko     2019-03-18  1384  	device_property_read_u32(dev, "clock-frequency", &uartclk);
24bc6e68efa00f Andy Shevchenko     2019-03-18  1385  
cb1b206cff461d Andy Shevchenko     2021-05-17  1386  	s->clk = devm_clk_get_optional(dev, NULL);
cb1b206cff461d Andy Shevchenko     2021-05-17  1387  	if (IS_ERR(s->clk))
cb1b206cff461d Andy Shevchenko     2021-05-17  1388  		return PTR_ERR(s->clk);
cb1b206cff461d Andy Shevchenko     2021-05-17  1389  
cb1b206cff461d Andy Shevchenko     2021-05-17  1390  	ret = clk_prepare_enable(s->clk);
cb1b206cff461d Andy Shevchenko     2021-05-17  1391  	if (ret)
cb1b206cff461d Andy Shevchenko     2021-05-17  1392  		return ret;
cb1b206cff461d Andy Shevchenko     2021-05-17  1393  
cb1b206cff461d Andy Shevchenko     2021-05-17  1394  	freq = clk_get_rate(s->clk);
cb1b206cff461d Andy Shevchenko     2021-05-17  1395  	if (freq == 0) {
24bc6e68efa00f Andy Shevchenko     2019-03-18  1396  		if (uartclk)
24bc6e68efa00f Andy Shevchenko     2019-03-18  1397  			freq = uartclk;
dfeae619d781de Jon Ringle          2014-04-24  1398  		if (pfreq)
dfeae619d781de Jon Ringle          2014-04-24  1399  			freq = *pfreq;
24bc6e68efa00f Andy Shevchenko     2019-03-18  1400  		if (freq)
24bc6e68efa00f Andy Shevchenko     2019-03-18  1401  			dev_dbg(dev, "Clock frequency: %luHz\n", freq);
dfeae619d781de Jon Ringle          2014-04-24  1402  		else
cb1b206cff461d Andy Shevchenko     2021-05-17  1403  			return -EINVAL;
dfeae619d781de Jon Ringle          2014-04-24  1404  	}
dfeae619d781de Jon Ringle          2014-04-24  1405  
dfeae619d781de Jon Ringle          2014-04-24  1406  	s->regmap = regmap;
dfeae619d781de Jon Ringle          2014-04-24  1407  	s->devtype = devtype;
dfeae619d781de Jon Ringle          2014-04-24  1408  	dev_set_drvdata(dev, s);
30ec514d440cf2 Phil Elwell         2018-09-12  1409  	mutex_init(&s->efr_lock);
dfeae619d781de Jon Ringle          2014-04-24  1410  
3989144f863ac5 Petr Mladek         2016-10-11  1411  	kthread_init_worker(&s->kworker);
9e6f4ca3e567d5 Jakub Kicinski      2015-05-29  1412  	s->kworker_task = kthread_run(kthread_worker_fn, &s->kworker,
9e6f4ca3e567d5 Jakub Kicinski      2015-05-29  1413  				      "sc16is7xx");
9e6f4ca3e567d5 Jakub Kicinski      2015-05-29  1414  	if (IS_ERR(s->kworker_task)) {
9e6f4ca3e567d5 Jakub Kicinski      2015-05-29  1415  		ret = PTR_ERR(s->kworker_task);
c64349722d1417 Jakub Kicinski      2015-07-31  1416  		goto out_clk;
9e6f4ca3e567d5 Jakub Kicinski      2015-05-29  1417  	}
28d2f209cd1620 Peter Zijlstra      2020-04-21  1418  	sched_set_fifo(s->kworker_task);
9e6f4ca3e567d5 Jakub Kicinski      2015-05-29  1419  
43c51bb573aab6 Florian Vallee      2016-07-19  1420  	/* reset device, purging any pending irq / data */
43c51bb573aab6 Florian Vallee      2016-07-19  1421  	regmap_write(s->regmap, SC16IS7XX_IOCONTROL_REG << SC16IS7XX_REG_SHIFT,
43c51bb573aab6 Florian Vallee      2016-07-19  1422  			SC16IS7XX_IOCONTROL_SRESET_BIT);
43c51bb573aab6 Florian Vallee      2016-07-19  1423  
dfeae619d781de Jon Ringle          2014-04-24  1424  	for (i = 0; i < devtype->nr_uart; ++i) {
e92a886bf7841c Jakub Kicinski      2015-07-31  1425  		s->p[i].line		= i;
dfeae619d781de Jon Ringle          2014-04-24  1426  		/* Initialize port data */
dfeae619d781de Jon Ringle          2014-04-24  1427  		s->p[i].port.dev	= dev;
dfeae619d781de Jon Ringle          2014-04-24  1428  		s->p[i].port.irq	= irq;
dfeae619d781de Jon Ringle          2014-04-24  1429  		s->p[i].port.type	= PORT_SC16IS7XX;
dfeae619d781de Jon Ringle          2014-04-24  1430  		s->p[i].port.fifosize	= SC16IS7XX_FIFO_SIZE;
dfeae619d781de Jon Ringle          2014-04-24  1431  		s->p[i].port.flags	= UPF_FIXED_TYPE | UPF_LOW_LATENCY;
5da6b1c079e680 Daniel Mack         2020-09-01  1432  		s->p[i].port.iobase	= i;
dfeae619d781de Jon Ringle          2014-04-24  1433  		s->p[i].port.iotype	= UPIO_PORT;
dfeae619d781de Jon Ringle          2014-04-24  1434  		s->p[i].port.uartclk	= freq;
b57d15fe8b37fe Ricardo Ribalda     2014-11-06  1435  		s->p[i].port.rs485_config = sc16is7xx_config_rs485;
0139da50dc53f0 Ilpo Järvinen       2022-07-04  1436  		s->p[i].port.rs485_supported = sc16is7xx_rs485_supported;
dfeae619d781de Jon Ringle          2014-04-24  1437  		s->p[i].port.ops	= &sc16is7xx_ops;
21144bab4f1191 Tomasz Moń          2022-03-01  1438  		s->p[i].old_mctrl	= 0;
c64349722d1417 Jakub Kicinski      2015-07-31  1439  		s->p[i].port.line	= sc16is7xx_alloc_line();
21144bab4f1191 Tomasz Moń          2022-03-01  1440  
c64349722d1417 Jakub Kicinski      2015-07-31  1441  		if (s->p[i].port.line >= SC16IS7XX_MAX_DEVS) {
c64349722d1417 Jakub Kicinski      2015-07-31  1442  			ret = -ENOMEM;
c64349722d1417 Jakub Kicinski      2015-07-31  1443  			goto out_ports;
c64349722d1417 Jakub Kicinski      2015-07-31  1444  		}
c64349722d1417 Jakub Kicinski      2015-07-31  1445  
dfeae619d781de Jon Ringle          2014-04-24  1446  		/* Disable all interrupts */
dfeae619d781de Jon Ringle          2014-04-24  1447  		sc16is7xx_port_write(&s->p[i].port, SC16IS7XX_IER_REG, 0);
dfeae619d781de Jon Ringle          2014-04-24  1448  		/* Disable TX/RX */
dfeae619d781de Jon Ringle          2014-04-24  1449  		sc16is7xx_port_write(&s->p[i].port, SC16IS7XX_EFCR_REG,
dfeae619d781de Jon Ringle          2014-04-24  1450  				     SC16IS7XX_EFCR_RXDISABLE_BIT |
dfeae619d781de Jon Ringle          2014-04-24  1451  				     SC16IS7XX_EFCR_TXDISABLE_BIT);
21144bab4f1191 Tomasz Moń          2022-03-01  1452  
21144bab4f1191 Tomasz Moń          2022-03-01  1453  		/* Use GPIO lines as modem status registers */
21144bab4f1191 Tomasz Moń          2022-03-01 @1454  		if (devtype->has_mctrl)
21144bab4f1191 Tomasz Moń          2022-03-01  1455  			sc16is7xx_port_write(&s->p[i].port,
21144bab4f1191 Tomasz Moń          2022-03-01  1456  					     SC16IS7XX_IOCONTROL_REG,
21144bab4f1191 Tomasz Moń          2022-03-01  1457  					     SC16IS7XX_IOCONTROL_MODEM_BIT);
21144bab4f1191 Tomasz Moń          2022-03-01  1458  
a0104085362ff9 Jakub Kicinski      2015-05-29  1459  		/* Initialize kthread work structs */
3989144f863ac5 Petr Mladek         2016-10-11  1460  		kthread_init_work(&s->p[i].tx_work, sc16is7xx_tx_proc);
3989144f863ac5 Petr Mladek         2016-10-11  1461  		kthread_init_work(&s->p[i].reg_work, sc16is7xx_reg_proc);
21144bab4f1191 Tomasz Moń          2022-03-01  1462  		kthread_init_delayed_work(&s->p[i].ms_work, sc16is7xx_ms_proc);
dfeae619d781de Jon Ringle          2014-04-24  1463  		/* Register port */
c64349722d1417 Jakub Kicinski      2015-07-31  1464  		uart_add_one_port(&sc16is7xx_uart, &s->p[i].port);
43c51bb573aab6 Florian Vallee      2016-07-19  1465  
43c51bb573aab6 Florian Vallee      2016-07-19  1466  		/* Enable EFR */
43c51bb573aab6 Florian Vallee      2016-07-19  1467  		sc16is7xx_port_write(&s->p[i].port, SC16IS7XX_LCR_REG,
43c51bb573aab6 Florian Vallee      2016-07-19  1468  				     SC16IS7XX_LCR_CONF_MODE_B);
43c51bb573aab6 Florian Vallee      2016-07-19  1469  
43c51bb573aab6 Florian Vallee      2016-07-19  1470  		regcache_cache_bypass(s->regmap, true);
43c51bb573aab6 Florian Vallee      2016-07-19  1471  
43c51bb573aab6 Florian Vallee      2016-07-19  1472  		/* Enable write access to enhanced features */
43c51bb573aab6 Florian Vallee      2016-07-19  1473  		sc16is7xx_port_write(&s->p[i].port, SC16IS7XX_EFR_REG,
43c51bb573aab6 Florian Vallee      2016-07-19  1474  				     SC16IS7XX_EFR_ENABLE_BIT);
43c51bb573aab6 Florian Vallee      2016-07-19  1475  
43c51bb573aab6 Florian Vallee      2016-07-19  1476  		regcache_cache_bypass(s->regmap, false);
43c51bb573aab6 Florian Vallee      2016-07-19  1477  
43c51bb573aab6 Florian Vallee      2016-07-19  1478  		/* Restore access to general registers */
43c51bb573aab6 Florian Vallee      2016-07-19  1479  		sc16is7xx_port_write(&s->p[i].port, SC16IS7XX_LCR_REG, 0x00);
43c51bb573aab6 Florian Vallee      2016-07-19  1480  
dfeae619d781de Jon Ringle          2014-04-24  1481  		/* Go to suspend mode */
dfeae619d781de Jon Ringle          2014-04-24  1482  		sc16is7xx_power(&s->p[i].port, 0);
dfeae619d781de Jon Ringle          2014-04-24  1483  	}
dfeae619d781de Jon Ringle          2014-04-24  1484  
9eb90d57b55a0a Pascal Huerst       2020-05-29  1485  	if (dev->of_node) {
9eb90d57b55a0a Pascal Huerst       2020-05-29  1486  		struct property *prop;
9eb90d57b55a0a Pascal Huerst       2020-05-29  1487  		const __be32 *p;
9eb90d57b55a0a Pascal Huerst       2020-05-29  1488  		u32 u;
9eb90d57b55a0a Pascal Huerst       2020-05-29  1489  
9eb90d57b55a0a Pascal Huerst       2020-05-29  1490  		of_property_for_each_u32(dev->of_node, "irda-mode-ports",
9eb90d57b55a0a Pascal Huerst       2020-05-29  1491  					 prop, p, u)
9eb90d57b55a0a Pascal Huerst       2020-05-29  1492  			if (u < devtype->nr_uart)
9eb90d57b55a0a Pascal Huerst       2020-05-29  1493  				s->p[u].irda_mode = true;
9eb90d57b55a0a Pascal Huerst       2020-05-29  1494  	}
9eb90d57b55a0a Pascal Huerst       2020-05-29  1495  

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

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2023-05-16  6:21 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20230515160206.2801991-1-hugo@hugovil.com>
2023-05-16  6:20 ` [RFC PATCH] Revert "sc16is7xx: Separate GPIOs from modem control lines" 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).