ASoC: imx-pcm-rpmsg: Fix warning of incorrect type in assignment
authorShengjiu Wang <shengjiu.wang@nxp.com>
Thu, 6 May 2021 02:30:40 +0000 (10:30 +0800)
committerMark Brown <broonie@kernel.org>
Mon, 10 May 2021 12:05:38 +0000 (13:05 +0100)
The format in rpmsg is defained as unsigned char, there is warning
when convert snd_pcm_format_t to it.

sound/soc/fsl/imx-pcm-rpmsg.c:164:43: sparse: warning: incorrect type in assignment (different base types)
sound/soc/fsl/imx-pcm-rpmsg.c:164:43: sparse:    expected unsigned char format
sound/soc/fsl/imx-pcm-rpmsg.c:164:43: sparse:    got restricted snd_pcm_format_t [usertype]
sound/soc/fsl/imx-pcm-rpmsg.c:167:43: sparse: warning: incorrect type in assignment (different base types)
sound/soc/fsl/imx-pcm-rpmsg.c:167:43: sparse:    expected unsigned char format
sound/soc/fsl/imx-pcm-rpmsg.c:167:43: sparse:    got restricted snd_pcm_format_t [usertype]

Refine the unused RPMSG_DSD_U16_LE and RPMSG_DSD_U32_LE for these
case to fix this sparse warning.

Fixes: 3c00eceb2a53 ("ASoC: imx-pcm-rpmsg: Add platform driver for audio base on rpmsg")
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Link: https://lore.kernel.org/r/1620268240-1005-1-git-send-email-shengjiu.wang@nxp.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/fsl/imx-pcm-rpmsg.c
sound/soc/fsl/imx-pcm-rpmsg.h

index 875c0d6..3f5913a 100644 (file)
@@ -161,10 +161,10 @@ static int imx_rpmsg_pcm_hw_params(struct snd_soc_component *component,
                msg->s_msg.param.format   = RPMSG_S24_LE;
                break;
        case SNDRV_PCM_FORMAT_DSD_U16_LE:
-               msg->s_msg.param.format   = SNDRV_PCM_FORMAT_DSD_U16_LE;
+               msg->s_msg.param.format   = RPMSG_DSD_U16_LE;
                break;
        case SNDRV_PCM_FORMAT_DSD_U32_LE:
-               msg->s_msg.param.format   = SNDRV_PCM_FORMAT_DSD_U32_LE;
+               msg->s_msg.param.format   = RPMSG_DSD_U32_LE;
                break;
        default:
                msg->s_msg.param.format   = RPMSG_S32_LE;
index 308d153..8286b55 100644 (file)
 #define        RPMSG_S16_LE            0x0
 #define        RPMSG_S24_LE            0x1
 #define        RPMSG_S32_LE            0x2
-#define        RPMSG_DSD_U16_LE        0x3
+#define        RPMSG_DSD_U16_LE        49  /* SNDRV_PCM_FORMAT_DSD_U16_LE */
 #define        RPMSG_DSD_U24_LE        0x4
-#define        RPMSG_DSD_U32_LE        0x5
+#define        RPMSG_DSD_U32_LE        50  /* SNDRV_PCM_FORMAT_DSD_U32_LE */
 
 #define        RPMSG_CH_LEFT           0x0
 #define        RPMSG_CH_RIGHT          0x1