Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

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 <saravanak@google.com>
Signed-off-by: Saravana Kannan <saravanak@google.com>
Signed-off-by: David Dai <davidai@google.com>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>

authored by

David Dai and committed by
Viresh Kumar
984638e4 5f856d71

+48
+48
Documentation/devicetree/bindings/cpufreq/qemu,virtual-cpufreq.yaml
··· 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 <davidai@google.com> 11 + - Saravana Kannan <saravanak@google.com> 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 + };