/linux-6.12.1/drivers/interconnect/ |
D | icc-clk.c | 9 #include <linux/interconnect-provider.h> 17 struct icc_provider provider; member 23 container_of(_provider, struct icc_clk_provider, provider) 64 * icc_clk_register() - register a new clk-based interconnect provider 65 * @dev: device supporting this provider 66 * @first_id: an ID of the first provider's node 68 * @data: data for the provider 70 * Registers and returns a clk-based interconnect provider. It is a simple 82 struct icc_provider *provider; in icc_clk_register() local 98 provider = &qp->provider; in icc_clk_register() [all …]
|
D | core.c | 14 #include <linux/interconnect-provider.h> 45 struct icc_provider *provider; in icc_summary_show() local 52 list_for_each_entry(provider, &icc_providers, provider_list) { in icc_summary_show() 55 list_for_each_entry(n, &provider->nodes, node_list) { in icc_summary_show() 101 struct icc_provider *provider; in icc_graph_show() local 111 list_for_each_entry(provider, &icc_providers, provider_list) { in icc_graph_show() 113 if (provider->dev) in icc_graph_show() 115 dev_name(provider->dev)); in icc_graph_show() 118 list_for_each_entry(n, &provider->nodes, node_list) in icc_graph_show() 122 list_for_each_entry(n, &provider->nodes, node_list) in icc_graph_show() [all …]
|
/linux-6.12.1/drivers/clk/keystone/ |
D | sci-clk.c | 8 #include <linux/clk-provider.h> 24 * struct sci_clk_provider - TI SCI clock provider representation 27 * @dev: Device pointer for the clock provider 29 * @num_clocks: Total number of clocks for this provider 45 * @provider: Master clock provider 56 struct sci_clk_provider *provider; member 78 return clk->provider->ops->get_clock(clk->provider->sci, clk->dev_id, in sci_clk_prepare() 95 ret = clk->provider->ops->put_clock(clk->provider->sci, clk->dev_id, in sci_clk_unprepare() 98 dev_err(clk->provider->dev, in sci_clk_unprepare() 116 ret = clk->provider->ops->is_on(clk->provider->sci, clk->dev_id, in sci_clk_is_prepared() [all …]
|
/linux-6.12.1/tools/testing/selftests/bpf/ |
D | sdt.h | 45 # define _SDT_PROBE(provider, name, n, arglist) \ argument 46 _SDT_ASM_BODY(provider, name, _SDT_ASM_SUBSTR_1, (_SDT_DEPAREN_##n arglist)) \ 69 #define _SDT_NOTE_SEMAPHORE_USE(provider, name) \ argument 70 __asm__ __volatile__ ("" :: "m" (provider##_##name##_semaphore)); 72 #define _SDT_NOTE_SEMAPHORE_USE(provider, name) argument 75 # define _SDT_PROBE(provider, name, n, arglist) \ argument 77 _SDT_NOTE_SEMAPHORE_USE(provider, name); \ 78 __asm__ __volatile__ (_SDT_ASM_BODY(provider, name, _SDT_ASM_ARGS, (n)) \ 287 #define _SDT_ASM_BODY(provider, name, pack_args, args, ...) \ 297 _SDT_SEMAPHORE(provider,name) \ [all …]
|
/linux-6.12.1/drivers/interconnect/mediatek/ |
D | icc-emi.c | 11 #include <linux/interconnect-provider.h> 40 if (unlikely(!src->provider)) in mtk_emi_icc_set() 43 dev = src->provider->dev; in mtk_emi_icc_set() 69 dev_err(src->provider->dev, "Unknown endpoint %u\n", node->ep); in mtk_emi_icc_set() 82 struct icc_provider *provider; in mtk_emi_icc_probe() local 92 provider = devm_kzalloc(dev, sizeof(*provider), GFP_KERNEL); in mtk_emi_icc_probe() 93 if (!provider) in mtk_emi_icc_probe() 100 provider->dev = pdev->dev.parent; in mtk_emi_icc_probe() 101 provider->set = mtk_emi_icc_set; in mtk_emi_icc_probe() 102 provider->aggregate = mtk_emi_icc_aggregate; in mtk_emi_icc_probe() [all …]
|
/linux-6.12.1/drivers/interconnect/imx/ |
D | imx.c | 12 #include <linux/interconnect-provider.h> 41 struct device *dev = node->provider->dev; in imx_icc_node_set() 107 dev_warn(node->provider->dev, in imx_icc_node_destroy() 117 static int imx_icc_node_init_qos(struct icc_provider *provider, in imx_icc_node_init_qos() argument 122 struct device *dev = provider->dev; in imx_icc_node_init_qos() 166 struct icc_provider *provider = &imx_provider->provider; in imx_icc_node_add() local 167 struct device *dev = provider->dev; in imx_icc_node_add() 195 icc_node_add(node, provider); in imx_icc_node_add() 198 ret = imx_icc_node_init_qos(provider, node); in imx_icc_node_add() 208 static void imx_icc_unregister_nodes(struct icc_provider *provider) in imx_icc_unregister_nodes() argument [all …]
|
/linux-6.12.1/drivers/clk/tegra/ |
D | clk-tegra210-emc.c | 8 #include <linux/clk-provider.h> 35 struct tegra210_clk_emc_provider *provider; member 93 struct tegra210_clk_emc_provider *provider = emc->provider; in tegra210_clk_emc_round_rate() local 96 if (!provider || !provider->configs || provider->num_configs == 0) in tegra210_clk_emc_round_rate() 99 for (i = 0; i < provider->num_configs; i++) { in tegra210_clk_emc_round_rate() 100 if (provider->configs[i].rate >= rate) in tegra210_clk_emc_round_rate() 101 return provider->configs[i].rate; in tegra210_clk_emc_round_rate() 104 return provider->configs[i - 1].rate; in tegra210_clk_emc_round_rate() 122 struct tegra210_clk_emc_provider *provider = emc->provider; in tegra210_clk_emc_set_rate() local 124 struct device *dev = provider->dev; in tegra210_clk_emc_set_rate() [all …]
|
/linux-6.12.1/drivers/interconnect/qcom/ |
D | icc-rpm.c | 7 #include <linux/interconnect-provider.h> 55 struct icc_provider *provider = src->provider; in qcom_icc_set_qnoc_qos() local 56 struct qcom_icc_provider *qp = to_qcom_provider(provider); in qcom_icc_set_qnoc_qos() 102 struct icc_provider *provider; in qcom_icc_set_bimc_qos() local 108 provider = src->provider; in qcom_icc_set_bimc_qos() 109 qp = to_qcom_provider(provider); in qcom_icc_set_bimc_qos() 157 struct icc_provider *provider; in qcom_icc_set_noc_qos() local 162 provider = src->provider; in qcom_icc_set_noc_qos() 163 qp = to_qcom_provider(provider); in qcom_icc_set_noc_qos() 166 dev_dbg(src->provider->dev, in qcom_icc_set_noc_qos() [all …]
|
D | osm-l3.c | 9 #include <linux/interconnect-provider.h> 38 container_of(_provider, struct qcom_osm_l3_icc_provider, provider) 45 struct icc_provider provider; member 129 struct icc_provider *provider; in qcom_osm_l3_set() local 135 provider = src->provider; in qcom_osm_l3_set() 136 qp = to_osm_l3_provider(provider); in qcom_osm_l3_set() 155 icc_provider_deregister(&qp->provider); in qcom_osm_l3_remove() 156 icc_nodes_remove(&qp->provider); in qcom_osm_l3_remove() 166 struct icc_provider *provider; in qcom_osm_l3_probe() local 236 provider = &qp->provider; in qcom_osm_l3_probe() [all …]
|
D | icc-rpmh.c | 10 #include <linux/interconnect-provider.h> 28 * @qp: qcom icc provider to which @node belongs 63 qp = to_qcom_provider(node->provider); in qcom_icc_pre_aggregate() 131 qp = to_qcom_provider(node->provider); in qcom_icc_set() 142 * @dev: associated provider device 199 * @qp: qcom icc provider associated with QoS endpoint nodes 232 struct icc_provider *provider; in qcom_icc_rpmh_probe() local 255 provider = &qp->provider; in qcom_icc_rpmh_probe() 256 provider->dev = dev; in qcom_icc_rpmh_probe() 257 provider->set = qcom_icc_set; in qcom_icc_rpmh_probe() [all …]
|
D | msm8974.c | 35 #include <linux/interconnect-provider.h> 180 container_of(_provider, struct msm8974_icc_provider, provider) 188 * struct msm8974_icc_provider - Qualcomm specific interconnect provider 189 * @provider: generic interconnect provider 194 struct icc_provider provider; member 588 struct icc_provider *provider; in msm8974_icc_set() local 594 provider = src->provider; in msm8974_icc_set() 595 qp = to_msm8974_icc_provider(provider); in msm8974_icc_set() 597 list_for_each_entry(n, &provider->nodes, node_list) in msm8974_icc_set() 598 provider->aggregate(n, 0, n->avg_bw, n->peak_bw, in msm8974_icc_set() [all …]
|
D | icc-rpmh.h | 14 container_of(_provider, struct qcom_icc_provider, provider) 17 * struct qcom_icc_provider - Qualcomm specific interconnect provider 18 * @provider: generic interconnect provider 20 * @bcms: list of bcms that maps to the provider 22 * @voter: bcm voter targeted by this provider 23 * @nodes: list of icc nodes that maps to the provider 30 struct icc_provider provider; member
|
/linux-6.12.1/include/linux/ |
D | interconnect-provider.h | 43 * struct icc_provider - interconnect provider (controller) entity that might 47 * @nodes: internal list of the interconnect provider nodes 53 * @xlate: provider-specific callback for mapping nodes from phandle arguments 55 * @dev: the device this interconnect provider belongs to 57 * @inter_set: whether inter-provider pairs will be configured with @set 84 * @provider: points to the interconnect provider of this node 85 * @node_list: the list entry in the parent provider's "nodes" list 102 struct icc_provider *provider; member 122 void icc_node_add(struct icc_node *node, struct icc_provider *provider); 124 int icc_nodes_remove(struct icc_provider *provider); [all …]
|
/linux-6.12.1/drivers/interconnect/samsung/ |
D | exynos.c | 3 * Exynos generic interconnect provider driver 11 #include <linux/interconnect-provider.h> 23 /* One interconnect node per provider */ 24 struct icc_provider provider; member 100 icc_provider_deregister(&priv->provider); in exynos_generic_icc_remove() 101 icc_nodes_remove(&priv->provider); in exynos_generic_icc_remove() 108 struct icc_provider *provider; in exynos_generic_icc_probe() local 119 provider = &priv->provider; in exynos_generic_icc_probe() 121 provider->set = exynos_generic_icc_set; in exynos_generic_icc_probe() 122 provider->aggregate = icc_std_aggregate; in exynos_generic_icc_probe() [all …]
|
/linux-6.12.1/drivers/clk/ti/ |
D | clkctrl.c | 10 #include <linux/clk-provider.h> 227 struct omap_clkctrl_provider *provider = data; in _ti_omap4_clkctrl_xlate() local 236 list_for_each_entry(iter, &provider->clocks, node) { in _ti_omap4_clkctrl_xlate() 285 _ti_clkctrl_clk_register(struct omap_clkctrl_provider *provider, in _ti_clkctrl_clk_register() argument 322 list_add(&clkctrl_clk->node, &provider->clocks); in _ti_clkctrl_clk_register() 333 _ti_clkctrl_setup_gate(struct omap_clkctrl_provider *provider, in _ti_clkctrl_setup_gate() argument 347 if (_ti_clkctrl_clk_register(provider, node, &clk_hw->hw, offset, in _ti_clkctrl_setup_gate() 354 _ti_clkctrl_setup_mux(struct omap_clkctrl_provider *provider, in _ti_clkctrl_setup_mux() argument 382 if (_ti_clkctrl_clk_register(provider, node, &mux->hw, offset, in _ti_clkctrl_setup_mux() 389 _ti_clkctrl_setup_div(struct omap_clkctrl_provider *provider, in _ti_clkctrl_setup_div() argument [all …]
|
/linux-6.12.1/Documentation/ABI/testing/ |
D | configfs-tsm | 17 where the implementation is conveyed via the @provider 29 When @provider is "sev_guest" this file contains the 46 What: /sys/kernel/config/tsm/report/$name/provider 81 (WO) Attribute is visible if a TSM implementation provider 101 (WO) Attribute is visible if a TSM implementation provider 103 provider for TVMs, like SEV-SNP running under an SVSM. 104 Specifying the service provider via this attribute will create 105 an attestation report as specified by the service provider. 106 The only currently supported service provider is "svsm". 108 For the "svsm" service provider, see the Secure VM Service Module [all …]
|
/linux-6.12.1/Documentation/driver-api/pci/ |
D | p2pdma.rst | 36 * Provider - A driver which provides or publishes P2P resources like 44 it may be typical for a driver to be both a provider and a client). 48 * The NVMe PCI driver is both a client, provider and orchestrator 50 resource (provider), it accepts P2P memory pages as buffers in requests 61 memory behind it, its driver could add support as a P2P provider and 66 Provider Drivers 69 A provider simply needs to register a BAR (or a portion of a BAR) 98 a specific P2P provider to use it may check compatibility using 99 :c:func:`pci_p2pdma_distance()` otherwise it may find a memory provider 101 If more than one provider is supported, the one nearest to all the clients will [all …]
|
/linux-6.12.1/Documentation/driver-api/ |
D | pwrseq.rst | 17 exposed by the power sequence provider and delegate the actual requesting and 18 control of the underlying resources as well as to allow the provider to 44 entry point to the provider layer. It ensures coherence between different 59 Provider interface 62 The provider API is admittedly not nearly as straightforward as the one for 65 Each provider can logically split the power-up sequence into descrete chunks 77 provider driver must implement the `match()` callback and pass it to the pwrseq 81 every registered provider and let it flexibly figure out whether the proposed 82 client device is indeed its consumer. For example: if the provider binds to the 84 consumer driver controls one of its modules, the provider driver may parse the [all …]
|
/linux-6.12.1/drivers/virt/coco/ |
D | tsm.c | 18 } provider; variable 24 * The TSM report interface is a common provider of blobs that facilitate 34 * The attestation report format is TSM provider specific, when / if a standard 36 * the 'provider' attribute indicates the format of 'outblob', and optionally 101 if (provider.ops->privlevel_floor > val || val > TSM_PRIVLEVEL_MAX) in tsm_report_privlevel_store() 118 return sysfs_emit(buf, "%u\n", provider.ops->privlevel_floor); in tsm_report_privlevel_floor_show() 220 return sysfs_emit(buf, "%s\n", provider.ops->name); in tsm_report_provider_show() 222 CONFIGFS_ATTR_RO(tsm_report_, provider); 285 ops = provider.ops; in tsm_report_read() 302 rc = ops->report_new(report, provider.data); in tsm_report_read() [all …]
|
/linux-6.12.1/Documentation/driver-api/hte/ |
D | hte.rst | 20 engine provider and consumer drivers that want to use the hardware timestamping 50 - Stores GPIO raw level in raw_level variable if the provider has that 61 ``/sys/kernel/debug/hte/<provider>/<label or line id>/``. Note that these 65 The total number of entities requested from the given provider, 66 where entity is specified by the provider and could represent 69 ``/sys/kernel/debug/hte/<provider>/``. 72 The total number of entities supported by the provider. 74 ``/sys/kernel/debug/hte/<provider>/``. 79 ``/sys/kernel/debug/hte/<provider>/<label or line id>/``.
|
/linux-6.12.1/Documentation/devicetree/bindings/power/ |
D | power-domain.yaml | 21 their PM domains provided by PM domain providers. A PM domain provider can be 23 domains. A consumer node can refer to the provider by a phandle and a set of 25 \#power-domain-cells property in the PM domain provider node. 37 power-domain provider. The idle state definitions are compatible with the 49 performance, provided by a power domain provider. If the provider provides 51 provider have identical OPP tables, then this shall contain a single 59 by device tree binding documentation of particular provider. 68 by the given provider should be subdomains of the domain specified 84 // The node above defines a power controller that is a PM domain provider and
|
/linux-6.12.1/drivers/memory/tegra/ |
D | tegra186-emc.c | 35 struct icc_provider provider; member 221 * tegra_emc_icc_set_bw() - Set BW api for EMC provider 236 struct icc_provider *provider = data; in tegra_emc_of_icc_xlate() local 240 list_for_each_entry(node, &provider->nodes, node_list) { in tegra_emc_of_icc_xlate() 265 emc->provider.dev = emc->dev; in tegra_emc_interconnect_init() 266 emc->provider.set = tegra_emc_icc_set_bw; in tegra_emc_interconnect_init() 267 emc->provider.data = &emc->provider; in tegra_emc_interconnect_init() 268 emc->provider.aggregate = soc->icc_ops->aggregate; in tegra_emc_interconnect_init() 269 emc->provider.xlate = tegra_emc_of_icc_xlate; in tegra_emc_interconnect_init() 270 emc->provider.get_bw = tegra_emc_icc_get_init_bw; in tegra_emc_interconnect_init() [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/dvfs/ |
D | performance-domain.yaml | 26 providers. A performance domain provider can be represented by any node in 28 node can refer to the provider by a phandle and a set of phandle arguments 30 \#performance-domain-cells property in the performance domain provider node. 41 provider. 48 performance controller/provider specified by phandle. 67 // domain provider and expects one cell as its phandle argument.
|
/linux-6.12.1/Documentation/translations/zh_CN/driver-api/phy/ |
D | phy.rst | 31 注册/注销PHY provider 34 PHY provider是指实现一个或多个 PHY 实例的实体。对于 PHY provider 仅 36 的 of_xlate 实现。如果 PHY provider 实现多个实例,则应提供其自己的 50 启动情况,所有 PHY provider 都应使用上述两个宏之一来注册 PHY provider。 52 与 PHY provider 关联的设备树节点通常包含一组子节点,每个子节点代表一个 185 (PHY provider 设备)的设备的子设备。 188 调用 PHY provider 设备的 pm_runtime_get_sync。还应注意,
|
/linux-6.12.1/Documentation/devicetree/bindings/reset/ |
D | reset.txt | 9 a reset provider (e.g. power management or clock module) and received by a 11 ordinate module is reset). This binding exists to represent the provider and 14 A reset signal is represented by the phandle of the provider, plus a reset 16 provider. The length (number of cells) and semantics of the reset specifier 17 are dictated by the binding of the reset provider, although common schemes 50 device manages. Note: if the reset provider specifies '0' for
|