#include <linux/device.h>
#include <linux/interconnect-provider.h>
#include <linux/io.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/of_platform.h>
#include <linux/platform_device.h>
#include <linux/pm_qos.h>
#include "imx.h"
struct imx_icc_node { … };
static int imx_icc_get_bw(struct icc_node *node, u32 *avg, u32 *peak)
{ … }
static int imx_icc_node_set(struct icc_node *node)
{ … }
static int imx_icc_set(struct icc_node *src, struct icc_node *dst)
{ … }
static void imx_icc_node_destroy(struct icc_node *node)
{ … }
static int imx_icc_node_init_qos(struct icc_provider *provider,
struct icc_node *node)
{ … }
static struct icc_node *imx_icc_node_add(struct imx_icc_provider *imx_provider,
const struct imx_icc_node_desc *node_desc,
const struct imx_icc_noc_setting *setting)
{ … }
static void imx_icc_unregister_nodes(struct icc_provider *provider)
{ … }
static int imx_icc_register_nodes(struct imx_icc_provider *imx_provider,
const struct imx_icc_node_desc *descs,
int count,
const struct imx_icc_noc_setting *settings)
{ … }
static int get_max_node_id(struct imx_icc_node_desc *nodes, int nodes_count)
{ … }
int imx_icc_register(struct platform_device *pdev,
struct imx_icc_node_desc *nodes, int nodes_count,
struct imx_icc_noc_setting *settings)
{ … }
EXPORT_SYMBOL_GPL(…);
void imx_icc_unregister(struct platform_device *pdev)
{ … }
EXPORT_SYMBOL_GPL(…);
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;