Re: sound/soc/intel/skylake/skl.c:874: undefined reference to `snd_soc_hdac_hda_get_ops'

From: Pierre-Louis Bossart
Date: Mon Nov 19 2018 - 09:41:18 EST


Th

On 11/19/18 7:26 AM, kbuild test robot wrote:
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 9ff01193a20d391e8dbce4403dd5ef87c7eaaca6
commit: 6bae5ea9498926440ffc883f3dbceb0adc65e492 ASoC: hdac_hda: add asoc extension for legacy HDA codec drivers
date: 3 months ago
config: i386-randconfig-x078-11191627 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
reproduce:
git checkout 6bae5ea9498926440ffc883f3dbceb0adc65e492
# save the attached .config to linux build tree
make ARCH=i386

All errors (new ones prefixed by >>):

sound/soc/intel/skylake/skl.o: In function `skl_create':
sound/soc/intel/skylake/skl.c:874: undefined reference to `snd_soc_hdac_hda_get_ops'

the patches I submitted yesterday as RFC to alsa-devel fix this issue, HDAC_HDA is selected directly by the SKYLAKE driver. will do a bit more validation and resubmit as regular patch.


vim +874 sound/soc/intel/skylake/skl.c

844
845 /*
846 * constructor
847 */
848 static int skl_create(struct pci_dev *pci,
849 const struct hdac_io_ops *io_ops,
850 struct skl **rskl)
851 {
852 struct hdac_ext_bus_ops *ext_ops = NULL;
853 struct skl *skl;
854 struct hdac_bus *bus;
855 struct hda_bus *hbus;
856 int err;
857
858 *rskl = NULL;
859
860 err = pci_enable_device(pci);
861 if (err < 0)
862 return err;
863
864 skl = devm_kzalloc(&pci->dev, sizeof(*skl), GFP_KERNEL);
865 if (!skl) {
866 pci_disable_device(pci);
867 return -ENOMEM;
868 }
869
870 hbus = skl_to_hbus(skl);
871 bus = skl_to_bus(skl);
872
873 #if IS_ENABLED(CONFIG_SND_SOC_HDAC_HDA)
> 874 ext_ops = snd_soc_hdac_hda_get_ops();
875 #endif
876 snd_hdac_ext_bus_init(bus, &pci->dev, &bus_core_ops, io_ops, ext_ops);
877 bus->use_posbuf = 1;
878 skl->pci = pci;
879 INIT_WORK(&skl->probe_work, skl_probe_work);
880 bus->bdl_pos_adj = 0;
881
882 mutex_init(&hbus->prepare_mutex);
883 hbus->pci = pci;
884 hbus->mixer_assigned = -1;
885 hbus->modelname = "sklbus";
886
887 *rskl = skl;
888
889 return 0;
890 }
891

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation