aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarkus Elfring <elfring@users.sourceforge.net>2014-11-30 14:48:24 -0500
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>2014-12-04 12:28:51 -0500
commite358c8a60f62fa89a13e35686f79eaeda0ca2127 (patch)
tree7d2ff9bc631e1108a2cd30d5aedbf560e1bac975
parentdc89cfcf33bfd15ad335207062c1f87b6074f222 (diff)
[media] si2157: One function call less in si2157_init() after error
The release_firmware() function was called in some cases by the si2157_init() function during error handling even if the passed variable 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>
-rw-r--r--drivers/media/tuners/si2157.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/media/tuners/si2157.c b/drivers/media/tuners/si2157.c
index e17ab1ffc273..2180de9d654a 100644
--- a/drivers/media/tuners/si2157.c
+++ b/drivers/media/tuners/si2157.c
@@ -157,7 +157,7 @@ static int si2157_init(struct dvb_frontend *fe)
157 dev_err(&s->client->dev, "firmware file '%s' is invalid\n", 157 dev_err(&s->client->dev, "firmware file '%s' is invalid\n",
158 fw_file); 158 fw_file);
159 ret = -EINVAL; 159 ret = -EINVAL;
160 goto err; 160 goto fw_release_exit;
161 } 161 }
162 162
163 dev_info(&s->client->dev, "downloading firmware from file '%s'\n", 163 dev_info(&s->client->dev, "downloading firmware from file '%s'\n",
@@ -173,7 +173,7 @@ static int si2157_init(struct dvb_frontend *fe)
173 dev_err(&s->client->dev, 173 dev_err(&s->client->dev,
174 "firmware download failed=%d\n", 174 "firmware download failed=%d\n",
175 ret); 175 ret);
176 goto err; 176 goto fw_release_exit;
177 } 177 }
178 } 178 }
179 179
@@ -195,9 +195,9 @@ warm:
195 s->active = true; 195 s->active = true;
196 return 0; 196 return 0;
197 197
198err: 198fw_release_exit:
199 release_firmware(fw); 199 release_firmware(fw);
200 200err:
201 dev_dbg(&s->client->dev, "failed=%d\n", ret); 201 dev_dbg(&s->client->dev, "failed=%d\n", ret);
202 return ret; 202 return ret;
203} 203}