[PATCH] ASoC: cs42xx8: Remove S32_LE in format list

Subsystems: cirrus logic audio codec drivers, sound, sound - soc layer / dynamic audio power management (asoc), the rest

STALE2717d

8 messages, 4 authors, 2019-03-02 · open the first message on its own page

[PATCH] ASoC: cs42xx8: Remove S32_LE in format list

From: S.j. Wang <hidden>
Date: 2019-02-28 05:58:56

cs42xx8 is a 24-bit A/D and 24-bit D/A device, so the S32_LE
should not be in the supported format list.

Signed-off-by: Shengjiu Wang <redacted>
---
 sound/soc/codecs/cs42xx8.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/sound/soc/codecs/cs42xx8.c b/sound/soc/codecs/cs42xx8.c
index ebb9e0cf8364..271972337d23 100644
--- a/sound/soc/codecs/cs42xx8.c
+++ b/sound/soc/codecs/cs42xx8.c
@@ -32,8 +32,7 @@
 
 #define CS42XX8_FORMATS	(SNDRV_PCM_FMTBIT_S16_LE | \
 			 SNDRV_PCM_FMTBIT_S20_3LE | \
-			 SNDRV_PCM_FMTBIT_S24_LE | \
-			 SNDRV_PCM_FMTBIT_S32_LE)
+			 SNDRV_PCM_FMTBIT_S24_LE)
 
 /* codec private data */
 struct cs42xx8_priv {
-- 
1.9.1

Re: [PATCH] ASoC: cs42xx8: Remove S32_LE in format list

From: Timur Tabi <timur@kernel.org>
Date: 2019-02-28 14:45:58

On 2/27/19 11:56 PM, S.j. Wang wrote:
cs42xx8 is a 24-bit A/D and 24-bit D/A device, so the S32_LE
should not be in the supported format list.

Signed-off-by: Shengjiu Wang<redacted>
Is the device capable of accepting 32-bit samples, even if it downgrades 
it to 24-bit internally?  If so, then maybe SNDRV_PCM_FMTBIT_S32_LE 
should stay.

RE: [PATCH] ASoC: cs42xx8: Remove S32_LE in format list

From: S.j. Wang <hidden>
Date: 2019-03-01 03:47:04

Hi
quoted
cs42xx8 is a 24-bit A/D and 24-bit D/A device, so the S32_LE should
not be in the supported format list.

Signed-off-by: Shengjiu Wang<redacted>
Is the device capable of accepting 32-bit samples, even if it downgrades it to
24-bit internally?  If so, then maybe SNDRV_PCM_FMTBIT_S32_LE should
stay.
Yes,  the S32_LE can be accepted by device, it seems like that the device only
Use the upper 24bit, so the S32_LE result is same as S24_LE,  do you think the
S32_LE should be remained?

Best regards
Wang shengjiu

Re: [PATCH] ASoC: cs42xx8: Remove S32_LE in format list

From: Nicolin Chen <nicoleotsuka@gmail.com>
Date: 2019-03-01 04:52:25

Hi Shengjiu,

On Thu, Feb 28, 2019 at 05:56:31AM +0000, S.j. Wang wrote:
cs42xx8 is a 24-bit A/D and 24-bit D/A device, so the S32_LE
should not be in the supported format list.

Signed-off-by: Shengjiu Wang <redacted>
---
 sound/soc/codecs/cs42xx8.c | 3 +--
This is for cs42xx8 codec driver, but its maintainers aren't
seemly in To/Cc list. Please run ./scripts/get_maintainer.pl
for it and resend.

Re: [alsa-devel] [PATCH] ASoC: cs42xx8: Remove S32_LE in format list

From: Matt Flax <hidden>
Date: 2019-03-01 06:14:53

It would be a mistake to remove S32_LE from the format list.

If you removed that, then we wouldn't be able to do 32 bit native 
playback - it would force users to go through an ALSA plugin.

If you look at the cs42448 data sheet for example, the I2S and TDM bus 
uses a 32 bit word size. For that reason, native S32_LE format is 
handled by the codec. While the codec only uses the 24 MSBs, the I2S bus 
is 32 bit.

Matt

On 1/3/19 3:50 pm, Nicolin Chen wrote:
Hi Shengjiu,

On Thu, Feb 28, 2019 at 05:56:31AM +0000, S.j. Wang wrote:
quoted
cs42xx8 is a 24-bit A/D and 24-bit D/A device, so the S32_LE
should not be in the supported format list.

Signed-off-by: Shengjiu Wang <redacted>
---
  sound/soc/codecs/cs42xx8.c | 3 +--
This is for cs42xx8 codec driver, but its maintainers aren't
seemly in To/Cc list. Please run ./scripts/get_maintainer.pl
for it and resend.
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
https://mailman.alsa-project.org/mailman/listinfo/alsa-devel

RE: [alsa-devel] [PATCH] ASoC: cs42xx8: Remove S32_LE in format list

From: S.j. Wang <hidden>
Date: 2019-03-01 06:33:55

It would be a mistake to remove S32_LE from the format list.

If you removed that, then we wouldn't be able to do 32 bit native playback
- it would force users to go through an ALSA plugin.

If you look at the cs42448 data sheet for example, the I2S and TDM bus
uses a 32 bit word size. For that reason, native S32_LE format is handled by
the codec. While the codec only uses the 24 MSBs, the I2S bus is 32 bit.
This case is covered by S24_LE I think.  The S32_LE means the data is 32bit and slot width
Is 32bit, this is not in data sheet.

Best regards
Wang shengjiu
Matt

On 1/3/19 3:50 pm, Nicolin Chen wrote:
quoted
Hi Shengjiu,

On Thu, Feb 28, 2019 at 05:56:31AM +0000, S.j. Wang wrote:
quoted
cs42xx8 is a 24-bit A/D and 24-bit D/A device, so the S32_LE should
not be in the supported format list.

Signed-off-by: Shengjiu Wang <redacted>
---
  sound/soc/codecs/cs42xx8.c | 3 +--
This is for cs42xx8 codec driver, but its maintainers aren't seemly in
To/Cc list. Please run ./scripts/get_maintainer.pl for it and resend.
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
https://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fma
i
quoted
lman.alsa-project.org%2Fmailman%2Flistinfo%2Falsa-
devel&amp;data=02%7C
quoted
01%7Cshengjiu.wang%40nxp.com%7Ce5686d72bd7843c5962508d69e0370a4
%7C686e
quoted
a1d3bc2b4c6fa92cd99c5c301635%7C0%7C1%7C636870134975623123&amp;
sdata=Rr
quoted
YwfC4Y3xssED%2FzRum%2FXABGJTHvRrYwnRNgUL7u2lU%3D&amp;reserved
=0

Re: [alsa-devel] [PATCH] ASoC: cs42xx8: Remove S32_LE in format list

From: Timur Tabi <timur@kernel.org>
Date: 2019-03-01 14:34:17

On 3/1/19 12:32 AM, S.j. Wang wrote:
This case is covered by S24_LE I think.  The S32_LE means the data is 32bit and slot width
Is 32bit, this is not in data sheet.
The problem is that if you have 32-bit samples in your audio file, and 
you want to play them, then software (e.g. alsalib) will need to convert 
the audio to 24-bit before sending it to hardware.  This is unnecessary 
because the hardware can "convert" the sample to 24-bit automatically by 
ignoring the lower 8 bits.

I think a lot of codecs do this already.

RE: [alsa-devel] [PATCH] ASoC: cs42xx8: Remove S32_LE in format list

From: S.j. Wang <hidden>
Date: 2019-03-02 05:44:35

Hi
On 3/1/19 12:32 AM, S.j. Wang wrote:
quoted
This case is covered by S24_LE I think.  The S32_LE means the data is
32bit and slot width Is 32bit, this is not in data sheet.
The problem is that if you have 32-bit samples in your audio file, and you
want to play them, then software (e.g. alsalib) will need to convert the
audio to 24-bit before sending it to hardware.  This is unnecessary because
the hardware can "convert" the sample to 24-bit automatically by ignoring
the lower 8 bits.

I think a lot of codecs do this already.
Ok. Thanks for reviewing, I will drop this patch.

Best regards
Wang shengjiu
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help