예제 #1
0
/**
 * devm_kasprintf - Allocate resource managed space
 *		and copy an existing formatted string into that
 * @dev: Device to allocate memory for
 * @gfp: the GFP mask used in the devm_kmalloc() call when
 *       allocating memory
 * @fmt: the string to duplicate
 * RETURNS:
 * Pointer to allocated string on success, NULL on failure.
 */
char *devm_kasprintf(struct device *dev, gfp_t gfp, const char *fmt, ...)
{
	va_list ap;
	char *p;

	va_start(ap, fmt);
	p = devm_kvasprintf(dev, gfp, fmt, ap);
	va_end(ap);

	return p;
}
예제 #2
0
int asoc_simple_card_set_dailink_name(struct device *dev,
                                      struct snd_soc_dai_link *dai_link,
                                      const char *fmt, ...)
{
    va_list ap;
    char *name = NULL;
    int ret = -ENOMEM;

    va_start(ap, fmt);
    name = devm_kvasprintf(dev, GFP_KERNEL, fmt, ap);
    va_end(ap);

    if (name) {
        ret = 0;

        dai_link->name		= name;
        dai_link->stream_name	= name;
    }

    return ret;
}