[linux-next:master 4395/7467] drivers/clocksource/timer-vf-pit.c:194: error: unterminated argument list invoking macro "BUG_ON"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   134546626849cd6852d6d4bf8f207b5fbc54261b
commit: cc2550b421aa30e3da67e5a7f6d14f3ecd3527b3 [4395/7467] clocksource: Replace setup_irq() by request_irq()
config: arm-randconfig-a001-20200311 (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.2.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        git checkout cc2550b421aa30e3da67e5a7f6d14f3ecd3527b3
        # save the attached .config to linux build tree
        GCC_VERSION=9.2.0 make.cross ARCH=arm 

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@xxxxxxxxx>

All error/warnings (new ones prefixed by >>):

   drivers/clocksource/timer-vf-pit.c: In function 'pit_clockevent_init':
>> drivers/clocksource/timer-vf-pit.c:194: error: unterminated argument list invoking macro "BUG_ON"
     194 | TIMER_OF_DECLARE(vf610, "fsl,vf610-pit", pit_timer_init);
         | 
>> drivers/clocksource/timer-vf-pit.c:131:2: error: 'BUG_ON' undeclared (first use in this function)
     131 |  BUG_ON(request_irq(irq, pit_timer_interrupt, IRQF_TIMER | IRQF_IRQPOLL,
         |  ^~~~~~
   drivers/clocksource/timer-vf-pit.c:131:2: note: each undeclared identifier is reported only once for each function it appears in
>> drivers/clocksource/timer-vf-pit.c:131:8: error: expected ';' at end of input
     131 |  BUG_ON(request_irq(irq, pit_timer_interrupt, IRQF_TIMER | IRQF_IRQPOLL,
         |        ^
         |        ;
   ......
     194 | TIMER_OF_DECLARE(vf610, "fsl,vf610-pit", pit_timer_init);
         |         
>> drivers/clocksource/timer-vf-pit.c:131:2: error: expected declaration or statement at end of input
     131 |  BUG_ON(request_irq(irq, pit_timer_interrupt, IRQF_TIMER | IRQF_IRQPOLL,
         |  ^~~~~~
>> drivers/clocksource/timer-vf-pit.c:131:2: warning: no return statement in function returning non-void [-Wreturn-type]
   At top level:
   drivers/clocksource/timer-vf-pit.c:126:19: warning: 'pit_clockevent_init' defined but not used [-Wunused-function]
     126 | static int __init pit_clockevent_init(unsigned long rate, int irq)
         |                   ^~~~~~~~~~~~~~~~~~~
   drivers/clocksource/timer-vf-pit.c:117:34: warning: 'clockevent_pit' defined but not used [-Wunused-variable]
     117 | static struct clock_event_device clockevent_pit = {
         |                                  ^~~~~~~~~~~~~~
   drivers/clocksource/timer-vf-pit.c:97:20: warning: 'pit_timer_interrupt' defined but not used [-Wunused-function]
      97 | static irqreturn_t pit_timer_interrupt(int irq, void *dev_id)
         |                    ^~~~~~~~~~~~~~~~~~~
   drivers/clocksource/timer-vf-pit.c:56:19: warning: 'pit_clocksource_init' defined but not used [-Wunused-function]
      56 | static int __init pit_clocksource_init(unsigned long rate)
         |                   ^~~~~~~~~~~~~~~~~~~~

vim +/BUG_ON +194 drivers/clocksource/timer-vf-pit.c

c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  125  
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  126  static int __init pit_clockevent_init(unsigned long rate, int irq)
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  127  {
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  128  	__raw_writel(0, clkevt_base + PITTCTRL);
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  129  	__raw_writel(PITTFLG_TIF, clkevt_base + PITTFLG);
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  130  
cc2550b421aa30 drivers/clocksource/timer-vf-pit.c afzal mohammed 2020-02-27 @131  	BUG_ON(request_irq(irq, pit_timer_interrupt, IRQF_TIMER | IRQF_IRQPOLL,
cc2550b421aa30 drivers/clocksource/timer-vf-pit.c afzal mohammed 2020-02-27  132  			   "VF pit timer", &clockevent_pit);
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  133  
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  134  	clockevent_pit.cpumask = cpumask_of(0);
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  135  	clockevent_pit.irq = irq;
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  136  	/*
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  137  	 * The value for the LDVAL register trigger is calculated as:
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  138  	 * LDVAL trigger = (period / clock period) - 1
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  139  	 * The pit is a 32-bit down count timer, when the conter value
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  140  	 * reaches 0, it will generate an interrupt, thus the minimal
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  141  	 * LDVAL trigger value is 1. And then the min_delta is
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  142  	 * minimal LDVAL trigger value + 1, and the max_delta is full 32-bit.
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  143  	 */
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  144  	clockevents_config_and_register(&clockevent_pit, rate, 2, 0xffffffff);
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  145  
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  146  	return 0;
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  147  }
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  148  
b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06  149  static int __init pit_timer_init(struct device_node *np)
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  150  {
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  151  	struct clk *pit_clk;
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  152  	void __iomem *timer_base;
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  153  	unsigned long clk_rate;
b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06  154  	int irq, ret;
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  155  
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  156  	timer_base = of_iomap(np, 0);
b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06  157  	if (!timer_base) {
ac9ce6d1a0cc29 drivers/clocksource/vf_pit_timer.c Rafał Miłecki  2017-03-09  158  		pr_err("Failed to iomap\n");
b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06  159  		return -ENXIO;
b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06  160  	}
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  161  
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  162  	/*
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  163  	 * PIT0 and PIT1 can be chained to build a 64-bit timer,
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  164  	 * so choose PIT2 as clocksource, PIT3 as clockevent device,
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  165  	 * and leave PIT0 and PIT1 unused for anyone else who needs them.
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  166  	 */
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  167  	clksrc_base = timer_base + PITn_OFFSET(2);
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  168  	clkevt_base = timer_base + PITn_OFFSET(3);
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  169  
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  170  	irq = irq_of_parse_and_map(np, 0);
b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06  171  	if (irq <= 0)
b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06  172  		return -EINVAL;
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  173  
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  174  	pit_clk = of_clk_get(np, 0);
b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06  175  	if (IS_ERR(pit_clk))
b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06  176  		return PTR_ERR(pit_clk);
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  177  
b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06  178  	ret = clk_prepare_enable(pit_clk);
b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06  179  	if (ret)
b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06  180  		return ret;
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  181  
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  182  	clk_rate = clk_get_rate(pit_clk);
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  183  	cycle_per_jiffy = clk_rate / (HZ);
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  184  
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  185  	/* enable the pit module */
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  186  	__raw_writel(~PITMCR_MDIS, timer_base + PITMCR);
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  187  
b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06  188  	ret = pit_clocksource_init(clk_rate);
b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06  189  	if (ret)
b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06  190  		return ret;
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  191  
b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06  192  	return pit_clockevent_init(clk_rate, irq);
c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu   2013-05-29  193  }
1727339590fdb5 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2017-05-26 @194  TIMER_OF_DECLARE(vf610, "fsl,vf610-pit", pit_timer_init);

:::::: The code at line 194 was first introduced by commit
:::::: 1727339590fdb5a1ded881b540cd32121278d414 clocksource/drivers: Rename CLOCKSOURCE_OF_DECLARE to TIMER_OF_DECLARE

:::::: TO: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
:::::: CC: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>

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

Attachment: .config.gz
Description: application/gzip


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux