1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright (C) 2022 Linaro Ltd.
7 #include <linux/slab.h>
8 #include <linux/module.h>
10 #include "icc-common.h"
12 struct icc_node_data
*qcom_icc_xlate_extended(const struct of_phandle_args
*spec
,
15 struct icc_node_data
*ndata
;
16 struct icc_node
*node
;
18 node
= of_icc_xlate_onecell(spec
, data
);
20 return ERR_CAST(node
);
22 ndata
= kzalloc(sizeof(*ndata
), GFP_KERNEL
);
24 return ERR_PTR(-ENOMEM
);
28 if (spec
->args_count
== 2)
29 ndata
->tag
= spec
->args
[1];
31 if (spec
->args_count
> 2)
32 pr_warn("%pOF: Too many arguments, path tag is not parsed\n", spec
->np
);
36 EXPORT_SYMBOL_GPL(qcom_icc_xlate_extended
);
38 MODULE_DESCRIPTION("Qualcomm interconnect common functions");
39 MODULE_LICENSE("GPL");