Home
last modified time | relevance | path

Searched +full:opp +full:- +full:table (Results 1 – 25 of 199) sorted by relevance

12345678

/Linux-v5.15/drivers/opp/
Dof.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Generic OPP OF helpers
5 * Copyright (C) 2009-2010 Texas Instruments Incorporated.
22 #include "opp.h"
25 * Returns opp descriptor node for a device node, caller must
31 /* "operating-points-v2" can be an array for power domain providers */ in _opp_of_get_opp_desc_node()
32 return of_parse_phandle(np, "operating-points-v2", index); in _opp_of_get_opp_desc_node()
35 /* Returns opp descriptor node for a device, caller must do of_node_put() */
38 return _opp_of_get_opp_desc_node(dev->of_node, 0); in dev_pm_opp_of_get_opp_desc_node()
47 np = _opp_of_get_opp_desc_node(dev->of_node, index); in _managed_opp()
[all …]
Dcpu.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Generic OPP helper interface for CPU device
5 * Copyright (C) 2009-2014 Texas Instruments Incorporated.
20 #include "opp.h"
25 * dev_pm_opp_init_cpufreq_table() - create a cpufreq table for a device
27 * @table: Cpufreq table returned back to caller
29 * Generate a cpufreq table for a provided device- this assumes that the
30 * opp table is already initialized and ready for usage.
32 * This function allocates required memory for the cpufreq table. It is
34 * the table as required.
[all …]
Dcore.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Generic OPP Interface
5 * Copyright (C) 2009-2010 Texas Instruments Incorporated.
22 #include "opp.h"
25 * The root of the list of all opp-tables. All opp_table structures branch off
31 /* OPP tables with uninitialized required OPPs */
34 /* Lock to allow exclusive modification to the device and opp lists */
44 mutex_lock(&opp_table->lock); in _find_opp_dev()
45 list_for_each_entry(opp_dev, &opp_table->dev_list, node) in _find_opp_dev()
46 if (opp_dev->dev == dev) { in _find_opp_dev()
[all …]
Dopp.h1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * Generic OPP Interface
5 * Copyright (C) 2009-2010 Texas Instruments Incorporated.
26 /* Lock to allow exclusive modification to the device and opp lists */
32 * Internal data structure organization with the OPP layer library is as
35 * |- device 1 (represents voltage domain 1)
36 * | |- opp 1 (availability, freq, voltage)
37 * | |- opp 2 ..
39 * | `- opp n ..
40 * |- device 2 (represents the next voltage domain)
[all …]
Dti-opp-supply.c1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright (C) 2016-2017 Texas Instruments Incorporated - https://www.ti.com/
5 * Dave Gerlach <d-gerlach@ti.com>
7 * TI OPP supply driver that provides override into the regulator control
8 * for generic opp core to handle devices with ABB regulator and/or
25 * struct ti_opp_supply_optimum_voltage_table - optimized voltage table
35 * struct ti_opp_supply_data - OMAP specific opp supply data
36 * @vdd_table: Optimized voltage mapping table
49 * struct ti_opp_supply_of_data - device tree match data
50 * @flags: specific type of opp supply
[all …]
/Linux-v5.15/Documentation/devicetree/bindings/power/
Dqcom,rpmpd.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Rajendra Nayak <rnayak@codeaurora.org>
19 - qcom,mdm9607-rpmpd
20 - qcom,msm8916-rpmpd
21 - qcom,msm8939-rpmpd
22 - qcom,msm8976-rpmpd
23 - qcom,msm8994-rpmpd
24 - qcom,msm8996-rpmpd
[all …]
Dpower_domain.txt12 #power-domain-cells property in the PM domain provider node.
16 See power-domain.yaml.
21 - power-domains : A list of PM domain specifiers, as defined by bindings of
25 - power-domain-names : A list of power domain name strings sorted in the same
26 order as the power-domains property. Consumers drivers will use
27 power-domain-names to match power domains with power-domains
32 leaky-device@12350000 {
33 compatible = "foo,i-leak-current";
35 power-domains = <&power 0>;
36 power-domain-names = "io";
[all …]
/Linux-v5.15/Documentation/devicetree/bindings/opp/
Dopp-v2-base.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/opp/opp-v2-base.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Generic OPP (Operating Performance Points) Common Binding
10 - Viresh Kumar <viresh.kumar@linaro.org>
13 Devices work at voltage-current-frequency combinations and some implementations
25 pattern: '^opp-table(-[a-z0-9]+)?$'
27 opp-shared:
29 Indicates that device nodes using this OPP Table Node's phandle switch
[all …]
Dopp-v2.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/opp/opp-v2.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Generic OPP (Operating Performance Points) Bindings
10 - Viresh Kumar <viresh.kumar@linaro.org>
13 - $ref: opp-v2-base.yaml#
17 const: operating-points-v2
22 - |
24 * Example 1: Single cluster Dual-core ARM cortex A9, switch DVFS states
[all …]
Dqcom-nvmem-cpufreq.txt1 Qualcomm Technologies, Inc. NVMEM CPUFreq and OPP bindings
5 the CPU frequencies subset and voltage value of each OPP varies based on
8 defines the voltage and frequency value based on the msm-id in SMEM
10 The qcom-cpufreq-nvmem driver reads the msm-id and efuse value from the SoC
11 to provide the OPP framework with required information (existing HW bitmap).
12 This is used to determine the voltage and frequency value for each OPP of
13 operating-points-v2 table when it is parsed by the OPP framework.
16 --------------------
18 - operating-points-v2: Phandle to the operating-points-v2 table to use.
20 In 'operating-points-v2' table:
[all …]
/Linux-v5.15/Documentation/devicetree/bindings/cpufreq/
Dti-cpufreq.txt1 TI CPUFreq and OPP bindings
6 The ti-cpufreq driver can use revision and an efuse value from the SoC to
7 provide the OPP framework with supported hardware information. This is
8 used to determine which OPPs from the operating-points-v2 table get enabled
9 when it is parsed by the OPP framework.
12 --------------------
14 - operating-points-v2: Phandle to the operating-points-v2 table to use.
16 In 'operating-points-v2' table:
17 - compatible: Should be
18 - 'operating-points-v2-ti-cpu' for am335x, am43xx, and dra7xx/am57xx,
[all …]
/Linux-v5.15/drivers/soc/tegra/
Dcommon.c1 // SPDX-License-Identifier: GPL-2.0-only
6 #define dev_fmt(fmt) "tegra-soc: " fmt
57 return -EINVAL; in tegra_core_dev_init_opp_state()
60 /* first dummy rate-setting initializes voltage vote */ in tegra_core_dev_init_opp_state()
63 dev_err(dev, "failed to initialize OPP clock: %d\n", err); in tegra_core_dev_init_opp_state()
71 * devm_tegra_core_dev_init_opp_table() - initialize OPP table
72 * @dev: device for which OPP table is initialized
73 * @params: pointer to the OPP table configuration
75 * This function will initialize OPP table and sync OPP state of a Tegra SoC
88 dev_err(dev, "failed to set OPP clk: %d\n", err); in devm_tegra_core_dev_init_opp_table()
[all …]
/Linux-v5.15/arch/arm64/boot/dts/amlogic/
Dmeson-g12b-s922x.dtsi1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
7 #include "meson-g12b.dtsi"
10 cpu_opp_table_0: opp-table-0 {
11 compatible = "operating-points-v2";
12 opp-shared;
14 opp-100000000 {
15 opp-hz = /bits/ 64 <100000000>;
16 opp-microvolt = <731000>;
19 opp-250000000 {
20 opp-hz = /bits/ 64 <250000000>;
[all …]
Dmeson-g12b-a311d.dtsi1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
7 #include "meson-g12b.dtsi"
10 cpu_opp_table_0: opp-table-0 {
11 compatible = "operating-points-v2";
12 opp-shared;
14 opp-100000000 {
15 opp-hz = /bits/ 64 <100000000>;
16 opp-microvolt = <731000>;
19 opp-250000000 {
20 opp-hz = /bits/ 64 <250000000>;
[all …]
Dmeson-gx-mali450.dtsi1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
8 gpu_opp_table: opp-table {
9 compatible = "operating-points-v2";
11 opp-125000000 {
12 opp-hz = /bits/ 64 <125000000>;
13 opp-microvolt = <950000>;
15 opp-250000000 {
16 opp-hz = /bits/ 64 <250000000>;
17 opp-microvolt = <950000>;
19 opp-285714285 {
[all …]
/Linux-v5.15/drivers/devfreq/
Dgovernor_passive.c1 // SPDX-License-Identifier: GPL-2.0-only
19 = (struct devfreq_passive_data *)devfreq->data; in devfreq_passive_get_target_freq()
20 struct devfreq *parent_devfreq = (struct devfreq *)p_data->parent; in devfreq_passive_get_target_freq()
22 struct dev_pm_opp *opp, *p_opp; in devfreq_passive_get_target_freq() local
30 if (p_data->get_target_freq) in devfreq_passive_get_target_freq()
31 return p_data->get_target_freq(devfreq, freq); in devfreq_passive_get_target_freq()
34 * If the parent and passive devfreq device uses the OPP table, in devfreq_passive_get_target_freq()
35 * get the next frequency by using the OPP table. in devfreq_passive_get_target_freq()
39 * - parent devfreq device uses the governors except for passive. in devfreq_passive_get_target_freq()
40 * - passive devfreq device uses the passive governor. in devfreq_passive_get_target_freq()
[all …]
/Linux-v5.15/drivers/cpufreq/
Dqcom-cpufreq-hw.c1 // SPDX-License-Identifier: GPL-2.0
44 * Mutex to synchronize between de-init sequence and re-starting LMh
61 struct dev_pm_opp *opp; in qcom_cpufreq_set_bw() local
65 dev = get_cpu_device(policy->cpu); in qcom_cpufreq_set_bw()
67 return -ENODEV; in qcom_cpufreq_set_bw()
69 opp = dev_pm_opp_find_freq_exact(dev, freq_hz, true); in qcom_cpufreq_set_bw()
70 if (IS_ERR(opp)) in qcom_cpufreq_set_bw()
71 return PTR_ERR(opp); in qcom_cpufreq_set_bw()
73 ret = dev_pm_opp_set_opp(dev, opp); in qcom_cpufreq_set_bw()
74 dev_pm_opp_put(opp); in qcom_cpufreq_set_bw()
[all …]
/Linux-v5.15/arch/arm/boot/dts/
Domap34xx.dtsi4 * Copyright (C) 2013 Texas Instruments Incorporated - https://www.ti.com/
11 #include <dt-bindings/bus/ti-sysc.h>
12 #include <dt-bindings/media/omap3-isp.h>
19 /* OMAP343x/OMAP35xx variants OPP1-6 */
20 operating-points-v2 = <&cpu0_opp_table>;
22 clock-latency = <300000>; /* From legacy driver */
23 #cooling-cells = <2>;
27 cpu0_opp_table: opp-table {
28 compatible = "operating-points-v2-ti-cpu";
31 opp1-125000000 {
[all …]
Domap36xx.dtsi4 * Copyright (C) 2012 Texas Instruments Incorporated - https://www.ti.com/
11 #include <dt-bindings/bus/ti-sysc.h>
12 #include <dt-bindings/media/omap3-isp.h>
24 operating-points-v2 = <&cpu0_opp_table>;
26 vbb-supply = <&abb_mpu_iva>;
27 clock-latency = <300000>; /* From omap-cpufreq driver */
28 #cooling-cells = <2>;
32 cpu0_opp_table: opp-table {
33 compatible = "operating-points-v2-ti-cpu";
36 opp50-300000000 {
[all …]
/Linux-v5.15/Documentation/devicetree/bindings/gpu/
Darm,mali-midgard.yaml1 # SPDX-License-Identifier: GPL-2.0-only
3 ---
4 $id: http://devicetree.org/schemas/gpu/arm,mali-midgard.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Rob Herring <robh@kernel.org>
14 pattern: '^gpu@[a-f0-9]+$'
17 - items:
18 - enum:
19 - samsung,exynos5250-mali
20 - const: arm,mali-t604
[all …]
/Linux-v5.15/drivers/thermal/
Ddevfreq_cooling.c1 // SPDX-License-Identifier: GPL-2.0
6 * Copyright (C) 2014-2015 ARM Limited
9 * - If OPPs are added or removed after devfreq cooling has
28 * struct devfreq_cooling_device - Devfreq cooling device
33 * @freq_table: Pointer to a table with the frequencies sorted in descending
34 * order. You can index the table by cooling device state
65 struct devfreq_cooling_device *dfc = cdev->devdata; in devfreq_cooling_get_max_state()
67 *state = dfc->max_state; in devfreq_cooling_get_max_state()
75 struct devfreq_cooling_device *dfc = cdev->devdata; in devfreq_cooling_get_cur_state()
77 *state = dfc->cooling_state; in devfreq_cooling_get_cur_state()
[all …]
/Linux-v5.15/arch/arm64/boot/dts/qcom/
Dsdm660.dtsi1 // SPDX-License-Identifier: GPL-2.0-only
13 compatible = "qcom,adreno-512.0", "qcom,adreno";
14 operating-points-v2 = <&gpu_sdm660_opp_table>;
16 gpu_sdm660_opp_table: opp-table {
17 compatible = "operating-points-v2";
23 * at the same opp-level
25 opp-750000000 {
26 opp-hz = /bits/ 64 <750000000>;
27 opp-level = <RPM_SMD_LEVEL_TURBO>;
28 opp-peak-kBps = <5412000>;
[all …]
Dmsm8996-v3.0.dtsi1 // SPDX-License-Identifier: BSD-3-Clause
9 qcom,msm-id = <246 0x30000>;
22 gpu_opp_table_3_0: gpu-opp-table-30 {
23 compatible = "operating-points-v2";
25 opp-624000000 {
26 opp-hz = /bits/ 64 <624000000>;
27 opp-level = <7>;
30 opp-560000000 {
31 opp-hz = /bits/ 64 <560000000>;
32 opp-level = <6>;
[all …]
/Linux-v5.15/Documentation/power/
Dopp.rst2 Operating Performance Points (OPP) Library
5 (C) 2009-2010 Nishanth Menon <nm@ti.com>, Texas Instruments Incorporated
10 2. Initial OPP List Registration
11 3. OPP Search Functions
12 4. OPP Availability Control Functions
13 5. OPP Data Retrieval Functions
19 1.1 What is an Operating Performance Point (OPP)?
20 -------------------------------------------------
22 Complex SoCs of today consists of a multiple sub-modules working in conjunction.
25 facilitate this, sub-modules in a SoC are grouped into domains, allowing some
[all …]
/Linux-v5.15/Documentation/devicetree/bindings/power/avs/
Dqcom,cpr.txt4 or other device. Each OPP of a device corresponds to a "corner" that has
10 - compatible:
13 Definition: should be "qcom,qcs404-cpr", "qcom,cpr" for qcs404
15 - reg:
17 Value type: <prop-encoded-array>
20 - interrupts:
22 Value type: <prop-encoded-array>
25 - clocks:
27 Value type: <prop-encoded-array>
30 - clock-names:
[all …]

12345678