Hi Oleksij,

I love your patch! Perhaps something to improve:

[auto build test WARNING on linux/master]
[also build test WARNING on linus/master v5.12-rc3 next-20210319]
[cannot apply to iio/togreg]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    
https://github.com/0day-ci/linux/commits/Oleksij-Rempel/mainline-ti-tsc2046-adc-driver/20210319-224746
base:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
a74e6a014c9d4d4161061f770c9b4f98372ac778
config: ia64-allmodconfig (attached as .config)
compiler: ia64-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
        wget 
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O 
~/bin/make.cross
        chmod +x ~/bin/make.cross
        # 
https://github.com/0day-ci/linux/commit/63e96b25ae609f5659a28132f77d353cc7ecbd84
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review 
Oleksij-Rempel/mainline-ti-tsc2046-adc-driver/20210319-224746
        git checkout 63e96b25ae609f5659a28132f77d353cc7ecbd84
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross 
ARCH=ia64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <l...@intel.com>

All warnings (new ones prefixed by >>):

   In file included from include/linux/device.h:15,
                    from include/linux/spi/spi.h:10,
                    from drivers/iio/adc/ti-tsc2046.c:11:
   drivers/iio/adc/ti-tsc2046.c: In function 'tsc2046_adc_probe':
>> drivers/iio/adc/ti-tsc2046.c:621:16: warning: format '%d' expects argument 
>> of type 'int', but argument 4 has type 'long unsigned int' [-Wformat=]
     621 |   dev_err(dev, "SPI max_speed_hz is too high: %d Hz. Max supported 
freq is %d Hz\n",
         |                
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/dev_printk.h:19:22: note: in definition of macro 'dev_fmt'
      19 | #define dev_fmt(fmt) fmt
         |                      ^~~
   drivers/iio/adc/ti-tsc2046.c:621:3: note: in expansion of macro 'dev_err'
     621 |   dev_err(dev, "SPI max_speed_hz is too high: %d Hz. Max supported 
freq is %d Hz\n",
         |   ^~~~~~~
   drivers/iio/adc/ti-tsc2046.c:621:77: note: format string is defined here
     621 |   dev_err(dev, "SPI max_speed_hz is too high: %d Hz. Max supported 
freq is %d Hz\n",
         |                                                                      
      ~^
         |                                                                      
       |
         |                                                                      
       int
         |                                                                      
      %ld

Kconfig warnings: (for reference only)
   WARNING: unmet direct dependencies detected for FRAME_POINTER
   Depends on DEBUG_KERNEL && (M68K || UML || SUPERH) || 
ARCH_WANT_FRAME_POINTERS
   Selected by
   - FAULT_INJECTION_STACKTRACE_FILTER && FAULT_INJECTION_DEBUG_FS && 
STACKTRACE_SUPPORT && !X86_64 && !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM 
&& !ARC && !X86


vim +621 drivers/iio/adc/ti-tsc2046.c

   609  
   610  static int tsc2046_adc_probe(struct spi_device *spi)
   611  {
   612          const struct tsc2046_adc_dcfg *dcfg;
   613          struct device *dev = &spi->dev;
   614          struct tsc2046_adc_priv *priv;
   615          struct iio_dev *indio_dev;
   616          struct iio_trigger *trig;
   617          const char *name;
   618          int ret;
   619  
   620          if (spi->max_speed_hz > TI_TSC2046_MAX_CLK_FREQ) {
 > 621                  dev_err(dev, "SPI max_speed_hz is too high: %d Hz. Max 
 > supported freq is %d Hz\n",
   622                          spi->max_speed_hz, TI_TSC2046_MAX_CLK_FREQ);
   623                  return -EINVAL;
   624          }
   625  
   626          dcfg = device_get_match_data(dev);
   627          if (!dcfg)
   628                  return -EINVAL;
   629  
   630          spi->bits_per_word = 8;
   631          spi->mode &= ~SPI_MODE_X_MASK;
   632          spi->mode |= SPI_MODE_0;
   633          ret = spi_setup(spi);
   634          if (ret < 0)
   635                  return dev_err_probe(dev, ret, "Error in spi setup\n");
   636  
   637          indio_dev = devm_iio_device_alloc(dev, sizeof(*priv));
   638          if (!indio_dev)
   639                  return -ENOMEM;
   640  
   641          priv = iio_priv(indio_dev);
   642          priv->dcfg = dcfg;
   643  
   644          spi_set_drvdata(spi, indio_dev);
   645  
   646          priv->spi = spi;
   647  
   648          name = devm_kasprintf(dev, GFP_KERNEL, "%s-%s",
   649                                TI_TSC2046_NAME, dev_name(dev));
   650  
   651          indio_dev->name = name;
   652          indio_dev->modes = INDIO_DIRECT_MODE | INDIO_BUFFER_TRIGGERED;
   653          indio_dev->channels = dcfg->channels;
   654          indio_dev->num_channels = dcfg->num_channels;
   655          indio_dev->info = &tsc2046_adc_info;
   656  
   657          tsc2046_adc_parse_fwnode(priv);
   658  
   659          ret = tsc2046_adc_setup_spi_msg(priv);
   660          if (ret)
   661                  return ret;
   662  
   663          mutex_init(&priv->slock);
   664  
   665          /* TODO: remove IRQ_NOAUTOEN after needed patches are mainline 
*/
   666          irq_set_status_flags(spi->irq, IRQ_NOAUTOEN);
   667          ret = devm_request_irq(dev, spi->irq, &tsc2046_adc_irq,
   668                                 0, name, indio_dev);
   669          if (ret)
   670                  return ret;
   671  
   672          trig = devm_iio_trigger_alloc(dev, "touchscreen-%s", 
indio_dev->name);
   673          if (!trig)
   674                  return -ENOMEM;
   675  
   676          priv->trig = trig;
   677          trig->dev.parent = indio_dev->dev.parent;
   678          iio_trigger_set_drvdata(trig, indio_dev);
   679          trig->ops = &tsc2046_adc_trigger_ops;
   680  
   681          spin_lock_init(&priv->trig_lock);
   682          hrtimer_init(&priv->trig_timer, CLOCK_MONOTONIC,
   683                       HRTIMER_MODE_REL_SOFT);
   684          priv->trig_timer.function = tsc2046_adc_trig_more;
   685  
   686          ret = devm_iio_trigger_register(dev, trig);
   687          if (ret) {
   688                  dev_err(dev, "failed to register trigger\n");
   689                  return ret;
   690          }
   691  
   692          ret = devm_iio_triggered_buffer_setup(dev, indio_dev, NULL,
   693                                                
&tsc2046_adc_trigger_handler, NULL);
   694          if (ret) {
   695                  dev_err(dev, "Failed to setup triggered buffer\n");
   696                  return ret;
   697          }
   698  
   699          /* set default trigger */
   700          indio_dev->trig = iio_trigger_get(priv->trig);
   701  
   702          ret = devm_iio_device_register(dev, indio_dev);
   703          if (ret) {
   704                  dev_err(dev, "Failed to register iio device\n");
   705                  return ret;
   706          }
   707  
   708          return 0;
   709  }
   710  

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

Attachment: .config.gz
Description: application/gzip

Reply via email to