diff options
author | Luis R. Rodriguez <mcgrof@kernel.org> | 2015-07-30 18:48:57 -0400 |
---|---|---|
committer | Mimi Zohar <zohar@linux.vnet.ibm.com> | 2016-02-18 17:14:00 -0500 |
commit | 5275d194e0e56db2bdc43e58f5e54b8e36d6fb03 (patch) | |
tree | e62a3820757d6fc8c59a79907c8659be047525e9 /drivers/base/firmware_class.c | |
parent | ed04630b34c117347423a49af35125f5affff6b9 (diff) |
firmware: move completing fw into a helper
This will be re-used later through a new extensible interface.
Reviewed-by: Josh Boyer <jwboyer@fedoraproject.org>
Signed-off-by: Luis R. Rodriguez <mcgrof@kernel.org>
Signed-off-by: Mimi Zohar <zohar@linux.vnet.ibm.com>
Acked-by: Kees Cook <keescook@chromium.org>
Diffstat (limited to 'drivers/base/firmware_class.c')
-rw-r--r-- | drivers/base/firmware_class.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/drivers/base/firmware_class.c b/drivers/base/firmware_class.c index ce88355eb128..7bc4ad0f36d5 100644 --- a/drivers/base/firmware_class.c +++ b/drivers/base/firmware_class.c | |||
@@ -322,6 +322,15 @@ fail: | |||
322 | return rc; | 322 | return rc; |
323 | } | 323 | } |
324 | 324 | ||
325 | static void fw_finish_direct_load(struct device *device, | ||
326 | struct firmware_buf *buf) | ||
327 | { | ||
328 | mutex_lock(&fw_lock); | ||
329 | set_bit(FW_STATUS_DONE, &buf->status); | ||
330 | complete_all(&buf->completion); | ||
331 | mutex_unlock(&fw_lock); | ||
332 | } | ||
333 | |||
325 | static int fw_get_filesystem_firmware(struct device *device, | 334 | static int fw_get_filesystem_firmware(struct device *device, |
326 | struct firmware_buf *buf) | 335 | struct firmware_buf *buf) |
327 | { | 336 | { |
@@ -363,10 +372,7 @@ static int fw_get_filesystem_firmware(struct device *device, | |||
363 | if (!rc) { | 372 | if (!rc) { |
364 | dev_dbg(device, "direct-loading %s\n", | 373 | dev_dbg(device, "direct-loading %s\n", |
365 | buf->fw_id); | 374 | buf->fw_id); |
366 | mutex_lock(&fw_lock); | 375 | fw_finish_direct_load(device, buf); |
367 | set_bit(FW_STATUS_DONE, &buf->status); | ||
368 | complete_all(&buf->completion); | ||
369 | mutex_unlock(&fw_lock); | ||
370 | } | 376 | } |
371 | 377 | ||
372 | return rc; | 378 | return rc; |