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

Reply via email to