[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1d9958ea-aaae-0e45-7009-f12e4a4ae325@linux.intel.com>
Date: Tue, 27 Apr 2021 11:07:42 -0500
From: Pierre-Louis Bossart <pierre-louis.bossart@...ux.intel.com>
To: kernel test robot <lkp@...el.com>
Cc: kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org,
Takashi Iwai <tiwai@...e.de>,
Kai Vehmanen <kai.vehmanen@...ux.intel.com>,
Guennadi Liakhovetski <guennadi.liakhovetski@...ux.intel.com>,
Bard Liao <bard.liao@...el.com>, Arnd Bergmann <arnd@...db.de>,
Mark Brown <broonie@...nel.org>,
Ranjani Sridharan <ranjani.sridharan@...ux.intel.com>
Subject: Re: sound/soc/sof/intel/byt.c:1057: undefined reference to
`sof_acpi_probe'
On 4/27/21 6:10 AM, kernel test robot wrote:
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head: 4a0225c3d208cfa6e4550f2210ffd9114a952a81
> commit: 8d4ba1be3d2257606e04aff412829d8972670750 ASoC: SOF: pci: split PCI into different drivers
> date: 8 weeks ago
> config: i386-randconfig-r024-20210426 (attached as .config)
> compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
> reproduce (this is a W=1 build):
> # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=8d4ba1be3d2257606e04aff412829d8972670750
> git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
> git fetch --no-tags linus master
> git checkout 8d4ba1be3d2257606e04aff412829d8972670750
> # save the attached .config to linux build tree
> make W=1 W=1 ARCH=i386
>
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@...el.com>
>
> All errors (new ones prefixed by >>):
>
> ld: sound/soc/sof/intel/byt.o: in function `sof_baytrail_probe':
>>> sound/soc/sof/intel/byt.c:1057: undefined reference to `sof_acpi_probe'
>>> ld: sound/soc/sof/intel/byt.o:(.data+0x44): undefined reference to `sof_acpi_remove'
>>> ld: sound/soc/sof/intel/byt.o:(.data+0x94): undefined reference to `sof_acpi_pm'
Ack, this is again the partition between Baytrail and Merrifield that's
problematic in the corner case where ACPI is compiled as module and PCI
as built-in. It's a bit academic since the PCI probe wouldn't work, but
still it's not well partitioned.
I've been wanting to change this for a while, and split the common atom
parts from the ACPI/PCI parts. I guess it's time to fix this for good.
> vim +1057 sound/soc/sof/intel/byt.c
>
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1032
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1033 static int sof_baytrail_probe(struct platform_device *pdev)
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1034 {
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1035 struct device *dev = &pdev->dev;
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1036 const struct sof_dev_desc *desc;
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1037 const struct acpi_device_id *id;
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1038 int ret;
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1039
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1040 id = acpi_match_device(dev->driver->acpi_match_table, dev);
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1041 if (!id)
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1042 return -ENODEV;
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1043
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1044 ret = snd_intel_acpi_dsp_driver_probe(dev, id->id);
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1045 if (ret != SND_INTEL_DSP_DRIVER_ANY && ret != SND_INTEL_DSP_DRIVER_SOF) {
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1046 dev_dbg(dev, "SOF ACPI driver not selected, aborting probe\n");
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1047 return -ENODEV;
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1048 }
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1049
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1050 desc = device_get_match_data(&pdev->dev);
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1051 if (!desc)
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1052 return -ENODEV;
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1053
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1054 if (desc == &sof_acpi_baytrail_desc && soc_intel_is_byt_cr(pdev))
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1055 desc = &sof_acpi_baytrailcr_desc;
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1056
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 @1057 return sof_acpi_probe(pdev, desc);
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1058 }
> 8a49cd11e68ed0 Arnd Bergmann 2021-03-01 1059
>
> :::::: The code at line 1057 was first introduced by commit
> :::::: 8a49cd11e68ed0e6a687de04d25c06553bf96b0c ASoC: SOF: ACPI: avoid reverse module dependency
>
> :::::: TO: Arnd Bergmann <arnd@...db.de>
> :::::: CC: Takashi Iwai <tiwai@...e.de>
>
> ---
> 0-DAY CI Kernel Test Service, Intel Corporation
> https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
>
Powered by blists - more mailing lists