33c0259092
Clock drivers for Armada AP and Armada CP use the same function to generate unique clock name. A third drivers is coming with the same need, so it's time to move this function in a common file. Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com> Link: https://lkml.kernel.org/r/20190710134346.30239-3-gregory.clement@bootlin.com Signed-off-by: Stephen Boyd <sboyd@kernel.org>
31 lines
658 B
C
31 lines
658 B
C
// SPDX-License-Identifier: GPL-2.0+
|
|
/*
|
|
* Marvell Armada AP and CP110 helper
|
|
*
|
|
* Copyright (C) 2018 Marvell
|
|
*
|
|
* Gregory Clement <gregory.clement@bootlin.com>
|
|
*
|
|
*/
|
|
|
|
#include "armada_ap_cp_helper.h"
|
|
#include <linux/device.h>
|
|
#include <linux/of.h>
|
|
#include <linux/of_address.h>
|
|
|
|
char *ap_cp_unique_name(struct device *dev, struct device_node *np,
|
|
const char *name)
|
|
{
|
|
const __be32 *reg;
|
|
u64 addr;
|
|
|
|
/* Do not create a name if there is no clock */
|
|
if (!name)
|
|
return NULL;
|
|
|
|
reg = of_get_property(np, "reg", NULL);
|
|
addr = of_translate_address(np, reg);
|
|
return devm_kasprintf(dev, GFP_KERNEL, "%llx-%s",
|
|
(unsigned long long)addr, name);
|
|
}
|