diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2015-12-13 15:29:22 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-12-13 15:29:22 -0500 |
commit | f17ef4959f6281e86aa0a28c7ed615c0b86a79b5 (patch) | |
tree | 085d0cdb750bce1aa088c05f9124dec6393f4d7f | |
parent | b24f74e3208ff7a6b360d6f1a3ef252f3a910827 (diff) | |
parent | e8c77bda05e5d93cce6f38cfdde4192307951dea (diff) |
Merge tag 'char-misc-4.4-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc
Pull fpga driver fixes from Greg KH:
"Only two small fpga driver fixes here, both have been in linux-next
for a while, and resolve some reported issues"
* tag 'char-misc-4.4-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
fpga manager: Fix firmware resource leak on error
fpga manager: remove label
-rw-r--r-- | drivers/fpga/fpga-mgr.c | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/drivers/fpga/fpga-mgr.c b/drivers/fpga/fpga-mgr.c index a24f5cb877e0..953dc9195937 100644 --- a/drivers/fpga/fpga-mgr.c +++ b/drivers/fpga/fpga-mgr.c | |||
@@ -122,12 +122,10 @@ int fpga_mgr_firmware_load(struct fpga_manager *mgr, u32 flags, | |||
122 | } | 122 | } |
123 | 123 | ||
124 | ret = fpga_mgr_buf_load(mgr, flags, fw->data, fw->size); | 124 | ret = fpga_mgr_buf_load(mgr, flags, fw->data, fw->size); |
125 | if (ret) | ||
126 | return ret; | ||
127 | 125 | ||
128 | release_firmware(fw); | 126 | release_firmware(fw); |
129 | 127 | ||
130 | return 0; | 128 | return ret; |
131 | } | 129 | } |
132 | EXPORT_SYMBOL_GPL(fpga_mgr_firmware_load); | 130 | EXPORT_SYMBOL_GPL(fpga_mgr_firmware_load); |
133 | 131 | ||
@@ -256,7 +254,6 @@ int fpga_mgr_register(struct device *dev, const char *name, | |||
256 | void *priv) | 254 | void *priv) |
257 | { | 255 | { |
258 | struct fpga_manager *mgr; | 256 | struct fpga_manager *mgr; |
259 | const char *dt_label; | ||
260 | int id, ret; | 257 | int id, ret; |
261 | 258 | ||
262 | if (!mops || !mops->write_init || !mops->write || | 259 | if (!mops || !mops->write_init || !mops->write || |
@@ -300,11 +297,9 @@ int fpga_mgr_register(struct device *dev, const char *name, | |||
300 | mgr->dev.id = id; | 297 | mgr->dev.id = id; |
301 | dev_set_drvdata(dev, mgr); | 298 | dev_set_drvdata(dev, mgr); |
302 | 299 | ||
303 | dt_label = of_get_property(mgr->dev.of_node, "label", NULL); | 300 | ret = dev_set_name(&mgr->dev, "fpga%d", id); |
304 | if (dt_label) | 301 | if (ret) |
305 | ret = dev_set_name(&mgr->dev, "%s", dt_label); | 302 | goto error_device; |
306 | else | ||
307 | ret = dev_set_name(&mgr->dev, "fpga%d", id); | ||
308 | 303 | ||
309 | ret = device_add(&mgr->dev); | 304 | ret = device_add(&mgr->dev); |
310 | if (ret) | 305 | if (ret) |