提交 bf104c23 编写于 作者: M Markus Elfring 提交者: Mauro Carvalho Chehab

[media] mn88472: One function call less in mn88472_init() after error detection

The release_firmware() function was called in three cases by the mn88472_init()
function during error handling even if the passed variable "fw" contained still
a null pointer.

This implementation detail could be improved by the introduction of another
jump label.
Signed-off-by: NMarkus Elfring <elfring@users.sourceforge.net>
Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
上级 68feaa6b
......@@ -270,7 +270,7 @@ static int mn88472_init(struct dvb_frontend *fe)
ret = regmap_write(dev->regmap[0], 0xf5, 0x03);
if (ret)
goto err;
goto firmware_release;
for (remaining = fw->size; remaining > 0;
remaining -= (dev->i2c_wr_max - 1)) {
......@@ -283,13 +283,13 @@ static int mn88472_init(struct dvb_frontend *fe)
if (ret) {
dev_err(&client->dev,
"firmware download failed=%d\n", ret);
goto err;
goto firmware_release;
}
}
ret = regmap_write(dev->regmap[0], 0xf5, 0x00);
if (ret)
goto err;
goto firmware_release;
release_firmware(fw);
fw = NULL;
......@@ -298,9 +298,9 @@ static int mn88472_init(struct dvb_frontend *fe)
dev->warm = true;
return 0;
err:
firmware_release:
release_firmware(fw);
err:
dev_dbg(&client->dev, "failed=%d\n", ret);
return ret;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册