Path: blob/master/Documentation/devicetree/bindings/cpufreq/apple,cluster-cpufreq.yaml
26308 views
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause1%YAML 1.22---3$id: http://devicetree.org/schemas/cpufreq/apple,cluster-cpufreq.yaml#4$schema: http://devicetree.org/meta-schemas/core.yaml#56title: Apple SoC cluster cpufreq device78maintainers:9- Hector Martin <marcan@marcan.st>1011description: |12Apple SoCs (e.g. M1) have a per-cpu-cluster DVFS controller that is part of13the cluster management register block. This binding uses the standard14operating-points-v2 table to define the CPU performance states, with the15opp-level property specifying the hardware p-state index for that level.1617properties:18compatible:19oneOf:20- items:21- enum:22- apple,t8103-cluster-cpufreq23- apple,t8112-cluster-cpufreq24- const: apple,cluster-cpufreq25- items:26- enum:27- apple,s8000-cluster-cpufreq28- apple,t8010-cluster-cpufreq29- apple,t8015-cluster-cpufreq30- apple,t6000-cluster-cpufreq31- const: apple,t8103-cluster-cpufreq32- const: apple,cluster-cpufreq33- items:34- const: apple,t7000-cluster-cpufreq35- const: apple,s5l8960x-cluster-cpufreq36- const: apple,s5l8960x-cluster-cpufreq3738reg:39maxItems: 14041'#performance-domain-cells':42const: 04344required:45- compatible46- reg47- '#performance-domain-cells'4849additionalProperties: false5051examples:52- |53// This example shows a single CPU per domain and 2 domains,54// with two p-states per domain.55// Shipping hardware has 2-4 CPUs per domain and 2-6 domains.56cpus {57#address-cells = <2>;58#size-cells = <0>;5960cpu@0 {61compatible = "apple,icestorm";62device_type = "cpu";63reg = <0x0 0x0>;64operating-points-v2 = <&ecluster_opp>;65performance-domains = <&cpufreq_e>;66};6768cpu@10100 {69compatible = "apple,firestorm";70device_type = "cpu";71reg = <0x0 0x10100>;72operating-points-v2 = <&pcluster_opp>;73performance-domains = <&cpufreq_p>;74};75};7677ecluster_opp: opp-table-0 {78compatible = "operating-points-v2";79opp-shared;8081opp01 {82opp-hz = /bits/ 64 <600000000>;83opp-level = <1>;84clock-latency-ns = <7500>;85};86opp02 {87opp-hz = /bits/ 64 <972000000>;88opp-level = <2>;89clock-latency-ns = <22000>;90};91};9293pcluster_opp: opp-table-1 {94compatible = "operating-points-v2";95opp-shared;9697opp01 {98opp-hz = /bits/ 64 <600000000>;99opp-level = <1>;100clock-latency-ns = <8000>;101};102opp02 {103opp-hz = /bits/ 64 <828000000>;104opp-level = <2>;105clock-latency-ns = <19000>;106};107};108109soc {110#address-cells = <2>;111#size-cells = <2>;112113cpufreq_e: performance-controller@210e20000 {114compatible = "apple,t8103-cluster-cpufreq", "apple,cluster-cpufreq";115reg = <0x2 0x10e20000 0 0x1000>;116#performance-domain-cells = <0>;117};118119cpufreq_p: performance-controller@211e20000 {120compatible = "apple,t8103-cluster-cpufreq", "apple,cluster-cpufreq";121reg = <0x2 0x11e20000 0 0x1000>;122#performance-domain-cells = <0>;123};124};125126127