[linux-next:master 8530/12793] sound/soc/codecs/cs35l56-spi.c:28:undefined reference to `__devm_regmap_init_spi'

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

 



tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   6ba6c795dc73c22ce2c86006f17c4aa802db2a60
commit: b831b4dca48dbe0f1f7705b44460dd9ca7f2f940 [8530/12793] ASoC: intel: sof_sdw: Add support for cs42l43-cs35l56 sidecar amps
config: x86_64-randconfig-002-20231219 (https://download.01.org/0day-ci/archive/20240514/202405140758.o2HY4nYD-lkp@xxxxxxxxx/config)
compiler: gcc-13 (Ubuntu 13.2.0-4ubuntu3) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240514/202405140758.o2HY4nYD-lkp@xxxxxxxxx/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@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202405140758.o2HY4nYD-lkp@xxxxxxxxx/

All errors (new ones prefixed by >>):

   ld: vmlinux.o: in function `cs35l56_spi_probe':
>> sound/soc/codecs/cs35l56-spi.c:28:(.text+0x61ce83b): undefined reference to `__devm_regmap_init_spi'
   ld: vmlinux.o: in function `cs35l56_spi_driver_init':
>> sound/soc/codecs/cs35l56-spi.c:82:(.init.text+0x118893): undefined reference to `__spi_register_driver'

Kconfig warnings: (for reference only)
   WARNING: unmet direct dependencies detected for SND_SOC_CS35L56_SPI
   Depends on [n]: SOUND [=y] && SND [=y] && SND_SOC [=y] && SPI_MASTER [=n] && (SOUNDWIRE [=y] || !SOUNDWIRE [=y])
   Selected by [y]:
   - SND_SOC_INTEL_SOUNDWIRE_SOF_MACH [=y] && SOUND [=y] && SND [=y] && SND_SOC [=y] && SND_SOC_INTEL_MACH [=y] && SND_SOC_SOF_INTEL_SOUNDWIRE [=y] && I2C [=y] && ACPI [=y] && (MFD_INTEL_LPSS [=y] || COMPILE_TEST [=n]) && (SND_SOC_INTEL_USER_FRIENDLY_LONG_NAMES [=y] || COMPILE_TEST [=n]) && SOUNDWIRE [=y]


vim +28 sound/soc/codecs/cs35l56-spi.c

e496112529006c Richard Fitzgerald 2023-03-20  16  
e496112529006c Richard Fitzgerald 2023-03-20  17  static int cs35l56_spi_probe(struct spi_device *spi)
e496112529006c Richard Fitzgerald 2023-03-20  18  {
e496112529006c Richard Fitzgerald 2023-03-20  19  	const struct regmap_config *regmap_config = &cs35l56_regmap_spi;
e496112529006c Richard Fitzgerald 2023-03-20  20  	struct cs35l56_private *cs35l56;
e496112529006c Richard Fitzgerald 2023-03-20  21  	int ret;
e496112529006c Richard Fitzgerald 2023-03-20  22  
e496112529006c Richard Fitzgerald 2023-03-20  23  	cs35l56 = devm_kzalloc(&spi->dev, sizeof(struct cs35l56_private), GFP_KERNEL);
e496112529006c Richard Fitzgerald 2023-03-20  24  	if (!cs35l56)
e496112529006c Richard Fitzgerald 2023-03-20  25  		return -ENOMEM;
e496112529006c Richard Fitzgerald 2023-03-20  26  
e496112529006c Richard Fitzgerald 2023-03-20  27  	spi_set_drvdata(spi, cs35l56);
898673b905b931 Simon Trimmer      2023-07-21 @28  	cs35l56->base.regmap = devm_regmap_init_spi(spi, regmap_config);
898673b905b931 Simon Trimmer      2023-07-21  29  	if (IS_ERR(cs35l56->base.regmap)) {
898673b905b931 Simon Trimmer      2023-07-21  30  		ret = PTR_ERR(cs35l56->base.regmap);
e496112529006c Richard Fitzgerald 2023-03-20  31  		return dev_err_probe(&spi->dev, ret, "Failed to allocate register map\n");
e496112529006c Richard Fitzgerald 2023-03-20  32  	}
e496112529006c Richard Fitzgerald 2023-03-20  33  
898673b905b931 Simon Trimmer      2023-07-21  34  	cs35l56->base.dev = &spi->dev;
634ed138d80b1c Richard Fitzgerald 2023-10-06  35  	cs35l56->base.can_hibernate = true;
e496112529006c Richard Fitzgerald 2023-03-20  36  
e496112529006c Richard Fitzgerald 2023-03-20  37  	ret = cs35l56_common_probe(cs35l56);
e496112529006c Richard Fitzgerald 2023-03-20  38  	if (ret != 0)
e496112529006c Richard Fitzgerald 2023-03-20  39  		return ret;
e496112529006c Richard Fitzgerald 2023-03-20  40  
e496112529006c Richard Fitzgerald 2023-03-20  41  	ret = cs35l56_init(cs35l56);
e496112529006c Richard Fitzgerald 2023-03-20  42  	if (ret == 0)
898673b905b931 Simon Trimmer      2023-07-21  43  		ret = cs35l56_irq_request(&cs35l56->base, spi->irq);
e496112529006c Richard Fitzgerald 2023-03-20  44  	if (ret < 0)
e496112529006c Richard Fitzgerald 2023-03-20  45  		cs35l56_remove(cs35l56);
e496112529006c Richard Fitzgerald 2023-03-20  46  
e496112529006c Richard Fitzgerald 2023-03-20  47  	return ret;
e496112529006c Richard Fitzgerald 2023-03-20  48  }
e496112529006c Richard Fitzgerald 2023-03-20  49  
e496112529006c Richard Fitzgerald 2023-03-20  50  static void cs35l56_spi_remove(struct spi_device *spi)
e496112529006c Richard Fitzgerald 2023-03-20  51  {
e496112529006c Richard Fitzgerald 2023-03-20  52  	struct cs35l56_private *cs35l56 = spi_get_drvdata(spi);
e496112529006c Richard Fitzgerald 2023-03-20  53  
e496112529006c Richard Fitzgerald 2023-03-20  54  	cs35l56_remove(cs35l56);
e496112529006c Richard Fitzgerald 2023-03-20  55  }
e496112529006c Richard Fitzgerald 2023-03-20  56  
e496112529006c Richard Fitzgerald 2023-03-20  57  static const struct spi_device_id cs35l56_id_spi[] = {
e496112529006c Richard Fitzgerald 2023-03-20  58  	{ "cs35l56", 0 },
e496112529006c Richard Fitzgerald 2023-03-20  59  	{}
e496112529006c Richard Fitzgerald 2023-03-20  60  };
e496112529006c Richard Fitzgerald 2023-03-20  61  MODULE_DEVICE_TABLE(spi, cs35l56_id_spi);
e496112529006c Richard Fitzgerald 2023-03-20  62  
e8500a70270334 Simon Trimmer      2023-08-17  63  #ifdef CONFIG_ACPI
e8500a70270334 Simon Trimmer      2023-08-17  64  static const struct acpi_device_id cs35l56_asoc_acpi_match[] = {
e8500a70270334 Simon Trimmer      2023-08-17  65  	{ "CSC355C", 0 },
e8500a70270334 Simon Trimmer      2023-08-17  66  	{},
e8500a70270334 Simon Trimmer      2023-08-17  67  };
e8500a70270334 Simon Trimmer      2023-08-17  68  MODULE_DEVICE_TABLE(acpi, cs35l56_asoc_acpi_match);
e8500a70270334 Simon Trimmer      2023-08-17  69  #endif
e8500a70270334 Simon Trimmer      2023-08-17  70  
e496112529006c Richard Fitzgerald 2023-03-20  71  static struct spi_driver cs35l56_spi_driver = {
e496112529006c Richard Fitzgerald 2023-03-20  72  	.driver = {
e496112529006c Richard Fitzgerald 2023-03-20  73  		.name		= "cs35l56",
3d3a8667954104 Richard Fitzgerald 2023-09-14  74  		.pm = pm_ptr(&cs35l56_pm_ops_i2c_spi),
e8500a70270334 Simon Trimmer      2023-08-17  75  		.acpi_match_table = ACPI_PTR(cs35l56_asoc_acpi_match),
e496112529006c Richard Fitzgerald 2023-03-20  76  	},
e496112529006c Richard Fitzgerald 2023-03-20  77  	.id_table	= cs35l56_id_spi,
e496112529006c Richard Fitzgerald 2023-03-20  78  	.probe		= cs35l56_spi_probe,
e496112529006c Richard Fitzgerald 2023-03-20  79  	.remove		= cs35l56_spi_remove,
e496112529006c Richard Fitzgerald 2023-03-20  80  };
e496112529006c Richard Fitzgerald 2023-03-20  81  
e496112529006c Richard Fitzgerald 2023-03-20 @82  module_spi_driver(cs35l56_spi_driver);
e496112529006c Richard Fitzgerald 2023-03-20  83  

:::::: The code at line 28 was first introduced by commit
:::::: 898673b905b9318489430663083f629bc38c7461 ASoC: cs35l56: Move shared data into a common data structure

:::::: TO: Simon Trimmer <simont@xxxxxxxxxxxxxxxxxxxxx>
:::::: CC: Mark Brown <broonie@xxxxxxxxxx>

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




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux