194274f20SRob Herring# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
294274f20SRob Herring%YAML 1.2
394274f20SRob Herring---
494274f20SRob Herring$id: http://devicetree.org/schemas/opp/opp-v1.yaml#
594274f20SRob Herring$schema: http://devicetree.org/meta-schemas/core.yaml#
694274f20SRob Herring
7*84e85359SKrzysztof Kozlowskititle: Generic OPP (Operating Performance Points) v1
894274f20SRob Herring
994274f20SRob Herringmaintainers:
1094274f20SRob Herring  - Viresh Kumar <viresh.kumar@linaro.org>
1194274f20SRob Herring
1294274f20SRob Herringdescription: |+
1394274f20SRob Herring  Devices work at voltage-current-frequency combinations and some implementations
1494274f20SRob Herring  have the liberty of choosing these. These combinations are called Operating
1594274f20SRob Herring  Performance Points aka OPPs. This document defines bindings for these OPPs
1694274f20SRob Herring  applicable across wide range of devices. For illustration purpose, this document
1794274f20SRob Herring  uses CPU as a device.
1894274f20SRob Herring
1994274f20SRob Herring  This binding only supports voltage-frequency pairs.
2094274f20SRob Herring
2194274f20SRob Herringselect: true
2294274f20SRob Herring
2394274f20SRob Herringproperties:
2494274f20SRob Herring  operating-points:
2594274f20SRob Herring    $ref: /schemas/types.yaml#/definitions/uint32-matrix
2694274f20SRob Herring    items:
2794274f20SRob Herring      items:
2894274f20SRob Herring        - description: Frequency in kHz
2994274f20SRob Herring        - description: Voltage for OPP in uV
3094274f20SRob Herring
3194274f20SRob Herring
3294274f20SRob HerringadditionalProperties: true
3394274f20SRob Herringexamples:
3494274f20SRob Herring  - |
3594274f20SRob Herring    cpus {
3694274f20SRob Herring        #address-cells = <1>;
3794274f20SRob Herring        #size-cells = <0>;
3894274f20SRob Herring
3994274f20SRob Herring        cpu@0 {
4094274f20SRob Herring            compatible = "arm,cortex-a9";
4194274f20SRob Herring            device_type = "cpu";
4294274f20SRob Herring            reg = <0>;
4394274f20SRob Herring            next-level-cache = <&L2>;
4494274f20SRob Herring            operating-points =
4594274f20SRob Herring                /* kHz    uV */
4694274f20SRob Herring                <792000 1100000>,
4794274f20SRob Herring                <396000 950000>,
4894274f20SRob Herring                <198000 850000>;
4994274f20SRob Herring        };
5094274f20SRob Herring    };
5194274f20SRob Herring...
52