for (i = 0, j = 0; i < num_clocks; i++) {
qp->clocks[i].clk = data[i].clk;
node = icc_node_create(first_id + data[i].master_id); if (IS_ERR(node)) {
ret = PTR_ERR(node); goto err;
}
node->name = devm_kasprintf(dev, GFP_KERNEL, "%s_master", data[i].name); if (!node->name) {
icc_node_destroy(node->id);
ret = -ENOMEM; goto err;
}
node->data = &qp->clocks[i];
icc_node_add(node, provider); /* link to the next node, slave */
icc_link_create(node, first_id + data[i].slave_id);
onecell->nodes[j++] = node;
node = icc_node_create(first_id + data[i].slave_id); if (IS_ERR(node)) {
ret = PTR_ERR(node); goto err;
}
node->name = devm_kasprintf(dev, GFP_KERNEL, "%s_slave", data[i].name); if (!node->name) {
icc_node_destroy(node->id);
ret = -ENOMEM; goto err;
}
/* no data for slave node */
icc_node_add(node, provider);
onecell->nodes[j++] = node;
}
ret = icc_provider_register(provider); if (ret) goto err;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.