[linux-next:master 8490/9778] sound/soc/sdca/sdca_interrupts.c:460:56: error: 'sdca_fdl_free_state' undeclared; did you mean 'sdca_jack_free_state'?

kernel test robot <[email protected]> Wed, 29 Jul 2026 13:13:41 +0800
Newsgroups dev.linux.lists.oe-kbuild-all
Message-ID <[email protected]>
tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   3652b49adac266a3d27cb41cdfdb7d8790fc3633
commit: 0880082c27b6251cc3fea307dffa6899ad163e8b [8490/9778] ASoC: SDCA: Remove devm from primary IRQ cleanup
config: i386-randconfig-016-20260729 (https://download.01.org/0day-ci/archive/20260729/[email protected]/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260729/[email protected]/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 <[email protected]>
| Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/

All errors (new ones prefixed by >>):

   sound/soc/sdca/sdca_interrupts.c: In function 'sdca_irq_populate_early':
>> sound/soc/sdca/sdca_interrupts.c:460:56: error: 'sdca_fdl_free_state' undeclared (first use in this function); did you mean 'sdca_jack_free_state'?
     460 |                                 interrupt->free_priv = sdca_fdl_free_state;
         |                                                        ^~~~~~~~~~~~~~~~~~~
         |                                                        sdca_jack_free_state
   sound/soc/sdca/sdca_interrupts.c:460:56: note: each undeclared identifier is reported only once for each function it appears in
   sound/soc/sdca/sdca_interrupts.c: In function 'sdca_irq_populate':
   sound/soc/sdca/sdca_interrupts.c:543:56: error: 'sdca_fdl_free_state' undeclared (first use in this function); did you mean 'sdca_jack_free_state'?
     543 |                                 interrupt->free_priv = sdca_fdl_free_state;
         |                                                        ^~~~~~~~~~~~~~~~~~~
         |                                                        sdca_jack_free_state


vim +460 sound/soc/sdca/sdca_interrupts.c

   414	
   415	/**
   416	 * sdca_irq_populate_early - process pre-audio card IRQ registrations
   417	 * @dev: Device pointer for SDCA Function.
   418	 * @regmap: Regmap pointer for the SDCA Function.
   419	 * @function: Pointer to the SDCA Function.
   420	 * @info: Pointer to the SDCA interrupt info for this device.
   421	 *
   422	 * This is intended to be used as part of the Function boot process. It
   423	 * can be called before the soundcard is registered (ie. doesn't depend
   424	 * on component) and will register the FDL interrupts.
   425	 *
   426	 * Return: Zero on success, and a negative error code on failure.
   427	 */
   428	int sdca_irq_populate_early(struct device *dev, struct regmap *regmap,
   429				    struct sdca_function_data *function,
   430				    struct sdca_interrupt_info *info)
   431	{
   432		int i, j;
   433	
   434		guard(mutex)(&info->irq_lock);
   435	
   436		for (i = 0; i < function->num_entities; i++) {
   437			struct sdca_entity *entity = &function->entities[i];
   438	
   439			for (j = 0; j < entity->num_controls; j++) {
   440				struct sdca_control *control = &entity->controls[j];
   441				int irq = control->interrupt_position;
   442				struct sdca_interrupt *interrupt;
   443				int ret;
   444	
   445				interrupt = get_interrupt_data(dev, irq, info);
   446				if (IS_ERR(interrupt))
   447					return PTR_ERR(interrupt);
   448				else if (!interrupt)
   449					continue;
   450	
   451				switch (SDCA_CTL_TYPE(entity->type, control->sel)) {
   452				case SDCA_CTL_TYPE_S(XU, FDL_CURRENTOWNER):
   453					ret = sdca_irq_data_populate(dev, regmap, NULL,
   454								     function, entity,
   455								     control, interrupt);
   456					if (ret)
   457						return ret;
   458	
   459					interrupt->early_request = true;
 > 460					interrupt->free_priv = sdca_fdl_free_state;
   461	
   462					ret = sdca_fdl_alloc_state(interrupt);
   463					if (ret)
   464						return ret;
   465	
   466					ret = sdca_irq_request_locked(dev, info, irq,
   467								      interrupt->name,
   468								      fdl_owner_handler,
   469								      interrupt);
   470					if (ret) {
   471						dev_err(dev, "failed to request irq %s: %d\n",
   472							interrupt->name, ret);
   473						return ret;
   474					}
   475					break;
   476				default:
   477					break;
   478				}
   479			}
   480		}
   481	
   482		return 0;
   483	}
   484	EXPORT_SYMBOL_NS_GPL(sdca_irq_populate_early, "SND_SOC_SDCA");
   485	

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