ASoC: stm32: spdifrx: fix regmap status check
authorOlivier Moysan <olivier.moysan@st.com>
Wed, 18 Mar 2020 14:41:23 +0000 (15:41 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 2 May 2020 06:49:01 +0000 (08:49 +0200)
commit a168dae5ea14283e8992d5282237bb0d6a3e1c06 upstream.

Release resources when exiting on error.

Fixes: 1a5c0b28fc56 ("ASoC: stm32: spdifrx: manage identification registers")

Signed-off-by: Olivier Moysan <olivier.moysan@st.com>
Link: https://lore.kernel.org/r/20200318144125.9163-2-olivier.moysan@st.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
sound/soc/stm/stm32_spdifrx.c

index e53fb4b..9fc2a17 100644 (file)
@@ -995,6 +995,8 @@ static int stm32_spdifrx_probe(struct platform_device *pdev)
 
        if (idr == SPDIFRX_IPIDR_NUMBER) {
                ret = regmap_read(spdifrx->regmap, STM32_SPDIFRX_VERR, &ver);
+               if (ret)
+                       goto error;
 
                dev_dbg(&pdev->dev, "SPDIFRX version: %lu.%lu registered\n",
                        FIELD_GET(SPDIFRX_VERR_MAJ_MASK, ver),