| /linux/drivers/interconnect/ | 
| H A 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 …]
 
 | 
| /linux/drivers/clk/keystone/ | 
| H A 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/tools/testing/selftests/bpf/ | 
| H A D | sdt.h | 45 # define _SDT_PROBE(provider, name, n, arglist)	\  argument46   _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)) \
 289 #define _SDT_ASM_BODY(provider, name, pack_args, args, ...)		      \
 299   _SDT_SEMAPHORE(provider,name)						      \
 [all …]
 
 | 
| /linux/drivers/interconnect/mediatek/ | 
| H A 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/drivers/interconnect/imx/ | 
| H A 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/drivers/clk/tegra/ | 
| H A 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_determine_rate()  local
 96 	if (!provider || !provider->configs || provider->num_configs == 0) {  in tegra210_clk_emc_determine_rate()
 102 	for (i = 0; i < provider->num_configs; i++) {  in tegra210_clk_emc_determine_rate()
 103 		if (provider->configs[i].rate >= req->rate) {  in tegra210_clk_emc_determine_rate()
 104 			req->rate = provider->configs[i].rate;  in tegra210_clk_emc_determine_rate()
 110 	req->rate = provider->configs[i - 1].rate;  in tegra210_clk_emc_determine_rate()
 130 	struct tegra210_clk_emc_provider *provider = emc->provider;  in tegra210_clk_emc_set_rate()  local
 132 	struct device *dev = provider->dev;  in tegra210_clk_emc_set_rate()
 [all …]
 
 | 
| /linux/include/linux/ | 
| H A D | interconnect-provider.h | 43  * struct icc_provider - interconnect provider (controller) entity that might47  * @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 int icc_node_set_name(struct icc_node *node, const struct icc_provider *provider, const char *name);
 125 void icc_node_add(struct icc_node *node, struct icc_provider *provider);
 [all …]
 
 | 
| H A D | tsm.h | 24  * @service_guid: optional service-provider service guid to attest25  * @service_manifest_version: optional service-provider service manifest version requested
 40  * @outblob: generated evidence to provider to the attestation agent
 59  * @TSM_REPORT_PROVIDER: index of the provider name attribute
 62  * @TSM_REPORT_SERVICE_PROVIDER: index of the service provider identifier attribute
 92  * @name: tsm id reflected in /sys/kernel/config/tsm/report/$report/provider
 
 | 
| /linux/drivers/interconnect/qcom/ | 
| H A 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 …]
 
 | 
| H A D | osm-l3.c | 10 #include <linux/interconnect-provider.h>37 	container_of(_provider, struct qcom_osm_l3_icc_provider, provider)
 44 	struct icc_provider provider;  member
 114 	struct icc_provider *provider;  in qcom_osm_l3_set()  local
 120 	provider = src->provider;  in qcom_osm_l3_set()
 121 	qp = to_osm_l3_provider(provider);  in qcom_osm_l3_set()
 140 	icc_provider_deregister(&qp->provider);  in qcom_osm_l3_remove()
 141 	icc_nodes_remove(&qp->provider);  in qcom_osm_l3_remove()
 151 	struct icc_provider *provider;  in qcom_osm_l3_probe()  local
 221 	provider = &qp->provider;  in qcom_osm_l3_probe()
 [all …]
 
 | 
| H A 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 …]
 
 | 
| H A D | icc-rpm.h | 13 #include <linux/interconnect-provider.h>20 	container_of(_provider, struct qcom_icc_provider, provider)
 41  * struct qcom_icc_provider - Qualcomm specific interconnect provider
 42  * @provider: generic interconnect provider
 44  * @type: the ICC provider type
 57 	struct icc_provider provider;  member
 
 | 
| /linux/drivers/interconnect/samsung/ | 
| H A D | exynos.c | 3  * Exynos generic interconnect provider driver11 #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/drivers/clk/ti/ | 
| H A 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/drivers/virt/coco/guest/ | 
| H A D | report.c | 19 } provider;  variable25  * The TSM report interface is a common provider of blobs that facilitate
 35  * The attestation report format is TSM provider specific, when / if a standard
 37  * the 'provider' attribute indicates the format of 'outblob', and optionally
 97 	if (!provider.ops)  in tsm_report_privlevel_store()
 106 	if (provider.ops->privlevel_floor > val || val > TSM_REPORT_PRIVLEVEL_MAX)  in tsm_report_privlevel_store()
 123 	if (!provider.ops)  in tsm_report_privlevel_floor_show()
 126 	return sysfs_emit(buf, "%u\n", provider.ops->privlevel_floor);  in tsm_report_privlevel_floor_show()
 228 	if (!provider.ops)  in tsm_report_provider_show()
 231 	return sysfs_emit(buf, "%s\n", provider.ops->name);  in tsm_report_provider_show()
 [all …]
 
 | 
| /linux/Documentation/ABI/testing/ | 
| H A D | configfs-tsm-report | 17 		where the implementation is conveyed via the @provider29 		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/Documentation/driver-api/pci/ | 
| H A D | p2pdma.rst | 36 * Provider - A driver which provides or publishes P2P resources like44 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/Documentation/driver-api/hte/ | 
| H A D | hte.rst | 20 engine provider and consumer drivers that want to use the hardware timestamping50  - 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/Documentation/devicetree/bindings/power/ | 
| H A D | power-domain.yaml | 21   their PM domains provided by PM domain providers. A PM domain provider can be23   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/drivers/memory/tegra/ | 
| H A D | tegra186-emc.c | 35 	struct icc_provider provider;  member221  * 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/Documentation/translations/zh_CN/driver-api/phy/ | 
| H A D | phy.rst | 31 注册/注销PHY provider34 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/Documentation/devicetree/bindings/dvfs/ | 
| H A D | performance-domain.yaml | 26   providers. A performance domain provider can be represented by any node in28   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/Documentation/devicetree/bindings/reset/ | 
| H A D | reset.txt | 9 a reset provider (e.g. power management or clock module) and received by a11 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
 
 | 
| /linux/drivers/pci/ | 
| H A D | p2pdma.c | 31 	struct pci_dev *provider;  member208 		rcu_dereference_protected(pgmap->provider->p2pdma, 1);  in p2pdma_page_free()
 332 	p2p_pgmap->provider = pdev;  in pci_p2pdma_add_resource()
 584 calc_map_type_and_dist(struct pci_dev *provider, struct pci_dev *client,  in calc_map_type_and_dist()  argument
 588 	struct pci_dev *a = provider, *b = client, *bb;  in calc_map_type_and_dist()
 653 		pci_warn(client, "ACS redirect is set between the client and provider (%s)\n",  in calc_map_type_and_dist()
 654 			 pci_name(provider));  in calc_map_type_and_dist()
 662 	    !host_bridge_whitelist(provider, client, acs_redirects)) {  in calc_map_type_and_dist()
 664 …pci_warn(client, "cannot be used for peer-to-peer DMA as the client and provider (%s) do not share…  in calc_map_type_and_dist()
 665 				 pci_name(provider));  in calc_map_type_and_dist()
 [all …]
 
 | 
| /linux/drivers/phy/marvell/ | 
| H A D | phy-mmp3-hsic.c | 44 	struct phy_provider *provider;  in mmp3_hsic_phy_probe()  local59 	provider = devm_of_phy_provider_register(dev, of_phy_simple_xlate);  in mmp3_hsic_phy_probe()
 60 	if (IS_ERR(provider)) {  in mmp3_hsic_phy_probe()
 61 		dev_err(dev, "failed to register PHY provider\n");  in mmp3_hsic_phy_probe()
 62 		return PTR_ERR(provider);  in mmp3_hsic_phy_probe()
 
 |