Revert "drm/bridge: lt9611uxc: fix the race in the error path"

This reverts commit d0d01bb4a5.

This and the dependent fixes broke display on RB5.

Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Amit Pundir 2023-12-19 15:41:16 +05:30 committed by Greg Kroah-Hartman
parent 811b5eaee7
commit e21817ce16

View File

@ -927,9 +927,9 @@ retry:
init_waitqueue_head(&lt9611uxc->wq);
INIT_WORK(&lt9611uxc->work, lt9611uxc_hpd_work);
ret = request_threaded_irq(client->irq, NULL,
lt9611uxc_irq_thread_handler,
IRQF_ONESHOT, "lt9611uxc", lt9611uxc);
ret = devm_request_threaded_irq(dev, client->irq, NULL,
lt9611uxc_irq_thread_handler,
IRQF_ONESHOT, "lt9611uxc", lt9611uxc);
if (ret) {
dev_err(dev, "failed to request irq\n");
goto err_disable_regulators;
@ -965,8 +965,6 @@ retry:
return lt9611uxc_audio_init(dev, lt9611uxc);
err_remove_bridge:
free_irq(client->irq, lt9611uxc);
cancel_work_sync(&lt9611uxc->work);
drm_bridge_remove(&lt9611uxc->bridge);
err_disable_regulators:
@ -983,7 +981,7 @@ static int lt9611uxc_remove(struct i2c_client *client)
{
struct lt9611uxc *lt9611uxc = i2c_get_clientdata(client);
free_irq(client->irq, lt9611uxc);
disable_irq(client->irq);
cancel_work_sync(&lt9611uxc->work);
lt9611uxc_audio_exit(lt9611uxc);
drm_bridge_remove(&lt9611uxc->bridge);