Skip to content

Commit 984638e

Browse files
daidavid1vireshk
authored andcommitted
dt-bindings: cpufreq: add virtual cpufreq device
Adding bindings to represent a virtual cpufreq device. Virtual machines may expose MMIO regions for a virtual cpufreq device for guests to read performance information or to request performance selection. The virtual cpufreq device has an individual controller for each performance domain. Performance points for a given domain can be normalized across all domains for ease of allowing for virtual machines to migrate between hosts. Co-developed-by: Saravana Kannan <[email protected]> Signed-off-by: Saravana Kannan <[email protected]> Signed-off-by: David Dai <[email protected]> Reviewed-by: Rob Herring (Arm) <[email protected]> Signed-off-by: Viresh Kumar <[email protected]>
1 parent 5f856d7 commit 984638e

File tree

1 file changed

+48
-0
lines changed

1 file changed

+48
-0
lines changed
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/cpufreq/qemu,virtual-cpufreq.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Virtual CPUFreq
8+
9+
maintainers:
10+
- David Dai <[email protected]>
11+
- Saravana Kannan <[email protected]>
12+
13+
description:
14+
Virtual CPUFreq is a virtualized driver in guest kernels that sends performance
15+
selection of its vCPUs as a hint to the host through MMIO regions. Each vCPU
16+
is associated with a performance domain which can be shared with other vCPUs.
17+
Each performance domain has its own set of registers for performance controls.
18+
19+
properties:
20+
compatible:
21+
const: qemu,virtual-cpufreq
22+
23+
reg:
24+
maxItems: 1
25+
description:
26+
Address and size of region containing performance controls for each of the
27+
performance domains. Regions for each performance domain is placed
28+
contiguously and contain registers for controlling DVFS(Dynamic Frequency
29+
and Voltage) characteristics. The size of the region is proportional to
30+
total number of performance domains.
31+
32+
required:
33+
- compatible
34+
- reg
35+
36+
additionalProperties: false
37+
38+
examples:
39+
- |
40+
soc {
41+
#address-cells = <1>;
42+
#size-cells = <1>;
43+
44+
cpufreq@1040000 {
45+
compatible = "qemu,virtual-cpufreq";
46+
reg = <0x1040000 0x2000>;
47+
};
48+
};

0 commit comments

Comments
 (0)