alsa-devel.alsa-project.org archive mirror
 help / color / mirror / Atom feed
* Re: [linux-next:master 3956/5128] sound/soc/sof/intel/hda-codec.c:132:35: error: use of undeclared identifier 'CODEC_PROBE_RETRIES'
       [not found] <202112031943.Twg19fWT-lkp@intel.com>
@ 2021-12-03 14:00 ` Pierre-Louis Bossart
  2021-12-03 14:07   ` Kai Vehmanen
  0 siblings, 1 reply; 4+ messages in thread
From: Pierre-Louis Bossart @ 2021-12-03 14:00 UTC (permalink / raw)
  To: kernel test robot, Hui Wang
  Cc: moderated list:SOUND - SOC LAYER / DYNAMIC AUDIO POWER MANAGEM...,
	kbuild-all, Kai Vehmanen, llvm, Linux Memory Management List,
	Mark Brown, Bard Liao

[adding alsa-devel]

On 12/3/21 5:25 AM, kernel test robot wrote:
> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
> head:   7afeac307a9561e3a93682c1e7eb22f918aa1187
> commit: 046aede2f847676f93a2ea4f48b77909c51dba40 [3956/5128] ASoC: SOF: Intel: Retry codec probing if it fails
> config: i386-randconfig-r033-20211202 (https://download.01.org/0day-ci/archive/20211203/202112031943.Twg19fWT-lkp@intel.com/config)
> compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 4b553297ef3ee4dc2119d5429adf3072e90fac38)
> reproduce (this is a W=1 build):
>         wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>         chmod +x ~/bin/make.cross
>         # https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=046aede2f847676f93a2ea4f48b77909c51dba40
>         git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
>         git fetch --no-tags linux-next master
>         git checkout 046aede2f847676f93a2ea4f48b77909c51dba40
>         # save the config file to linux build tree
>         mkdir build_dir
>         COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 SHELL=/bin/bash
> 
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@intel.com>
> 
> All errors (new ones prefixed by >>):
> 
>>> sound/soc/sof/intel/hda-codec.c:132:35: error: use of undeclared identifier 'CODEC_PROBE_RETRIES'
>            } while (resp == -1 && retry++ < CODEC_PROBE_RETRIES);
>                                             ^
>    1 error generated.
> 
> 
> vim +/CODEC_PROBE_RETRIES +132 sound/soc/sof/intel/hda-codec.c
> 
>    110	
>    111	/* probe individual codec */
>    112	static int hda_codec_probe(struct snd_sof_dev *sdev, int address,
>    113				   bool hda_codec_use_common_hdmi)
>    114	{
>    115	#if IS_ENABLED(CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC)
>    116		struct hdac_hda_priv *hda_priv;
>    117		struct hda_codec *codec;
>    118		int type = HDA_DEV_LEGACY;
>    119	#endif
>    120		struct hda_bus *hbus = sof_to_hbus(sdev);
>    121		struct hdac_device *hdev;
>    122		u32 hda_cmd = (address << 28) | (AC_NODE_ROOT << 20) |
>    123			(AC_VERB_PARAMETERS << 8) | AC_PAR_VENDOR_ID;
>    124		u32 resp = -1;
>    125		int ret, retry = 0;
>    126	
>    127		do {
>    128			mutex_lock(&hbus->core.cmd_mutex);
>    129			snd_hdac_bus_send_cmd(&hbus->core, hda_cmd);
>    130			snd_hdac_bus_get_response(&hbus->core, address, &resp);
>    131			mutex_unlock(&hbus->core.cmd_mutex);
>  > 132		} while (resp == -1 && retry++ < CODEC_PROBE_RETRIES);

Indeed, something's not right here.

CODEC_PROBE_RETRIES is defined conditionally

#if IS_ENABLED(CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC)
#define IDISP_VID_INTEL	0x80860000
#define CODEC_PROBE_RETRIES 3

but it's used unconditionally.

We could define this constant unconditionally as a quick fix, but this
compilation problem might expose a larger problem.

Kai, I wonder if this is code from lines 120 to 139 that we didn't
update when we moved to support HDMI with the generic HDaudio parts? I
don't see why we could even try to send a command on the bus is there's
no audio codec support?

hda_codec_use_common_hdmi should be the default assumption now, I don't
think we support the old solution, do we?

>    133	
>    134		if (resp == -1)
>    135			return -EIO;
>    136		dev_dbg(sdev->dev, "HDA codec #%d probed OK: response: %x\n",
>    137			address, resp);
>    138	
> 
> ---
> 0-DAY CI Kernel Test Service, Intel Corporation
> https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
> 

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [linux-next:master 3956/5128] sound/soc/sof/intel/hda-codec.c:132:35: error: use of undeclared identifier 'CODEC_PROBE_RETRIES'
  2021-12-03 14:00 ` [linux-next:master 3956/5128] sound/soc/sof/intel/hda-codec.c:132:35: error: use of undeclared identifier 'CODEC_PROBE_RETRIES' Pierre-Louis Bossart
@ 2021-12-03 14:07   ` Kai Vehmanen
  2021-12-03 14:48     ` Pierre-Louis Bossart
  2021-12-03 15:01     ` Hui Wang
  0 siblings, 2 replies; 4+ messages in thread
From: Kai Vehmanen @ 2021-12-03 14:07 UTC (permalink / raw)
  To: Pierre-Louis Bossart
  Cc: moderated list:SOUND - SOC LAYER / DYNAMIC AUDIO POWER MANAGEM...,
	kbuild-all, kernel test robot, Kai Vehmanen, llvm, Hui Wang,
	Linux Memory Management List, Mark Brown, Bard Liao

Hey,


On Fri, 3 Dec 2021, Pierre-Louis Bossart wrote:

> >    127		do {
> >    128			mutex_lock(&hbus->core.cmd_mutex);
> >    129			snd_hdac_bus_send_cmd(&hbus->core, hda_cmd);
> >    130			snd_hdac_bus_get_response(&hbus->core, address, &resp);
> >    131			mutex_unlock(&hbus->core.cmd_mutex);
> >  > 132		} while (resp == -1 && retry++ < CODEC_PROBE_RETRIES);
> 
> Indeed, something's not right here.
> 
> CODEC_PROBE_RETRIES is defined conditionally
> 
> #if IS_ENABLED(CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC)
> #define IDISP_VID_INTEL	0x80860000
> #define CODEC_PROBE_RETRIES 3
> 
> but it's used unconditionally.

yup, the definition needs to be moved out.

> We could define this constant unconditionally as a quick fix, but this
> compilation problem might expose a larger problem.
> 
> Kai, I wonder if this is code from lines 120 to 139 that we didn't
> update when we moved to support HDMI with the generic HDaudio parts? I
> don't see why we could even try to send a command on the bus is there's
> no audio codec support?
> 
> hda_codec_use_common_hdmi should be the default assumption now, I don't
> think we support the old solution, do we?

We do still support the hdac-hdmi as well, albeit only for select old
hardware to maintain backwards compatibility.

I'll send the quick fix.

Br, Kai

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [linux-next:master 3956/5128] sound/soc/sof/intel/hda-codec.c:132:35: error: use of undeclared identifier 'CODEC_PROBE_RETRIES'
  2021-12-03 14:07   ` Kai Vehmanen
@ 2021-12-03 14:48     ` Pierre-Louis Bossart
  2021-12-03 15:01     ` Hui Wang
  1 sibling, 0 replies; 4+ messages in thread
From: Pierre-Louis Bossart @ 2021-12-03 14:48 UTC (permalink / raw)
  To: Kai Vehmanen
  Cc: moderated list:SOUND - SOC LAYER / DYNAMIC AUDIO POWER MANAGEM...,
	kbuild-all, kernel test robot, llvm, Hui Wang,
	Linux Memory Management List, Mark Brown, Bard Liao



On 12/3/21 8:07 AM, Kai Vehmanen wrote:
> Hey,
> 
> 
> On Fri, 3 Dec 2021, Pierre-Louis Bossart wrote:
> 
>>>    127		do {
>>>    128			mutex_lock(&hbus->core.cmd_mutex);
>>>    129			snd_hdac_bus_send_cmd(&hbus->core, hda_cmd);
>>>    130			snd_hdac_bus_get_response(&hbus->core, address, &resp);
>>>    131			mutex_unlock(&hbus->core.cmd_mutex);
>>>  > 132		} while (resp == -1 && retry++ < CODEC_PROBE_RETRIES);
>>
>> Indeed, something's not right here.
>>
>> CODEC_PROBE_RETRIES is defined conditionally
>>
>> #if IS_ENABLED(CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC)
>> #define IDISP_VID_INTEL	0x80860000
>> #define CODEC_PROBE_RETRIES 3
>>
>> but it's used unconditionally.
> 
> yup, the definition needs to be moved out.
> 
>> We could define this constant unconditionally as a quick fix, but this
>> compilation problem might expose a larger problem.
>>
>> Kai, I wonder if this is code from lines 120 to 139 that we didn't
>> update when we moved to support HDMI with the generic HDaudio parts? I
>> don't see why we could even try to send a command on the bus is there's
>> no audio codec support?
>>
>> hda_codec_use_common_hdmi should be the default assumption now, I don't
>> think we support the old solution, do we?
> 
> We do still support the hdac-hdmi as well, albeit only for select old
> hardware to maintain backwards compatibility.

Would it be a major risk to drop this compatibility, possibly in steps
that can be reverted quickly? Maintaining this old HDMI-specific path
isn't really sustainable.

> I'll send the quick fix.

Thanks!

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [linux-next:master 3956/5128] sound/soc/sof/intel/hda-codec.c:132:35: error: use of undeclared identifier 'CODEC_PROBE_RETRIES'
  2021-12-03 14:07   ` Kai Vehmanen
  2021-12-03 14:48     ` Pierre-Louis Bossart
@ 2021-12-03 15:01     ` Hui Wang
  1 sibling, 0 replies; 4+ messages in thread
From: Hui Wang @ 2021-12-03 15:01 UTC (permalink / raw)
  To: Kai Vehmanen, Pierre-Louis Bossart
  Cc: moderated list:SOUND - SOC LAYER / DYNAMIC AUDIO POWER MANAGEM...,
	kbuild-all, kernel test robot, llvm,
	Linux Memory Management List, Mark Brown, Bard Liao

Oh, sorry to introduce this build failure. Thanks Kai to fix it.

Thanks.

On 12/3/21 10:07 PM, Kai Vehmanen wrote:
> Hey,
>
>
> On Fri, 3 Dec 2021, Pierre-Louis Bossart wrote:
>
>>>     127		do {
>>>     128			mutex_lock(&hbus->core.cmd_mutex);
>>>     129			snd_hdac_bus_send_cmd(&hbus->core, hda_cmd);
>>>     130			snd_hdac_bus_get_response(&hbus->core, address, &resp);
>>>     131			mutex_unlock(&hbus->core.cmd_mutex);
>>>   > 132		} while (resp == -1 && retry++ < CODEC_PROBE_RETRIES);
>> Indeed, something's not right here.
>>
>> CODEC_PROBE_RETRIES is defined conditionally
>>
>> #if IS_ENABLED(CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC)
>> #define IDISP_VID_INTEL	0x80860000
>> #define CODEC_PROBE_RETRIES 3
>>
>> but it's used unconditionally.
> yup, the definition needs to be moved out.
>
>> We could define this constant unconditionally as a quick fix, but this
>> compilation problem might expose a larger problem.
>>
>> Kai, I wonder if this is code from lines 120 to 139 that we didn't
>> update when we moved to support HDMI with the generic HDaudio parts? I
>> don't see why we could even try to send a command on the bus is there's
>> no audio codec support?
>>
>> hda_codec_use_common_hdmi should be the default assumption now, I don't
>> think we support the old solution, do we?
> We do still support the hdac-hdmi as well, albeit only for select old
> hardware to maintain backwards compatibility.
>
> I'll send the quick fix.
>
> Br, Kai

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2021-12-03 15:02 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <202112031943.Twg19fWT-lkp@intel.com>
2021-12-03 14:00 ` [linux-next:master 3956/5128] sound/soc/sof/intel/hda-codec.c:132:35: error: use of undeclared identifier 'CODEC_PROBE_RETRIES' Pierre-Louis Bossart
2021-12-03 14:07   ` Kai Vehmanen
2021-12-03 14:48     ` Pierre-Louis Bossart
2021-12-03 15:01     ` Hui Wang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).