/linux-6.12.1/drivers/clk/keystone/ |
D | sci-clk.c | 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() 120 dev_err(clk->provider->dev, in sci_clk_is_prepared() 144 ret = clk->provider->ops->get_freq(clk->provider->sci, clk->dev_id, in sci_clk_recalc_rate() 147 dev_err(clk->provider->dev, in sci_clk_recalc_rate() 178 ret = clk->provider->ops->get_best_match_freq(clk->provider->sci, in sci_clk_determine_rate() 186 dev_err(clk->provider->dev, in sci_clk_determine_rate() [all …]
|
/linux-6.12.1/drivers/interconnect/ |
D | icc-clk.c | 17 struct icc_provider provider; member 23 container_of(_provider, struct icc_clk_provider, provider) 82 struct icc_provider *provider; in icc_clk_register() local 98 provider = &qp->provider; in icc_clk_register() 99 provider->dev = dev; in icc_clk_register() 100 provider->get_bw = icc_clk_get_bw; in icc_clk_register() 101 provider->set = icc_clk_set; in icc_clk_register() 102 provider->aggregate = icc_std_aggregate; in icc_clk_register() 103 provider->xlate = of_icc_xlate_onecell; in icc_clk_register() 104 INIT_LIST_HEAD(&provider->nodes); in icc_clk_register() [all …]
|
D | core.c | 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() 124 if (n->provider == n->links[i]->provider) in icc_graph_show() [all …]
|
/linux-6.12.1/drivers/interconnect/mediatek/ |
D | icc-emi.c | 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() 103 provider->xlate = of_icc_xlate_onecell; in mtk_emi_icc_probe() [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/clk/tegra/ |
D | clk-tegra210-emc.c | 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() 131 if (!provider->configs || provider->num_configs == 0) in tegra210_clk_emc_set_rate() [all …]
|
/linux-6.12.1/drivers/interconnect/imx/ |
D | imx.c | 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 212 list_for_each_entry_safe(node, tmp, &provider->nodes, node_list) in imx_icc_unregister_nodes() [all …]
|
/linux-6.12.1/drivers/clk/ti/ |
D | clkctrl.c | 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 418 if (_ti_clkctrl_clk_register(provider, node, &div->hw, offset, in _ti_clkctrl_setup_div() [all …]
|
/linux-6.12.1/drivers/interconnect/qcom/ |
D | icc-rpm.c | 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() 173 dev_dbg(src->provider->dev, "NoC QoS: %s: Set Fixed mode\n", qn->name); in qcom_icc_set_noc_qos() [all …]
|
D | osm-l3.c | 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() 237 provider->dev = &pdev->dev; in qcom_osm_l3_probe() [all …]
|
D | icc-rpmh.c | 63 qp = to_qcom_provider(node->provider); in qcom_icc_pre_aggregate() 131 qp = to_qcom_provider(node->provider); in qcom_icc_set() 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() 258 provider->pre_aggregate = qcom_icc_pre_aggregate; in qcom_icc_rpmh_probe() 259 provider->aggregate = qcom_icc_aggregate; in qcom_icc_rpmh_probe() 260 provider->xlate_extended = qcom_icc_xlate_extended; in qcom_icc_rpmh_probe() 261 provider->data = data; in qcom_icc_rpmh_probe() [all …]
|
D | msm8974.c | 180 container_of(_provider, struct msm8974_icc_provider, 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() 605 msm8974_icc_rpm_smd_send(provider->dev, RPM_BUS_MASTER_REQ, in msm8974_icc_set() 608 msm8974_icc_rpm_smd_send(provider->dev, RPM_BUS_SLAVE_REQ, in msm8974_icc_set() 612 msm8974_icc_rpm_smd_send(provider->dev, RPM_BUS_MASTER_REQ, in msm8974_icc_set() [all …]
|
/linux-6.12.1/drivers/interconnect/samsung/ |
D | exynos.c | 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() 123 provider->xlate = exynos_generic_icc_xlate; in exynos_generic_icc_probe() 124 provider->dev = bus_dev; in exynos_generic_icc_probe() 125 provider->inter_set = true; in exynos_generic_icc_probe() [all …]
|
/linux-6.12.1/include/linux/ |
D | interconnect-provider.h | 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); 125 void icc_provider_init(struct icc_provider *provider); 126 int icc_provider_register(struct icc_provider *provider); 127 void icc_provider_deregister(struct icc_provider *provider); 153 static inline void icc_node_add(struct icc_node *node, struct icc_provider *provider) in icc_node_add() argument 161 static inline int icc_nodes_remove(struct icc_provider *provider) in icc_nodes_remove() argument 166 static inline void icc_provider_init(struct icc_provider *provider) { } in icc_provider_init() argument 168 static inline int icc_provider_register(struct icc_provider *provider) in icc_provider_register() argument [all …]
|
/linux-6.12.1/drivers/virt/coco/ |
D | tsm.c | 18 } provider; variable 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() 376 if (!provider.ops) in tsm_report_is_visible() 379 if (!provider.ops->report_attr_visible) in tsm_report_is_visible() 382 return provider.ops->report_attr_visible(n); in tsm_report_is_visible() [all …]
|
/linux-6.12.1/drivers/memory/tegra/ |
D | tegra186-emc.c | 35 struct icc_provider provider; member 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() 272 icc_provider_init(&emc->provider); in tegra_emc_interconnect_init() [all …]
|
/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 关联的设备树节点通常包含一组子节点,每个子节点代表一个 93 在 phy_ops 中,PHY provider驱动程序在创建 PHY 后使用 phy_set_drvdata() 185 (PHY provider 设备)的设备的子设备。 188 调用 PHY provider 设备的 pm_runtime_get_sync。还应注意,
|
/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/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/ |
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 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 91 .. kernel-doc:: include/linux/pwrseq/provider.h
|
/linux-6.12.1/drivers/phy/broadcom/ |
D | phy-bcm-ns2-pcie.c | 46 struct phy_provider *provider; in ns2_pci_phy_probe() local 57 provider = devm_of_phy_provider_register(&phy->dev, in ns2_pci_phy_probe() 59 if (IS_ERR(provider)) { in ns2_pci_phy_probe() 61 return PTR_ERR(provider); in ns2_pci_phy_probe()
|
/linux-6.12.1/drivers/phy/marvell/ |
D | phy-mmp3-hsic.c | 44 struct phy_provider *provider; in mmp3_hsic_phy_probe() local 59 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() 62 return PTR_ERR(provider); in mmp3_hsic_phy_probe()
|
/linux-6.12.1/drivers/gpu/drm/ |
D | drm_privacy_screen_x86.c | 66 .provider = "privacy_screen-thinkpad_acpi", 76 .provider = "privacy_screen-GOOG0010:00", 92 arch_init_data[i].lookup.provider); in drm_privacy_screen_lookup_init() 103 if (arch_lookup.provider) in drm_privacy_screen_lookup_exit()
|
/linux-6.12.1/drivers/pci/ |
D | p2pdma.c | 31 struct pci_dev *provider; member 199 rcu_dereference_protected(pgmap->provider->p2pdma, 1); in p2pdma_page_free() 323 p2p_pgmap->provider = pdev; in pci_p2pdma_add_resource() 575 calc_map_type_and_dist(struct pci_dev *provider, struct pci_dev *client, in calc_map_type_and_dist() argument 579 struct pci_dev *a = provider, *b = client, *bb; in calc_map_type_and_dist() 645 pci_name(provider)); in calc_map_type_and_dist() 653 !host_bridge_whitelist(provider, client, acs_redirects)) { in calc_map_type_and_dist() 656 pci_name(provider)); in calc_map_type_and_dist() 661 p2pdma = rcu_dereference(provider->p2pdma); in calc_map_type_and_dist() 686 int pci_p2pdma_distance_many(struct pci_dev *provider, struct device **clients, in pci_p2pdma_distance_many() argument [all …]
|
/linux-6.12.1/Documentation/driver-api/pci/ |
D | p2pdma.rst | 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 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 102 be chosen first. If more than one provider is an equal distance away, the 104 truly random). This function returns the PCI device to use for the provider [all …]
|