Re: [PATCH v3 3/4] pinctrl: amd: Use pm_pr_dbg to show debugging messages

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

 



Hi Mario,

kernel test robot noticed the following build warnings:

[auto build test WARNING on 7736c431466abb54a2679dc257f739fddfa84295]

url:    https://github.com/intel-lab-lkp/linux/commits/Mario-Limonciello/ACPI-x86-Add-pm_debug_messages-for-LPS0-_DSM-state-tracking/20230602-073044
base:   7736c431466abb54a2679dc257f739fddfa84295
patch link:    https://lore.kernel.org/r/20230601232923.1248-3-mario.limonciello%40amd.com
patch subject: [PATCH v3 3/4] pinctrl: amd: Use pm_pr_dbg to show debugging messages
config: mips-allyesconfig (https://download.01.org/0day-ci/archive/20230602/202306021143.5D8Xmq0r-lkp@xxxxxxxxx/config)
compiler: mips-linux-gcc (GCC) 12.3.0
reproduce (this is a W=1 build):
        mkdir -p ~/bin
        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/61f4d28eda8f5bf19179080626ec4f1276c1cbae
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Mario-Limonciello/ACPI-x86-Add-pm_debug_messages-for-LPS0-_DSM-state-tracking/20230602-073044
        git checkout 61f4d28eda8f5bf19179080626ec4f1276c1cbae
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.3.0 ~/bin/make.cross W=1 O=build_dir ARCH=mips olddefconfig
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.3.0 ~/bin/make.cross W=1 O=build_dir ARCH=mips SHELL=/bin/bash drivers/pinctrl/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202306021143.5D8Xmq0r-lkp@xxxxxxxxx/

All warnings (new ones prefixed by >>):

   drivers/pinctrl/pinctrl-amd.c: In function 'do_amd_gpio_irq_handler':
>> drivers/pinctrl/pinctrl-amd.c:639:28: warning: suggest explicit braces to avoid ambiguous 'else' [-Wdangling-else]
     639 |                         if (regval & PIN_IRQ_PENDING)
         |                            ^


vim +/else +639 drivers/pinctrl/pinctrl-amd.c

ba714a9c1dea85 Thomas Gleixner           2017-05-23  608  
2d54067fcd23aa Mario Limonciello         2021-10-31  609  static bool do_amd_gpio_irq_handler(int irq, void *dev_id)
dbad75dd1f25e0 Ken Xue                   2015-03-10  610  {
ba714a9c1dea85 Thomas Gleixner           2017-05-23  611  	struct amd_gpio *gpio_dev = dev_id;
ba714a9c1dea85 Thomas Gleixner           2017-05-23  612  	struct gpio_chip *gc = &gpio_dev->gc;
ba714a9c1dea85 Thomas Gleixner           2017-05-23  613  	unsigned int i, irqnr;
dbad75dd1f25e0 Ken Xue                   2015-03-10  614  	unsigned long flags;
10ff58aa3c2e2a Ben Dooks (Codethink      2019-10-22  615) 	u32 __iomem *regs;
2d54067fcd23aa Mario Limonciello         2021-10-31  616  	bool ret = false;
10ff58aa3c2e2a Ben Dooks (Codethink      2019-10-22  617) 	u32  regval;
ba714a9c1dea85 Thomas Gleixner           2017-05-23  618  	u64 status, mask;
dbad75dd1f25e0 Ken Xue                   2015-03-10  619  
ba714a9c1dea85 Thomas Gleixner           2017-05-23  620  	/* Read the wake status */
229710fecdd805 Julia Cartwright          2017-03-09  621  	raw_spin_lock_irqsave(&gpio_dev->lock, flags);
ba714a9c1dea85 Thomas Gleixner           2017-05-23  622  	status = readl(gpio_dev->base + WAKE_INT_STATUS_REG1);
ba714a9c1dea85 Thomas Gleixner           2017-05-23  623  	status <<= 32;
ba714a9c1dea85 Thomas Gleixner           2017-05-23  624  	status |= readl(gpio_dev->base + WAKE_INT_STATUS_REG0);
229710fecdd805 Julia Cartwright          2017-03-09  625  	raw_spin_unlock_irqrestore(&gpio_dev->lock, flags);
dbad75dd1f25e0 Ken Xue                   2015-03-10  626  
ba714a9c1dea85 Thomas Gleixner           2017-05-23  627  	/* Bit 0-45 contain the relevant status bits */
ba714a9c1dea85 Thomas Gleixner           2017-05-23  628  	status &= (1ULL << 46) - 1;
ba714a9c1dea85 Thomas Gleixner           2017-05-23  629  	regs = gpio_dev->base;
ba714a9c1dea85 Thomas Gleixner           2017-05-23  630  	for (mask = 1, irqnr = 0; status; mask <<= 1, regs += 4, irqnr += 4) {
ba714a9c1dea85 Thomas Gleixner           2017-05-23  631  		if (!(status & mask))
ba714a9c1dea85 Thomas Gleixner           2017-05-23  632  			continue;
ba714a9c1dea85 Thomas Gleixner           2017-05-23  633  		status &= ~mask;
ba714a9c1dea85 Thomas Gleixner           2017-05-23  634  
ba714a9c1dea85 Thomas Gleixner           2017-05-23  635  		/* Each status bit covers four pins */
dbad75dd1f25e0 Ken Xue                   2015-03-10  636  		for (i = 0; i < 4; i++) {
ba714a9c1dea85 Thomas Gleixner           2017-05-23  637  			regval = readl(regs + i);
1d66e379731f79 Mario Limonciello         2022-10-13  638  
1d66e379731f79 Mario Limonciello         2022-10-13 @639  			if (regval & PIN_IRQ_PENDING)
61f4d28eda8f5b Mario Limonciello         2023-06-01  640  				pm_pr_dbg("GPIO %d is active: 0x%x",
2d54067fcd23aa Mario Limonciello         2021-10-31  641  					  irqnr + i, regval);
1d66e379731f79 Mario Limonciello         2022-10-13  642  
1d66e379731f79 Mario Limonciello         2022-10-13  643  			/* caused wake on resume context for shared IRQ */
1d66e379731f79 Mario Limonciello         2022-10-13  644  			if (irq < 0 && (regval & BIT(WAKE_STS_OFF)))
2d54067fcd23aa Mario Limonciello         2021-10-31  645  				return true;
2d54067fcd23aa Mario Limonciello         2021-10-31  646  
8bbed1eef001fd Daniel Kurtz              2018-07-16  647  			if (!(regval & PIN_IRQ_PENDING) ||
8bbed1eef001fd Daniel Kurtz              2018-07-16  648  			    !(regval & BIT(INTERRUPT_MASK_OFF)))
ba714a9c1dea85 Thomas Gleixner           2017-05-23  649  				continue;
f460c70125bcb1 Sebastian Andrzej Siewior 2022-09-19  650  			generic_handle_domain_irq_safe(gc->irq.domain, irqnr + i);
6afb10267c1692 Daniel Drake              2017-10-02  651  
6afb10267c1692 Daniel Drake              2017-10-02  652  			/* Clear interrupt.
6afb10267c1692 Daniel Drake              2017-10-02  653  			 * We must read the pin register again, in case the
6afb10267c1692 Daniel Drake              2017-10-02  654  			 * value was changed while executing
a9cb09b7be84a7 Marc Zyngier              2021-05-04  655  			 * generic_handle_domain_irq() above.
d21b8adbd475db Daniel Drake              2019-08-14  656  			 * If we didn't find a mapping for the interrupt,
d21b8adbd475db Daniel Drake              2019-08-14  657  			 * disable it in order to avoid a system hang caused
d21b8adbd475db Daniel Drake              2019-08-14  658  			 * by an interrupt storm.
6afb10267c1692 Daniel Drake              2017-10-02  659  			 */
6afb10267c1692 Daniel Drake              2017-10-02  660  			raw_spin_lock_irqsave(&gpio_dev->lock, flags);
6afb10267c1692 Daniel Drake              2017-10-02  661  			regval = readl(regs + i);
d21b8adbd475db Daniel Drake              2019-08-14  662  			if (irq == 0) {
d21b8adbd475db Daniel Drake              2019-08-14  663  				regval &= ~BIT(INTERRUPT_ENABLE_OFF);
d21b8adbd475db Daniel Drake              2019-08-14  664  				dev_dbg(&gpio_dev->pdev->dev,
d21b8adbd475db Daniel Drake              2019-08-14  665  					"Disabling spurious GPIO IRQ %d\n",
d21b8adbd475db Daniel Drake              2019-08-14  666  					irqnr + i);
d21b8adbd475db Daniel Drake              2019-08-14  667  			}
ba714a9c1dea85 Thomas Gleixner           2017-05-23  668  			writel(regval, regs + i);
6afb10267c1692 Daniel Drake              2017-10-02  669  			raw_spin_unlock_irqrestore(&gpio_dev->lock, flags);
2d54067fcd23aa Mario Limonciello         2021-10-31  670  			ret = true;
dbad75dd1f25e0 Ken Xue                   2015-03-10  671  		}
dbad75dd1f25e0 Ken Xue                   2015-03-10  672  	}
2d54067fcd23aa Mario Limonciello         2021-10-31  673  	/* did not cause wake on resume context for shared IRQ */
2d54067fcd23aa Mario Limonciello         2021-10-31  674  	if (irq < 0)
2d54067fcd23aa Mario Limonciello         2021-10-31  675  		return false;
dbad75dd1f25e0 Ken Xue                   2015-03-10  676  
ba714a9c1dea85 Thomas Gleixner           2017-05-23  677  	/* Signal EOI to the GPIO unit */
229710fecdd805 Julia Cartwright          2017-03-09  678  	raw_spin_lock_irqsave(&gpio_dev->lock, flags);
ba714a9c1dea85 Thomas Gleixner           2017-05-23  679  	regval = readl(gpio_dev->base + WAKE_INT_MASTER_REG);
ba714a9c1dea85 Thomas Gleixner           2017-05-23  680  	regval |= EOI_MASK;
ba714a9c1dea85 Thomas Gleixner           2017-05-23  681  	writel(regval, gpio_dev->base + WAKE_INT_MASTER_REG);
229710fecdd805 Julia Cartwright          2017-03-09  682  	raw_spin_unlock_irqrestore(&gpio_dev->lock, flags);
dbad75dd1f25e0 Ken Xue                   2015-03-10  683  
ba714a9c1dea85 Thomas Gleixner           2017-05-23  684  	return ret;
dbad75dd1f25e0 Ken Xue                   2015-03-10  685  }
dbad75dd1f25e0 Ken Xue                   2015-03-10  686  

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



[Index of Archives]     [Linux Kernel Development]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux