From mboxrd@z Thu Jan 1 00:00:00 1970 From: Takashi Iwai Subject: Re: [PATCH 06/15] ALSA: pcm: Add DRM helper to set constraint for format Date: Tue, 01 Dec 2015 13:55:03 +0100 Message-ID: References: <1448991749-8091-1-git-send-email-subhransu.s.prusty@intel.com> <1448992031-8271-1-git-send-email-subhransu.s.prusty@intel.com> <1448992031-8271-6-git-send-email-subhransu.s.prusty@intel.com> Mime-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mx2.suse.de (mx2.suse.de [195.135.220.15]) by alsa0.perex.cz (Postfix) with ESMTP id 4230C261AE4 for ; Tue, 1 Dec 2015 13:55:04 +0100 (CET) In-Reply-To: <1448992031-8271-6-git-send-email-subhransu.s.prusty@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: alsa-devel-bounces@alsa-project.org To: "Subhransu S. Prusty" Cc: patches.audio@intel.com, Vinod Koul , alsa-devel@alsa-project.org, broonie@kernel.org, lgirdwood@gmail.com List-Id: alsa-devel@alsa-project.org On Tue, 01 Dec 2015 18:47:02 +0100, Subhransu S. Prusty wrote: > > +static int eld_limit_formats(struct snd_pcm_runtime *runtime, void *eld) > +{ > + u64 formats = SNDRV_PCM_FMTBIT_S16_LE; > + int i; > + const u8 *sad, *eld_buf = eld; > + > + sad = drm_eld_sad(eld_buf); > + if (!sad) > + goto format_constraint; > + > + for (i = drm_eld_sad_count(eld_buf); i > 0; i--, sad += 3) { > + if (sad_format(sad) == 1) { /* AUDIO_CODING_TYPE_LPCM */ > + > + /* 20 bit */ > + if (sad_sample_bits_lpcm(sad) & 0x2) > + formats |= SNDRV_PCM_FMTBIT_S32_LE; > + > + /* 24 bit */ > + if (sad_sample_bits_lpcm(sad) & 0x4) > + formats |= SNDRV_PCM_FMTBIT_S24_LE; Does it work correctly with HD-audio...? Takashi