soc: mediatek: SVS: introduce MTK SVS
From: | Roger Lu <roger.lu-AT-mediatek.com> | |
To: | Matthias Brugger <matthias.bgg-AT-gmail.com>, Enric Balletbo Serra <eballetbo-AT-gmail.com>, Kevin Hilman <khilman-AT-kernel.org>, Rob Herring <robh+dt-AT-kernel.org>, Nicolas Boichat <drinkcat-AT-google.com>, Stephen Boyd <sboyd-AT-kernel.org>, Philipp Zabel <p.zabel-AT-pengutronix.de> | |
Subject: | [PATCH v16 0/7] soc: mediatek: SVS: introduce MTK SVS | |
Date: | Wed, 28 Apr 2021 14:54:33 +0800 | |
Message-ID: | <20210428065440.3704-1-roger.lu@mediatek.com> | |
Cc: | Fan Chen <fan.chen-AT-mediatek.com>, HenryC Chen <HenryC.Chen-AT-mediatek.com>, YT Lee <yt.lee-AT-mediatek.com>, Xiaoqing Liu <Xiaoqing.Liu-AT-mediatek.com>, Charles Yang <Charles.Yang-AT-mediatek.com>, Angus Lin <Angus.Lin-AT-mediatek.com>, Mark Rutland <mark.rutland-AT-arm.com>, Nishanth Menon <nm-AT-ti.com>, Roger Lu <roger.lu-AT-mediatek.com>, devicetree-AT-vger.kernel.org, linux-arm-kernel-AT-lists.infradead.org, linux-mediatek-AT-lists.infradead.org, linux-kernel-AT-vger.kernel.org, linux-pm-AT-vger.kernel.org, Project_Global_Chrome_Upstream_Group-AT-mediatek.com | |
Archive-link: | Article |
1. SVS driver uses OPP adjust event in [1] to update OPP table voltage part. 2. SVS driver gets thermal/GPU device by node [2][3] and CPU device by get_cpu_device(). After retrieving subsys device, SVS driver calls device_link_add() to make sure probe/suspend callback priority. 3. SVS dts refers to reset controller [4] to help reset SVS HW. #mt8183 SVS related patches [1] https://patchwork.kernel.org/patch/11193513/ [2] https://patchwork.kernel.org/project/linux-mediatek/patch... [3] https://patchwork.kernel.org/project/linux-mediatek/patch... #mt8192 SVS related patches [1] https://patchwork.kernel.org/patch/11193513/ [2] https://patchwork.kernel.org/project/linux-mediatek/patch... [3] https://lore.kernel.org/patchwork/patch/1360551/ [4] https://patchwork.kernel.org/project/linux-mediatek/patch... changes since v15: - Put (*set_freqs_pct) and (*get_vops) in struct svs_bank because they are part of svs bank's operation - Add define "SVSB_INIT02_RM_DVTFIXED" and "SVSB_MON_VOLT_IGNORE" to make control clearly. - Remove unnecessary parenthesis Roger Lu (7): [v16,1/7] dt-bindings: soc: mediatek: add mtk svs dt-bindings [v16,2/7] arm64: dts: mt8183: add svs device information [v16,3/7] soc: mediatek: SVS: introduce MTK SVS engine [v16,4/7] soc: mediatek: SVS: add debug commands [v16,5/7] dt-bindings: soc: mediatek: add mt8192 svs dt-bindings [v16,6/7] arm64: dts: mt8192: add svs device information [v16,7/7] soc: mediatek: SVS: add mt8192 SVS GPU driver .../bindings/soc/mediatek/mtk-svs.yaml | 92 + arch/arm64/boot/dts/mediatek/mt8183.dtsi | 18 + arch/arm64/boot/dts/mediatek/mt8192.dtsi | 34 + drivers/soc/mediatek/Kconfig | 10 + drivers/soc/mediatek/Makefile | 1 + drivers/soc/mediatek/mtk-svs.c | 2524 +++++++++++++++++ 6 files changed, 2679 insertions(+) create mode 100644 Documentation/devicetree/bindings/soc/mediatek/mtk-svs.yaml create mode 100644 drivers/soc/mediatek/mtk-svs.c