diff --git a/sound/soc/codecs/rk3308_codec.c b/sound/soc/codecs/rk3308_codec.c index 07e53017e9ab..c17045911faf 100644 --- a/sound/soc/codecs/rk3308_codec.c +++ b/sound/soc/codecs/rk3308_codec.c @@ -4834,6 +4834,10 @@ static int rk3308_platform_probe(struct platform_device *pdev) return PTR_ERR(rk3308->grf); } + ret = rk3308_codec_get_version(rk3308); + if (ret < 0) + return dev_err_probe(&pdev->dev, ret, "Failed to get acodec version\n"); + ret = rk3308_codec_sysfs_init(pdev, rk3308); if (ret < 0) { dev_err(&pdev->dev, "Sysfs init failed\n"); @@ -4994,13 +4998,6 @@ static int rk3308_platform_probe(struct platform_device *pdev) return ret; } - ret = rk3308_codec_get_version(rk3308); - if (ret < 0) { - dev_err(&pdev->dev, "Failed to get acodec version: %d\n", - ret); - return ret; - } - res = platform_get_resource(pdev, IORESOURCE_MEM, 0); base = devm_ioremap_resource(&pdev->dev, res); if (IS_ERR(base)) {