remoteproc: Simplify default name allocation
authorMathieu Poirier <mathieu.poirier@linaro.org>
Wed, 15 Apr 2020 20:48:54 +0000 (14:48 -0600)
committerBjorn Andersson <bjorn.andersson@linaro.org>
Mon, 20 Apr 2020 05:24:54 +0000 (22:24 -0700)
In an effort to cleanup firmware name allocation, replace the
cumbersome mechanic used to allocate a default firmware name with
function kasprintf().

Reviewed-by: Alex Elder <elder@linaro.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Suggested-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Link: https://lore.kernel.org/r/20200415204858.2448-4-mathieu.poirier@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
drivers/remoteproc/remoteproc_core.c

index 4dee63f..9899467 100644 (file)
@@ -1982,24 +1982,19 @@ static const struct device_type rproc_type = {
 static int rproc_alloc_firmware(struct rproc *rproc,
                                const char *name, const char *firmware)
 {
-       char *p, *template = "rproc-%s-fw";
-       int name_len;
+       char *p;
 
-       if (!firmware) {
+       if (!firmware)
                /*
                 * If the caller didn't pass in a firmware name then
                 * construct a default name.
                 */
-               name_len = strlen(name) + strlen(template) - 2 + 1;
-               p = kmalloc(name_len, GFP_KERNEL);
-               if (!p)
-                       return -ENOMEM;
-               snprintf(p, name_len, template, name);
-       } else {
+               p = kasprintf(GFP_KERNEL, "rproc-%s-fw", name);
+       else
                p = kstrdup(firmware, GFP_KERNEL);
-               if (!p)
-                       return -ENOMEM;
-       }
+
+       if (!p)
+               return -ENOMEM;
 
        rproc->firmware = p;