mirror of
https://github.com/torvalds/linux.git
synced 2026-05-23 22:52:19 +02:00
dt-bindings: soc: mediatek: Add DVFSRC bindings for MT8183 and MT8195
Add bindings for the MediaTek Dynamic Voltage and Frequency Scaling Resource Collector (DVFSRC), a hardware module used to collect all the requests from both software and the various remote processors embedded into the SoC and decide about a minimum operating voltage and a minimum DRAM frequency to fulfill those requests in an effort to provide the best achievable performance per watt. This hardware IP is capable of transparently performing direct register R/W on all of the DVFSRC-controlled regulators and SoC bandwidth knobs. Reviewed-by: Rob Herring (Arm) <robh@kernel.org> Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
This commit is contained in:
parent
9852d85ec9
commit
e8b259e377
|
|
@ -0,0 +1,83 @@
|
|||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/soc/mediatek/mediatek,mt8183-dvfsrc.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: MediaTek Dynamic Voltage and Frequency Scaling Resource Collector (DVFSRC)
|
||||
|
||||
description:
|
||||
The Dynamic Voltage and Frequency Scaling Resource Collector (DVFSRC) is a
|
||||
Hardware module used to collect all the requests from both software and the
|
||||
various remote processors embedded into the SoC and decide about a minimum
|
||||
operating voltage and a minimum DRAM frequency to fulfill those requests in
|
||||
an effort to provide the best achievable performance per watt.
|
||||
This hardware IP is capable of transparently performing direct register R/W
|
||||
on all of the DVFSRC-controlled regulators and SoC bandwidth knobs.
|
||||
|
||||
maintainers:
|
||||
- AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
|
||||
- Henry Chen <henryc.chen@mediatek.com>
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
oneOf:
|
||||
- enum:
|
||||
- mediatek,mt8183-dvfsrc
|
||||
- mediatek,mt8195-dvfsrc
|
||||
- items:
|
||||
- const: mediatek,mt8192-dvfsrc
|
||||
- const: mediatek,mt8195-dvfsrc
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
description: DVFSRC common register address and length.
|
||||
|
||||
regulators:
|
||||
type: object
|
||||
$ref: /schemas/regulator/mediatek,mt6873-dvfsrc-regulator.yaml#
|
||||
|
||||
interconnect:
|
||||
type: object
|
||||
$ref: /schemas/interconnect/mediatek,mt8183-emi.yaml#
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
soc {
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
|
||||
system-controller@10012000 {
|
||||
compatible = "mediatek,mt8195-dvfsrc";
|
||||
reg = <0 0x10012000 0 0x1000>;
|
||||
|
||||
regulators {
|
||||
compatible = "mediatek,mt8195-dvfsrc-regulator";
|
||||
|
||||
dvfsrc_vcore: dvfsrc-vcore {
|
||||
regulator-name = "dvfsrc-vcore";
|
||||
regulator-min-microvolt = <550000>;
|
||||
regulator-max-microvolt = <750000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
dvfsrc_vscp: dvfsrc-vscp {
|
||||
regulator-name = "dvfsrc-vscp";
|
||||
regulator-min-microvolt = <550000>;
|
||||
regulator-max-microvolt = <750000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
|
||||
emi_icc: interconnect {
|
||||
compatible = "mediatek,mt8195-emi";
|
||||
#interconnect-cells = <1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
Loading…
Reference in New Issue
Block a user