Use devm_drm_bridge_add() and remove the need to call drm_bridge_remove() manually. Drop the empty lt9211_remove().
Signed-off-by: Philipp Zabel <[email protected]> --- drivers/gpu/drm/bridge/lontium-lt9211.c | 19 +++---------------- 1 file changed, 3 insertions(+), 16 deletions(-) diff --git a/drivers/gpu/drm/bridge/lontium-lt9211.c b/drivers/gpu/drm/bridge/lontium-lt9211.c index 14afffcb2e4a..c82f7ee7134c 100644 --- a/drivers/gpu/drm/bridge/lontium-lt9211.c +++ b/drivers/gpu/drm/bridge/lontium-lt9211.c @@ -1456,24 +1456,12 @@ static int lt9211_probe(struct i2c_client *client) if (IS_ERR(ctx->regmap)) return PTR_ERR(ctx->regmap); - dev_set_drvdata(dev, ctx); - i2c_set_clientdata(client, ctx); - ctx->bridge.of_node = dev->of_node; - drm_bridge_add(&ctx->bridge); - - ret = lt9211_host_attach(ctx); + ret = devm_drm_bridge_add(dev, &ctx->bridge); if (ret) - drm_bridge_remove(&ctx->bridge); + return ret; - return ret; -} - -static void lt9211_remove(struct i2c_client *client) -{ - struct lt9211 *ctx = i2c_get_clientdata(client); - - drm_bridge_remove(&ctx->bridge); + return lt9211_host_attach(ctx); } static const struct i2c_device_id lt9211_id[] = { @@ -1492,7 +1480,6 @@ MODULE_DEVICE_TABLE(of, lt9211_match_table); static struct i2c_driver lt9211_driver = { .probe = lt9211_probe, - .remove = lt9211_remove, .id_table = lt9211_id, .driver = { .name = "lt9211", -- 2.47.3
