Przeglądaj źródła

ASoC: Make platform data optional for TLV320AIC3x

Now that we don't need the I2C address for the device the platform data
is redundant so allow it to be omitted.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Tested-by: Chaithrika U S <chaithrika@ti.com>
Mark Brown 15 lat temu
rodzic
commit
977d49e00d
1 zmienionych plików z 6 dodań i 7 usunięć
  1. 6 7
      sound/soc/codecs/tlv320aic3x.c

+ 6 - 7
sound/soc/codecs/tlv320aic3x.c

@@ -1385,15 +1385,14 @@ static int aic3x_probe(struct platform_device *pdev)
 	socdev->card->codec = codec;
 	setup = socdev->codec_data;
 
-	if (!setup) {
-		dev_err(&pdev->dev, "No setup data supplied\n");
-		return -EINVAL;
+	if (setup) {
+		/* setup GPIO functions */
+		aic3x_write(codec, AIC3X_GPIO1_REG,
+			    (setup->gpio_func[0] & 0xf) << 4);
+		aic3x_write(codec, AIC3X_GPIO2_REG,
+			    (setup->gpio_func[1] & 0xf) << 4);
 	}
 
-	/* setup GPIO functions */
-	aic3x_write(codec, AIC3X_GPIO1_REG, (setup->gpio_func[0] & 0xf) << 4);
-	aic3x_write(codec, AIC3X_GPIO2_REG, (setup->gpio_func[1] & 0xf) << 4);
-
 	/* register pcms */
 	ret = snd_soc_new_pcms(socdev, SNDRV_DEFAULT_IDX1, SNDRV_DEFAULT_STR1);
 	if (ret < 0) {