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