Re: [PATCH v7 2/7] ALSA: Add definitions for the bits in IEC958 subframe

Simona Vetter
2025-10-21T08:03:41Z

On Tue, Sep 23, 2025 at 01:29:56PM +0800, Shengjiu Wang wrote:
> The IEC958 subframe format SNDRV_PCM_FMTBIT_IEC958_SUBFRAME_LE are used
> in HDMI and DisplayPort to describe the audio stream, but hardware device
> may need to reorder the IEC958 bits for internal transmission, so need
> these standard bits definitions for IEC958 subframe format.
>
> Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
> Reviewed-by: Takashi Iwai <tiwai@suse.de>
> Tested-by: Alexander Stein <alexander.stein@ew.tq-group.com>

Would be good to get a formal ack from alsa maintainers before merging
through drm, just to be sure.

Thanks, Sima

> ---
> include/sound/asoundef.h | 9 +++++++++
> 1 file changed, 9 insertions(+)
>
> diff --git a/include/sound/asoundef.h b/include/sound/asoundef.h
> index 09b2c3dffb30..c4a929d4fd51 100644
> --- a/include/sound/asoundef.h
> +++ b/include/sound/asoundef.h
> @@ -12,6 +12,15 @@
> * Digital audio interface *
> * *
> ****************************************************************************/
> +/* IEC958 subframe format */
> +#define IEC958_SUBFRAME_PREAMBLE_MASK (0xfU)
> +#define IEC958_SUBFRAME_AUXILIARY_MASK (0xfU << 4)
> +#define IEC958_SUBFRAME_SAMPLE_24_MASK (0xffffffU << 4)
> +#define IEC958_SUBFRAME_SAMPLE_20_MASK (0xfffffU << 8)
> +#define IEC958_SUBFRAME_VALIDITY (0x1U << 28)
> +#define IEC958_SUBFRAME_USER_DATA (0x1U << 29)
> +#define IEC958_SUBFRAME_CHANNEL_STATUS (0x1U << 30)
> +#define IEC958_SUBFRAME_PARITY (0x1U << 31)
>
> /* AES/IEC958 channel status bits */
> #define IEC958_AES0_PROFESSIONAL (1<<0) /* 0 = consumer, 1 = professional */
> --
> 2.34.1
>

--
Simona Vetter
Software Engineer