1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
4 $id: http://devicetree.org/schemas/soc/mediatek/mtk-svs.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: MediaTek Smart Voltage Scaling (SVS)
10 - Roger Lu <roger.lu@mediatek.com>
11 - Matthias Brugger <matthias.bgg@gmail.com>
12 - Kevin Hilman <khilman@kernel.org>
15 The SVS engine is a piece of hardware which has several
16 controllers(banks) for calculating suitable voltage to
17 different power domains(CPU/GPU/CCI) according to
18 chip process corner, temperatures and other factors. Then DVFS
19 driver could apply SVS bank voltage to PMIC/Buck.
32 description: Address range of the MTK SVS controller.
39 description: Main clock for MTK SVS controller to work.
47 Phandle to the calibration data provided by a nvmem device.
49 - description: SVS efuse for SVS controller
50 - description: Thermal efuse for SVS controller
54 - const: svs-calibration-data
55 - const: t-calibration-data
73 additionalProperties: false
77 #include <dt-bindings/clock/mt8183-clk.h>
78 #include <dt-bindings/interrupt-controller/arm-gic.h>
79 #include <dt-bindings/interrupt-controller/irq.h>
86 compatible = "mediatek,mt8183-svs";
87 reg = <0 0x1100b000 0 0x1000>;
88 interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_LOW>;
89 clocks = <&infracfg CLK_INFRA_THERM>;
91 nvmem-cells = <&svs_calibration>, <&thermal_calibration>;
92 nvmem-cell-names = "svs-calibration-data", "t-calibration-data";