> Subject: [kbuild-all] [linux-next:master 4395/7467] drivers/clocksource/timer-vf- > pit.c:194: error: unterminated argument list invoking macro "BUG_ON" Sorry Andrew, there's a bug in code that linux-next bisection result is sent to you, we are working on the fix to recover the logic to send to author for this. Sorry for the noise. > > 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