* [PATCH] ASoC: Intel: bxt: Use refcap device for mono recording @ 2018-08-01 17:03 Yong Zhi 2018-08-01 22:51 ` Pierre-Louis Bossart 2018-08-02 23:21 ` [PATCH v2] " Yong Zhi 0 siblings, 2 replies; 6+ messages in thread From: Yong Zhi @ 2018-08-01 17:03 UTC (permalink / raw) To: broonie, pierre-louis.bossart Cc: harshapriya.n, naveen.m, alsa-devel, jenny.tc, Yong Zhi The refcap capture device supports mono recording only, this patch adds the channel constraints, also change stream_name to "Wake on Voice". Signed-off-by: Yong Zhi <yong.zhi@intel.com> --- sound/soc/intel/boards/bxt_da7219_max98357a.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/sound/soc/intel/boards/bxt_da7219_max98357a.c b/sound/soc/intel/boards/bxt_da7219_max98357a.c index be6e4b4..097a089 100644 --- a/sound/soc/intel/boards/bxt_da7219_max98357a.c +++ b/sound/soc/intel/boards/bxt_da7219_max98357a.c @@ -319,6 +319,15 @@ static const unsigned int rates_16000[] = { 16000, }; +static const unsigned int ch_mono[] = { + 1, +}; + +static const struct snd_pcm_hw_constraint_list constraints_refcap = { + .count = ARRAY_SIZE(ch_mono), + .list = ch_mono, +}; + static const struct snd_pcm_hw_constraint_list constraints_16000 = { .count = ARRAY_SIZE(rates_16000), .list = rates_16000, @@ -326,6 +335,11 @@ static const struct snd_pcm_hw_constraint_list constraints_16000 = { static int broxton_refcap_startup(struct snd_pcm_substream *substream) { + substream->runtime->hw.channels_max = 1; + snd_pcm_hw_constraint_list(substream->runtime, 0, + SNDRV_PCM_HW_PARAM_CHANNELS, + &constraints_refcap); + return snd_pcm_hw_constraint_list(substream->runtime, 0, SNDRV_PCM_HW_PARAM_RATE, &constraints_16000); @@ -372,7 +386,7 @@ static struct snd_soc_dai_link broxton_dais[] = { [BXT_DPCM_AUDIO_REF_CP] = { .name = "Bxt Audio Reference cap", - .stream_name = "Refcap", + .stream_name = "Wake on Voice", .cpu_dai_name = "Reference Pin", .codec_name = "snd-soc-dummy", .codec_dai_name = "snd-soc-dummy-dai", -- 2.7.4 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH] ASoC: Intel: bxt: Use refcap device for mono recording 2018-08-01 17:03 [PATCH] ASoC: Intel: bxt: Use refcap device for mono recording Yong Zhi @ 2018-08-01 22:51 ` Pierre-Louis Bossart 2018-08-01 23:18 ` Zhi, Yong 2018-08-02 23:21 ` [PATCH v2] " Yong Zhi 1 sibling, 1 reply; 6+ messages in thread From: Pierre-Louis Bossart @ 2018-08-01 22:51 UTC (permalink / raw) To: Yong Zhi, broonie Cc: harshapriya.n, naveen.m, alsa-devel, Vinod Koul, jenny.tc On 8/1/18 10:03 AM, Yong Zhi wrote: > The refcap capture device supports mono recording only, this patch > adds the channel constraints, also change stream_name to "Wake on Voice". the part on the channel constraints is legit, but I wonder if the renaming to "Wake-on-voice" is required or meaningful. IIRC the reference signal is just a downmixed/downsampled version whatever is being played to be used for echo cancellation, I don't see a link with Wake-on-voice? > > Signed-off-by: Yong Zhi <yong.zhi@intel.com> > --- > sound/soc/intel/boards/bxt_da7219_max98357a.c | 16 +++++++++++++++- > 1 file changed, 15 insertions(+), 1 deletion(-) > > diff --git a/sound/soc/intel/boards/bxt_da7219_max98357a.c b/sound/soc/intel/boards/bxt_da7219_max98357a.c > index be6e4b4..097a089 100644 > --- a/sound/soc/intel/boards/bxt_da7219_max98357a.c > +++ b/sound/soc/intel/boards/bxt_da7219_max98357a.c > @@ -319,6 +319,15 @@ static const unsigned int rates_16000[] = { > 16000, > }; > > +static const unsigned int ch_mono[] = { > + 1, > +}; > + > +static const struct snd_pcm_hw_constraint_list constraints_refcap = { > + .count = ARRAY_SIZE(ch_mono), > + .list = ch_mono, > +}; > + > static const struct snd_pcm_hw_constraint_list constraints_16000 = { > .count = ARRAY_SIZE(rates_16000), > .list = rates_16000, > @@ -326,6 +335,11 @@ static const struct snd_pcm_hw_constraint_list constraints_16000 = { > > static int broxton_refcap_startup(struct snd_pcm_substream *substream) > { > + substream->runtime->hw.channels_max = 1; > + snd_pcm_hw_constraint_list(substream->runtime, 0, > + SNDRV_PCM_HW_PARAM_CHANNELS, > + &constraints_refcap); > + > return snd_pcm_hw_constraint_list(substream->runtime, 0, > SNDRV_PCM_HW_PARAM_RATE, > &constraints_16000); > @@ -372,7 +386,7 @@ static struct snd_soc_dai_link broxton_dais[] = { > [BXT_DPCM_AUDIO_REF_CP] = > { > .name = "Bxt Audio Reference cap", > - .stream_name = "Refcap", > + .stream_name = "Wake on Voice", > .cpu_dai_name = "Reference Pin", > .codec_name = "snd-soc-dummy", > .codec_dai_name = "snd-soc-dummy-dai", > ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] ASoC: Intel: bxt: Use refcap device for mono recording 2018-08-01 22:51 ` Pierre-Louis Bossart @ 2018-08-01 23:18 ` Zhi, Yong 0 siblings, 0 replies; 6+ messages in thread From: Zhi, Yong @ 2018-08-01 23:18 UTC (permalink / raw) To: Pierre-Louis Bossart, broonie@kernel.org Cc: N, Harshapriya, M, Naveen, alsa-devel@alsa-project.org, Vinod Koul, Tc, Jenny Hi, Bossart, Thanks for the quick review. > -----Original Message----- > From: Pierre-Louis Bossart [mailto:pierre-louis.bossart@linux.intel.com] > Sent: Wednesday, August 1, 2018 3:52 PM > To: Zhi, Yong <yong.zhi@intel.com>; broonie@kernel.org > Cc: alsa-devel@alsa-project.org; N, Harshapriya <harshapriya.n@intel.com>; > M, Naveen <naveen.m@intel.com>; Tc, Jenny <jenny.tc@intel.com>; Vinod > Koul <vkoul@kernel.org> > Subject: Re: [alsa-devel] [PATCH] ASoC: Intel: bxt: Use refcap device for > mono recording > > On 8/1/18 10:03 AM, Yong Zhi wrote: > > The refcap capture device supports mono recording only, this patch > > adds the channel constraints, also change stream_name to "Wake on > Voice". > > the part on the channel constraints is legit, but I wonder if the renaming to > "Wake-on-voice" is required or meaningful. IIRC the reference signal is just a > downmixed/downsampled version whatever is being played to be used for > echo cancellation, I don't see a link with Wake-on-voice? > The cras audio server defined HOTWORD_DEV as "Wake on Voice", but we can also use UCM file to tell the server that the Refcap is the HOTWORD_DEV, so the renaming is not straightly required, I can remove it in v2. https://chromium.googlesource.com/chromiumos/third_party/adhd/+/master/cras/src/server/cras_alsa_io.c > > > > Signed-off-by: Yong Zhi <yong.zhi@intel.com> > > --- > > sound/soc/intel/boards/bxt_da7219_max98357a.c | 16 > +++++++++++++++- > > 1 file changed, 15 insertions(+), 1 deletion(-) > > > > diff --git a/sound/soc/intel/boards/bxt_da7219_max98357a.c > > b/sound/soc/intel/boards/bxt_da7219_max98357a.c > > index be6e4b4..097a089 100644 > > --- a/sound/soc/intel/boards/bxt_da7219_max98357a.c > > +++ b/sound/soc/intel/boards/bxt_da7219_max98357a.c > > @@ -319,6 +319,15 @@ static const unsigned int rates_16000[] = { > > 16000, > > }; > > > > +static const unsigned int ch_mono[] = { > > + 1, > > +}; > > + > > +static const struct snd_pcm_hw_constraint_list constraints_refcap = { > > + .count = ARRAY_SIZE(ch_mono), > > + .list = ch_mono, > > +}; > > + > > static const struct snd_pcm_hw_constraint_list constraints_16000 = { > > .count = ARRAY_SIZE(rates_16000), > > .list = rates_16000, > > @@ -326,6 +335,11 @@ static const struct snd_pcm_hw_constraint_list > > constraints_16000 = { > > > > static int broxton_refcap_startup(struct snd_pcm_substream > *substream) > > { > > + substream->runtime->hw.channels_max = 1; > > + snd_pcm_hw_constraint_list(substream->runtime, 0, > > + SNDRV_PCM_HW_PARAM_CHANNELS, > > + &constraints_refcap); > > + > > return snd_pcm_hw_constraint_list(substream->runtime, 0, > > SNDRV_PCM_HW_PARAM_RATE, > > &constraints_16000); > > @@ -372,7 +386,7 @@ static struct snd_soc_dai_link broxton_dais[] = { > > [BXT_DPCM_AUDIO_REF_CP] = > > { > > .name = "Bxt Audio Reference cap", > > - .stream_name = "Refcap", > > + .stream_name = "Wake on Voice", > > .cpu_dai_name = "Reference Pin", > > .codec_name = "snd-soc-dummy", > > .codec_dai_name = "snd-soc-dummy-dai", > > ^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH v2] ASoC: Intel: bxt: Use refcap device for mono recording 2018-08-01 17:03 [PATCH] ASoC: Intel: bxt: Use refcap device for mono recording Yong Zhi 2018-08-01 22:51 ` Pierre-Louis Bossart @ 2018-08-02 23:21 ` Yong Zhi 2018-08-03 5:08 ` Pierre-Louis Bossart 2018-08-03 9:51 ` Applied "ASoC: Intel: bxt: Use refcap device for mono recording" to the asoc tree Mark Brown 1 sibling, 2 replies; 6+ messages in thread From: Yong Zhi @ 2018-08-02 23:21 UTC (permalink / raw) To: broonie, pierre-louis.bossart Cc: alsa-devel, harshapriya.n, vkoul, naveen.m, jenny.tc, Yong Zhi The refcap capture device supports mono recording only, this patch adds the channel constraints. Signed-off-by: Yong Zhi <yong.zhi@intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> --- Changes since v1: - Remove renaming of "Refcap". - Add Reviewed-by tag. sound/soc/intel/boards/bxt_da7219_max98357a.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/sound/soc/intel/boards/bxt_da7219_max98357a.c b/sound/soc/intel/boards/bxt_da7219_max98357a.c index be6e4b40bf03..6f052fc8d1e2 100644 --- a/sound/soc/intel/boards/bxt_da7219_max98357a.c +++ b/sound/soc/intel/boards/bxt_da7219_max98357a.c @@ -324,8 +324,22 @@ static const struct snd_pcm_hw_constraint_list constraints_16000 = { .list = rates_16000, }; +static const unsigned int ch_mono[] = { + 1, +}; + +static const struct snd_pcm_hw_constraint_list constraints_refcap = { + .count = ARRAY_SIZE(ch_mono), + .list = ch_mono, +}; + static int broxton_refcap_startup(struct snd_pcm_substream *substream) { + substream->runtime->hw.channels_max = 1; + snd_pcm_hw_constraint_list(substream->runtime, 0, + SNDRV_PCM_HW_PARAM_CHANNELS, + &constraints_refcap); + return snd_pcm_hw_constraint_list(substream->runtime, 0, SNDRV_PCM_HW_PARAM_RATE, &constraints_16000); -- 2.7.4 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH v2] ASoC: Intel: bxt: Use refcap device for mono recording 2018-08-02 23:21 ` [PATCH v2] " Yong Zhi @ 2018-08-03 5:08 ` Pierre-Louis Bossart 2018-08-03 9:51 ` Applied "ASoC: Intel: bxt: Use refcap device for mono recording" to the asoc tree Mark Brown 1 sibling, 0 replies; 6+ messages in thread From: Pierre-Louis Bossart @ 2018-08-03 5:08 UTC (permalink / raw) To: Yong Zhi, broonie; +Cc: harshapriya.n, naveen.m, alsa-devel, vkoul, jenny.tc On 8/2/18 4:21 PM, Yong Zhi wrote: > The refcap capture device supports mono recording only, this patch > adds the channel constraints. > > Signed-off-by: Yong Zhi <yong.zhi@intel.com> > Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> > --- > Changes since v1: > - Remove renaming of "Refcap". > - Add Reviewed-by tag. LGTM, thanks. > > sound/soc/intel/boards/bxt_da7219_max98357a.c | 14 ++++++++++++++ > 1 file changed, 14 insertions(+) > > diff --git a/sound/soc/intel/boards/bxt_da7219_max98357a.c b/sound/soc/intel/boards/bxt_da7219_max98357a.c > index be6e4b40bf03..6f052fc8d1e2 100644 > --- a/sound/soc/intel/boards/bxt_da7219_max98357a.c > +++ b/sound/soc/intel/boards/bxt_da7219_max98357a.c > @@ -324,8 +324,22 @@ static const struct snd_pcm_hw_constraint_list constraints_16000 = { > .list = rates_16000, > }; > > +static const unsigned int ch_mono[] = { > + 1, > +}; > + > +static const struct snd_pcm_hw_constraint_list constraints_refcap = { > + .count = ARRAY_SIZE(ch_mono), > + .list = ch_mono, > +}; > + > static int broxton_refcap_startup(struct snd_pcm_substream *substream) > { > + substream->runtime->hw.channels_max = 1; > + snd_pcm_hw_constraint_list(substream->runtime, 0, > + SNDRV_PCM_HW_PARAM_CHANNELS, > + &constraints_refcap); > + > return snd_pcm_hw_constraint_list(substream->runtime, 0, > SNDRV_PCM_HW_PARAM_RATE, > &constraints_16000); > ^ permalink raw reply [flat|nested] 6+ messages in thread
* Applied "ASoC: Intel: bxt: Use refcap device for mono recording" to the asoc tree 2018-08-02 23:21 ` [PATCH v2] " Yong Zhi 2018-08-03 5:08 ` Pierre-Louis Bossart @ 2018-08-03 9:51 ` Mark Brown 1 sibling, 0 replies; 6+ messages in thread From: Mark Brown @ 2018-08-03 9:51 UTC (permalink / raw) To: Yong Zhi Cc: alsa-devel, harshapriya.n, pierre-louis.bossart, vkoul, broonie, naveen.m, jenny.tc The patch ASoC: Intel: bxt: Use refcap device for mono recording has been applied to the asoc tree at https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git All being well this means that it will be integrated into the linux-next tree (usually sometime in the next 24 hours) and sent to Linus during the next merge window (or sooner if it is a bug fix), however if problems are discovered then the patch may be dropped or reverted. You may get further e-mails resulting from automated or manual testing and review of the tree, please engage with people reporting problems and send followup patches addressing any issues that are reported if needed. If any updates are required or you are submitting further changes they should be sent as incremental updates against current git, existing patches will not be replaced. Please add any relevant lists and maintainers to the CCs when replying to this mail. Thanks, Mark >From 26a6dce8ef99b0199e7682d1c203cf7d0b5fd5b0 Mon Sep 17 00:00:00 2001 From: Yong Zhi <yong.zhi@intel.com> Date: Thu, 2 Aug 2018 18:21:31 -0500 Subject: [PATCH] ASoC: Intel: bxt: Use refcap device for mono recording The refcap capture device supports mono recording only, this patch adds the channel constraints. Signed-off-by: Yong Zhi <yong.zhi@intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Signed-off-by: Mark Brown <broonie@kernel.org> --- sound/soc/intel/boards/bxt_da7219_max98357a.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/sound/soc/intel/boards/bxt_da7219_max98357a.c b/sound/soc/intel/boards/bxt_da7219_max98357a.c index be6e4b40bf03..6f052fc8d1e2 100644 --- a/sound/soc/intel/boards/bxt_da7219_max98357a.c +++ b/sound/soc/intel/boards/bxt_da7219_max98357a.c @@ -324,8 +324,22 @@ static const struct snd_pcm_hw_constraint_list constraints_16000 = { .list = rates_16000, }; +static const unsigned int ch_mono[] = { + 1, +}; + +static const struct snd_pcm_hw_constraint_list constraints_refcap = { + .count = ARRAY_SIZE(ch_mono), + .list = ch_mono, +}; + static int broxton_refcap_startup(struct snd_pcm_substream *substream) { + substream->runtime->hw.channels_max = 1; + snd_pcm_hw_constraint_list(substream->runtime, 0, + SNDRV_PCM_HW_PARAM_CHANNELS, + &constraints_refcap); + return snd_pcm_hw_constraint_list(substream->runtime, 0, SNDRV_PCM_HW_PARAM_RATE, &constraints_16000); -- 2.18.0 ^ permalink raw reply related [flat|nested] 6+ messages in thread
end of thread, other threads:[~2018-08-03 9:52 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2018-08-01 17:03 [PATCH] ASoC: Intel: bxt: Use refcap device for mono recording Yong Zhi 2018-08-01 22:51 ` Pierre-Louis Bossart 2018-08-01 23:18 ` Zhi, Yong 2018-08-02 23:21 ` [PATCH v2] " Yong Zhi 2018-08-03 5:08 ` Pierre-Louis Bossart 2018-08-03 9:51 ` Applied "ASoC: Intel: bxt: Use refcap device for mono recording" to the asoc tree Mark Brown
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).