Re: [patch v17 2/4] drivers: jtag: Add Aspeed SoC 24xx and 25xx families JTAG master driver

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

 




Hi Oleksandr,

I love your patch! Yet something to improve:

[auto build test ERROR on linus/master]
[also build test ERROR on v4.15-rc8]
[cannot apply to next-20180118]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Oleksandr-Shamray/drivers-jtag-Add-JTAG-core-driver/20180119-123719
config: ia64-allmodconfig (attached as .config)
compiler: ia64-linux-gcc (GCC) 7.2.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=ia64 

Note: the linux-review/Oleksandr-Shamray/drivers-jtag-Add-JTAG-core-driver/20180119-123719 HEAD b9c3d4721186f8264960ad87c6c499cdd1b6c2e8 builds fine.
      It only hurts bisectibility.

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

   drivers/jtag/jtag-aspeed.c: In function 'aspeed_jtag_init':
>> drivers/jtag/jtag-aspeed.c:657:21: error: implicit declaration of function 'devm_reset_control_get_shared'; did you mean 'devm_pinctrl_get_select'? [-Werror=implicit-function-declaration]
     aspeed_jtag->rst = devm_reset_control_get_shared(aspeed_jtag->dev,
                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                        devm_pinctrl_get_select
>> drivers/jtag/jtag-aspeed.c:657:19: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
     aspeed_jtag->rst = devm_reset_control_get_shared(aspeed_jtag->dev,
                      ^
>> drivers/jtag/jtag-aspeed.c:664:2: error: implicit declaration of function 'reset_control_deassert' [-Werror=implicit-function-declaration]
     reset_control_deassert(aspeed_jtag->rst);
     ^~~~~~~~~~~~~~~~~~~~~~
   drivers/jtag/jtag-aspeed.c: In function 'aspeed_jtag_deinit':
>> drivers/jtag/jtag-aspeed.c:707:2: error: implicit declaration of function 'reset_control_assert' [-Werror=implicit-function-declaration]
     reset_control_assert(aspeed_jtag->rst);
     ^~~~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors

vim +657 drivers/jtag/jtag-aspeed.c

   631	
   632	int aspeed_jtag_init(struct platform_device *pdev,
   633			     struct aspeed_jtag *aspeed_jtag)
   634	{
   635		struct resource *res;
   636		int err;
   637	
   638		res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
   639		aspeed_jtag->reg_base = devm_ioremap_resource(aspeed_jtag->dev, res);
   640		if (IS_ERR(aspeed_jtag->reg_base))
   641			return -ENOMEM;
   642	
   643		aspeed_jtag->pclk = devm_clk_get(aspeed_jtag->dev, NULL);
   644		if (IS_ERR(aspeed_jtag->pclk)) {
   645			dev_err(aspeed_jtag->dev, "devm_clk_get failed\n");
   646			return PTR_ERR(aspeed_jtag->pclk);
   647		}
   648	
   649		aspeed_jtag->irq = platform_get_irq(pdev, 0);
   650		if (aspeed_jtag->irq < 0) {
   651			dev_err(aspeed_jtag->dev, "no irq specified\n");
   652			return -ENOENT;
   653		}
   654	
   655		clk_prepare_enable(aspeed_jtag->pclk);
   656	
 > 657		aspeed_jtag->rst = devm_reset_control_get_shared(aspeed_jtag->dev,
   658								 NULL);
   659		if (IS_ERR(aspeed_jtag->rst)) {
   660			dev_err(aspeed_jtag->dev,
   661				"missing or invalid reset controller device tree entry");
   662			return PTR_ERR(aspeed_jtag->rst);
   663		}
 > 664		reset_control_deassert(aspeed_jtag->rst);
   665	
   666		/* Enable clock */
   667		aspeed_jtag_write(aspeed_jtag, ASPEED_JTAG_CTL_ENG_EN |
   668				  ASPEED_JTAG_CTL_ENG_OUT_EN, ASPEED_JTAG_CTRL);
   669		aspeed_jtag_write(aspeed_jtag, ASPEED_JTAG_SW_MODE_EN |
   670				  ASPEED_JTAG_SW_MODE_TDIO, ASPEED_JTAG_SW);
   671	
   672		err = devm_request_irq(aspeed_jtag->dev, aspeed_jtag->irq,
   673				       aspeed_jtag_interrupt, 0,
   674				       "aspeed-jtag", aspeed_jtag);
   675		if (err) {
   676			dev_err(aspeed_jtag->dev, "unable to get IRQ");
   677			goto clk_unprep;
   678		}
   679		dev_dbg(&pdev->dev, "IRQ %d.\n", aspeed_jtag->irq);
   680	
   681		aspeed_jtag_write(aspeed_jtag, ASPEED_JTAG_ISR_INST_PAUSE |
   682				  ASPEED_JTAG_ISR_INST_COMPLETE |
   683				  ASPEED_JTAG_ISR_DATA_PAUSE |
   684				  ASPEED_JTAG_ISR_DATA_COMPLETE |
   685				  ASPEED_JTAG_ISR_INST_PAUSE_EN |
   686				  ASPEED_JTAG_ISR_INST_COMPLETE_EN |
   687				  ASPEED_JTAG_ISR_DATA_PAUSE_EN |
   688				  ASPEED_JTAG_ISR_DATA_COMPLETE_EN,
   689				  ASPEED_JTAG_ISR);
   690	
   691		aspeed_jtag->flag = 0;
   692		aspeed_jtag->mode = 0;
   693		init_waitqueue_head(&aspeed_jtag->jtag_wq);
   694		return 0;
   695	
   696	clk_unprep:
   697		clk_disable_unprepare(aspeed_jtag->pclk);
   698		return err;
   699	}
   700	
   701	int aspeed_jtag_deinit(struct platform_device *pdev,
   702			       struct aspeed_jtag *aspeed_jtag)
   703	{
   704		aspeed_jtag_write(aspeed_jtag, 0, ASPEED_JTAG_ISR);
   705		/* Disable clock */
   706		aspeed_jtag_write(aspeed_jtag, 0, ASPEED_JTAG_CTRL);
 > 707		reset_control_assert(aspeed_jtag->rst);
   708		clk_disable_unprepare(aspeed_jtag->pclk);
   709		return 0;
   710	}
   711	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Attachment: .config.gz
Description: application/gzip


[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux