diff --git a/sound/soc/codecs/cs42l42.c b/sound/soc/codecs/cs42l42.c index e5a97e904d40cc2212aa79019b9b2f152a31f499..dc84b3de3da31eb9ac4d50b08c6d4116aca85a3f 100644 --- a/sound/soc/codecs/cs42l42.c +++ b/sound/soc/codecs/cs42l42.c @@ -1935,8 +1935,9 @@ static int cs42l42_i2c_probe(struct i2c_client *i2c_client, NULL, cs42l42_irq_thread, IRQF_ONESHOT | IRQF_TRIGGER_LOW, "cs42l42", cs42l42); - - if (ret != 0) + if (ret == -EPROBE_DEFER) + goto err_disable; + else if (ret != 0) dev_err(&i2c_client->dev, "Failed to request IRQ: %d\n", ret);