All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Stefano Manni <stefano.manni@gmail.com>,
	lars@metafoo.de, Michael.Hennerich@analog.com, jic23@kernel.org,
	dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org
Cc: oe-kbuild-all@lists.linux.dev, linux-iio@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	Stefano Manni <stefano.manni@gmail.com>
Subject: Re: [PATCH] iio: adc: ad799x: add reference supply for ad7994
Date: Wed, 6 Aug 2025 23:22:16 +0800	[thread overview]
Message-ID: <202508062313.Up1PAzZN-lkp@intel.com> (raw)
In-Reply-To: <20250805142423.17710-1-stefano.manni@gmail.com>

Hi Stefano,

kernel test robot noticed the following build errors:

[auto build test ERROR on jic23-iio/togreg]
[also build test ERROR on linus/master v6.16 next-20250806]
[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#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Stefano-Manni/iio-adc-ad799x-add-reference-supply-for-ad7994/20250806-125049
base:   https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio.git togreg
patch link:    https://lore.kernel.org/r/20250805142423.17710-1-stefano.manni%40gmail.com
patch subject: [PATCH] iio: adc: ad799x: add reference supply for ad7994
config: arc-randconfig-002-20250806 (https://download.01.org/0day-ci/archive/20250806/202508062313.Up1PAzZN-lkp@intel.com/config)
compiler: arc-linux-gcc (GCC) 11.5.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250806/202508062313.Up1PAzZN-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202508062313.Up1PAzZN-lkp@intel.com/

All errors (new ones prefixed by >>):

   drivers/iio/adc/ad799x.c: In function 'ad799x_probe':
>> drivers/iio/adc/ad799x.c:829:73: error: called object is not a function or function pointer
     829 |                 if ((st->id == ad7991) || (st->id == ad7995) || (st->id == ad7999)
         |                                                                 ~~~~~~~~^~~~~~~~~~


vim +829 drivers/iio/adc/ad799x.c

   777	
   778	static int ad799x_probe(struct i2c_client *client)
   779	{
   780		const struct i2c_device_id *id = i2c_client_get_device_id(client);
   781		int ret;
   782		int extra_config = 0;
   783		struct ad799x_state *st;
   784		struct iio_dev *indio_dev;
   785		const struct ad799x_chip_info *chip_info =
   786			&ad799x_chip_info_tbl[id->driver_data];
   787	
   788		indio_dev = devm_iio_device_alloc(&client->dev, sizeof(*st));
   789		if (indio_dev == NULL)
   790			return -ENOMEM;
   791	
   792		st = iio_priv(indio_dev);
   793		/* this is only used for device removal purposes */
   794		i2c_set_clientdata(client, indio_dev);
   795	
   796		st->id = id->driver_data;
   797		if (client->irq > 0 && chip_info->irq_config.info)
   798			st->chip_config = &chip_info->irq_config;
   799		else
   800			st->chip_config = &chip_info->noirq_config;
   801	
   802		/* TODO: Add pdata options for filtering and bit delay */
   803	
   804		st->reg = devm_regulator_get(&client->dev, "vcc");
   805		if (IS_ERR(st->reg))
   806			return PTR_ERR(st->reg);
   807		ret = regulator_enable(st->reg);
   808		if (ret)
   809			return ret;
   810	
   811		/* check if an external reference is supplied */
   812		st->vref = devm_regulator_get_optional(&client->dev, "vref");
   813	
   814		if (IS_ERR(st->vref)) {
   815			if (PTR_ERR(st->vref) == -ENODEV) {
   816				st->vref = NULL;
   817				dev_info(&client->dev, "Using VCC reference voltage\n");
   818			} else {
   819				ret = PTR_ERR(st->vref);
   820				goto error_disable_reg;
   821			}
   822		}
   823	
   824		if (st->vref) {
   825			/*
   826			 * Use external reference voltage if supported by hardware.
   827			 * This is optional if voltage / regulator present, use VCC otherwise.
   828			 */
 > 829			if ((st->id == ad7991) || (st->id == ad7995) || (st->id == ad7999)
   830				(st->id == ad7994)) {
   831				dev_info(&client->dev, "Using external reference voltage\n");
   832				extra_config |= AD7991_REF_SEL;
   833				ret = regulator_enable(st->vref);
   834				if (ret)
   835					goto error_disable_reg;
   836			} else {
   837				st->vref = NULL;
   838				dev_warn(&client->dev, "Supplied reference not supported\n");
   839			}
   840		}
   841	
   842		st->client = client;
   843	
   844		indio_dev->name = id->name;
   845		indio_dev->info = st->chip_config->info;
   846	
   847		indio_dev->modes = INDIO_DIRECT_MODE;
   848		indio_dev->channels = st->chip_config->channel;
   849		indio_dev->num_channels = chip_info->num_channels;
   850	
   851		ret = ad799x_update_config(st, st->chip_config->default_config | extra_config);
   852		if (ret)
   853			goto error_disable_vref;
   854	
   855		ret = iio_triggered_buffer_setup(indio_dev, NULL,
   856			&ad799x_trigger_handler, NULL);
   857		if (ret)
   858			goto error_disable_vref;
   859	
   860		if (client->irq > 0) {
   861			ret = devm_request_threaded_irq(&client->dev,
   862							client->irq,
   863							NULL,
   864							ad799x_event_handler,
   865							IRQF_TRIGGER_FALLING |
   866							IRQF_ONESHOT,
   867							client->name,
   868							indio_dev);
   869			if (ret)
   870				goto error_cleanup_ring;
   871		}
   872	
   873		mutex_init(&st->lock);
   874	
   875		ret = iio_device_register(indio_dev);
   876		if (ret)
   877			goto error_cleanup_ring;
   878	
   879		return 0;
   880	
   881	error_cleanup_ring:
   882		iio_triggered_buffer_cleanup(indio_dev);
   883	error_disable_vref:
   884		if (st->vref)
   885			regulator_disable(st->vref);
   886	error_disable_reg:
   887		regulator_disable(st->reg);
   888	
   889		return ret;
   890	}
   891	

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

      parent reply	other threads:[~2025-08-06 15:23 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-08-05 14:24 [PATCH] iio: adc: ad799x: add reference supply for ad7994 Stefano Manni
2025-08-05 13:13 ` Andy Shevchenko
2025-08-05 16:13   ` Nuno Sá
2025-08-06  9:03   ` Stefano Manni
2025-08-06 15:22 ` kernel test robot [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202508062313.Up1PAzZN-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=Michael.Hennerich@analog.com \
    --cc=andy@kernel.org \
    --cc=dlechner@baylibre.com \
    --cc=jic23@kernel.org \
    --cc=lars@metafoo.de \
    --cc=linux-iio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=nuno.sa@analog.com \
    --cc=oe-kbuild-all@lists.linux.dev \
    --cc=stefano.manni@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.