can you try this:
diff --git a/sound/soc/codecs/tpa6130a2.c b/sound/soc/codecs/tpa6130a2.c
index 11d85c5c787a..7f5881bff5d9 100644
--- a/sound/soc/codecs/tpa6130a2.c
+++ b/sound/soc/codecs/tpa6130a2.c
@@ -386,6 +386,8 @@ static int tpa6130a2_probe(struct i2c_client *client,
data->power_gpio = pdata->power_gpio;
} else if (np) {
data->power_gpio = of_get_named_gpio(np, "power-gpio", 0);
+ if (data->power_gpio == -EPROBE_DEFER)
+ return data->power_gpio;
} else {
dev_err(dev, "Platform data not set\n");
dump_stack();