mirror of https://gitee.com/openkylin/linux.git
[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: Markus Elfring <elfring@users.sourceforge.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
This commit is contained in:
parent
68feaa6b8b
commit
bf104c238d
|
@ -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;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue