Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

drm/rockchip: inno_hdmi: switch i2c registration to devm functions

Switch from i2c_add_adapter() to resource managed
devm_i2c_add_adapter(), which will make the cleanup code more simpler.

Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Link: https://lore.kernel.org/r/20250512124615.2848731-8-andyshrk@163.com

authored by

Andy Yan and committed by
Heiko Stuebner
078bb17c 1749267b

+2 -6
+2 -6
drivers/gpu/drm/rockchip/inno_hdmi.c
··· 1230 1230 strscpy(adap->name, "Inno HDMI", sizeof(adap->name)); 1231 1231 i2c_set_adapdata(adap, hdmi); 1232 1232 1233 - ret = i2c_add_adapter(adap); 1233 + ret = devm_i2c_add_adapter(hdmi->dev, adap); 1234 1234 if (ret) { 1235 1235 dev_warn(hdmi->dev, "cannot add %s I2C adapter\n", adap->name); 1236 - devm_kfree(hdmi->dev, i2c); 1237 1236 return ERR_PTR(ret); 1238 1237 } 1239 1238 ··· 1315 1316 1316 1317 ret = inno_hdmi_register(drm, hdmi); 1317 1318 if (ret) 1318 - goto err_put_adapter; 1319 + goto err_disable_clk; 1319 1320 1320 1321 dev_set_drvdata(dev, hdmi); 1321 1322 ··· 1329 1330 err_cleanup_hdmi: 1330 1331 hdmi->connector.funcs->destroy(&hdmi->connector); 1331 1332 hdmi->encoder.encoder.funcs->destroy(&hdmi->encoder.encoder); 1332 - err_put_adapter: 1333 - i2c_put_adapter(hdmi->ddc); 1334 1333 err_disable_clk: 1335 1334 clk_disable_unprepare(hdmi->refclk); 1336 1335 err_disable_pclk: ··· 1344 1347 hdmi->connector.funcs->destroy(&hdmi->connector); 1345 1348 hdmi->encoder.encoder.funcs->destroy(&hdmi->encoder.encoder); 1346 1349 1347 - i2c_put_adapter(hdmi->ddc); 1348 1350 clk_disable_unprepare(hdmi->refclk); 1349 1351 clk_disable_unprepare(hdmi->pclk); 1350 1352 }