/* SPDX-License-Identifier: GPL-2.0 */
/*
* Interconnect framework internal structs
*
* Copyright ( c ) 2019 , Linaro Ltd .
* Author : Georgi Djakov < georgi . djakov @ linaro . org >
*/
#ifndef __DRIVERS_INTERCONNECT_INTERNAL_H
#define __DRIVERS_INTERCONNECT_INTERNAL_H
/**
* struct icc_req - constraints that are attached to each node
* @ req_node : entry in list of requests for the particular @ node
* @ node : the interconnect node to which this constraint applies
* @ dev : reference to the device that sets the constraints
* @ enabled : indicates whether the path with this request is enabled
* @ tag : path tag ( optional )
* @ avg_bw : an integer describing the average bandwidth in kBps
* @ peak_bw : an integer describing the peak bandwidth in kBps
*/
struct icc_req {
struct hlist_node req_node;
struct icc_node *node;
struct device *dev;
bool enabled;
u32 tag;
u32 avg_bw;
u32 peak_bw;
};
/**
* struct icc_path - interconnect path structure
* @ name : a string name of the path ( useful for ftrace )
* @ num_nodes : number of hops ( nodes )
* @ reqs : array of the requests applicable to this path of nodes
*/
struct icc_path {
const char *name;
size_t num_nodes;
struct icc_req reqs[] __counted_by(num_nodes);
};
struct icc_path *icc_get(struct device *dev, const char *src, const char *dst);
int icc_debugfs_client_init(struct dentry *icc_dir);
#endif
Messung V0.5 in Prozent C=92 H=100 G=95
¤ Dauer der Verarbeitung: 0.10 Sekunden
(vorverarbeitet am 2026-09-29)
¤
*© Formatika GbR, Deutschland