56 lines
1.3 KiB
YAML
56 lines
1.3 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/cpufreq/airoha,en7581-cpufreq.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Airoha EN7581 CPUFreq
|
|
|
|
maintainers:
|
|
- Christian Marangi <ansuelsmth@gmail.com>
|
|
|
|
description: |
|
|
On newer Airoha SoC, CPU Frequency is scaled indirectly with SMC commands
|
|
to ATF.
|
|
|
|
A virtual clock is exposed. This virtual clock is a get-only clock and
|
|
is used to expose the current global CPU clock. The frequency info comes
|
|
by the output of the SMC command that reports the clock in MHz.
|
|
|
|
The SMC sets the CPU clock by providing an index, this is modelled as
|
|
performance states in a power domain.
|
|
|
|
CPUs can't be individually scaled as the CPU frequency is shared across
|
|
all CPUs and is global.
|
|
|
|
properties:
|
|
compatible:
|
|
const: airoha,en7581-cpufreq
|
|
|
|
'#clock-cells':
|
|
const: 0
|
|
|
|
'#power-domain-cells':
|
|
const: 0
|
|
|
|
operating-points-v2: true
|
|
|
|
required:
|
|
- compatible
|
|
- '#clock-cells'
|
|
- '#power-domain-cells'
|
|
- operating-points-v2
|
|
|
|
additionalProperties: false
|
|
|
|
examples:
|
|
- |
|
|
performance-domain {
|
|
compatible = "airoha,en7581-cpufreq";
|
|
|
|
operating-points-v2 = <&cpu_smcc_opp_table>;
|
|
|
|
#power-domain-cells = <0>;
|
|
#clock-cells = <0>;
|
|
};
|