From: Conor Dooley <conor@kernel.org>
To: christian.koever-draxl@student.uibk.ac.at
Cc: robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org,
neil.armstrong@linaro.org, khilman@baylibre.com,
jbrunet@baylibre.com, martin.blumenstingl@googlemail.com,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-amlogic@lists.infradead.org,
"Christian Stefan Kövér-Draxl" <ckoever@outlook.de>
Subject: Re: [PATCH 05/10] arm64: dts: amlogic: meson-s4: add the Mali GPU
Date: Fri, 6 Nov 2026 17:18:39 +0000 [thread overview]
Message-ID: <20261106-tutor-multitude-5dc61fce86c7@spud> (raw)
In-Reply-To: <20261106104659.54656-6-christian.koever-draxl@student.uibk.ac.at>
[-- Attachment #1.1: Type: text/plain, Size: 3113 bytes --]
On Fri, Nov 06, 2026 at 11:46:54AM +0100, christian.koever-draxl@student.uibk.ac.at wrote:
> From: Christian Stefan Kövér-Draxl <ckoever@outlook.de>
>
> Add the Mali-G31 GPU with its operating points. The GPU rail is not
> switchable, so it scales by frequency only, over the fixed fclk derived
> rates the vendor DVFS table uses as well.
>
> Signed-off-by: Christian Stefan Kövér-Draxl <ckoever@outlook.de>
> ---
> arch/arm64/boot/dts/amlogic/meson-s4.dtsi | 55 +++++++++++++++++++++++
> 1 file changed, 55 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/amlogic/meson-s4.dtsi b/arch/arm64/boot/dts/amlogic/meson-s4.dtsi
> index 793c7bb9512e..69105c8abf12 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-s4.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-s4.dtsi
> @@ -126,6 +126,40 @@ vrtc: rtc@fe010288 {
> reg = <0x0 0xfe010288 0x0 0x4>;
> };
>
> + /*
> + * The Mali rail is not switchable on this SoC, so the GPU scales by
> + * frequency alone. Every rate here is one of the fixed fclk dividers,
> + * optionally halved or quartered by the mali divider, which is what
> + * the vendor DVFS table uses as well. Its 850 MHz point is left out
> + * because it needs GP0 PLL, and the mali mux is not allowed to
> + * reprogram its parents.
> + */
> + gpu_opp_table: opp-table-gpu {
> + compatible = "operating-points-v2";
> +
> + opp-124999998 {
> + opp-hz = /bits/ 64 <124999998>;
> + };
> + opp-249999996 {
> + opp-hz = /bits/ 64 <249999996>;
> + };
> + opp-285714281 {
> + opp-hz = /bits/ 64 <285714281>;
> + };
> + opp-399999994 {
> + opp-hz = /bits/ 64 <399999994>;
> + };
> + opp-499999992 {
> + opp-hz = /bits/ 64 <499999992>;
> + };
> + opp-666666656 {
> + opp-hz = /bits/ 64 <666666656>;
> + };
> + opp-799999988 {
> + opp-hz = /bits/ 64 <799999988>;
> + };
> + };
> +
> xtal: xtal-clk {
> compatible = "fixed-clock";
> clock-frequency = <24000000>;
> @@ -164,6 +198,27 @@ soc {
> #size-cells = <2>;
> ranges;
>
> + gpu: gpu@fe400000 {
> + compatible = "amlogic,meson-g12a-mali", "arm,mali-bifrost";
This is an s4, not a g12a. You need to use a soc-specific comaptible.
pw-bot: changes-requested
Thanks,
Conor.
> + reg = <0x0 0xfe400000 0x0 0x40000>;
> + interrupt-names = "job", "mmu", "gpu";
> + interrupts = <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>,
> + <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>,
> + <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>;
> + /*
> + * CLKID_MALI is only the system bus gate. The core is
> + * fed by the glitch-free mali mux, which is the clock
> + * the OPP table scales.
> + */
> + clocks = <&clkc_periphs CLKID_MALI_SEL>,
> + <&clkc_periphs CLKID_MALI>;
> + clock-names = "core", "bus";
> + resets = <&reset RESET_MALI_APB>, <&reset RESET_MALI>;
> + operating-points-v2 = <&gpu_opp_table>;
> + #cooling-cells = <2>;
> + status = "disabled";
> + };
> +
> gic: interrupt-controller@fff01000 {
> compatible = "arm,gic-400";
> #interrupt-cells = <3>;
> --
> 2.56.0
>
[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
[-- Attachment #2: Type: text/plain, Size: 167 bytes --]
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
WARNING: multiple messages have this Message-ID (diff)
From: Conor Dooley <conor@kernel.org>
To: christian.koever-draxl@student.uibk.ac.at
Cc: robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org,
neil.armstrong@linaro.org, khilman@baylibre.com,
jbrunet@baylibre.com, martin.blumenstingl@googlemail.com,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-amlogic@lists.infradead.org,
"Christian Stefan Kövér-Draxl" <ckoever@outlook.de>
Subject: Re: [PATCH 05/10] arm64: dts: amlogic: meson-s4: add the Mali GPU
Date: Fri, 6 Nov 2026 17:18:39 +0000 [thread overview]
Message-ID: <20261106-tutor-multitude-5dc61fce86c7@spud> (raw)
In-Reply-To: <20261106104659.54656-6-christian.koever-draxl@student.uibk.ac.at>
[-- Attachment #1: Type: text/plain, Size: 3113 bytes --]
On Fri, Nov 06, 2026 at 11:46:54AM +0100, christian.koever-draxl@student.uibk.ac.at wrote:
> From: Christian Stefan Kövér-Draxl <ckoever@outlook.de>
>
> Add the Mali-G31 GPU with its operating points. The GPU rail is not
> switchable, so it scales by frequency only, over the fixed fclk derived
> rates the vendor DVFS table uses as well.
>
> Signed-off-by: Christian Stefan Kövér-Draxl <ckoever@outlook.de>
> ---
> arch/arm64/boot/dts/amlogic/meson-s4.dtsi | 55 +++++++++++++++++++++++
> 1 file changed, 55 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/amlogic/meson-s4.dtsi b/arch/arm64/boot/dts/amlogic/meson-s4.dtsi
> index 793c7bb9512e..69105c8abf12 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-s4.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-s4.dtsi
> @@ -126,6 +126,40 @@ vrtc: rtc@fe010288 {
> reg = <0x0 0xfe010288 0x0 0x4>;
> };
>
> + /*
> + * The Mali rail is not switchable on this SoC, so the GPU scales by
> + * frequency alone. Every rate here is one of the fixed fclk dividers,
> + * optionally halved or quartered by the mali divider, which is what
> + * the vendor DVFS table uses as well. Its 850 MHz point is left out
> + * because it needs GP0 PLL, and the mali mux is not allowed to
> + * reprogram its parents.
> + */
> + gpu_opp_table: opp-table-gpu {
> + compatible = "operating-points-v2";
> +
> + opp-124999998 {
> + opp-hz = /bits/ 64 <124999998>;
> + };
> + opp-249999996 {
> + opp-hz = /bits/ 64 <249999996>;
> + };
> + opp-285714281 {
> + opp-hz = /bits/ 64 <285714281>;
> + };
> + opp-399999994 {
> + opp-hz = /bits/ 64 <399999994>;
> + };
> + opp-499999992 {
> + opp-hz = /bits/ 64 <499999992>;
> + };
> + opp-666666656 {
> + opp-hz = /bits/ 64 <666666656>;
> + };
> + opp-799999988 {
> + opp-hz = /bits/ 64 <799999988>;
> + };
> + };
> +
> xtal: xtal-clk {
> compatible = "fixed-clock";
> clock-frequency = <24000000>;
> @@ -164,6 +198,27 @@ soc {
> #size-cells = <2>;
> ranges;
>
> + gpu: gpu@fe400000 {
> + compatible = "amlogic,meson-g12a-mali", "arm,mali-bifrost";
This is an s4, not a g12a. You need to use a soc-specific comaptible.
pw-bot: changes-requested
Thanks,
Conor.
> + reg = <0x0 0xfe400000 0x0 0x40000>;
> + interrupt-names = "job", "mmu", "gpu";
> + interrupts = <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>,
> + <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>,
> + <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>;
> + /*
> + * CLKID_MALI is only the system bus gate. The core is
> + * fed by the glitch-free mali mux, which is the clock
> + * the OPP table scales.
> + */
> + clocks = <&clkc_periphs CLKID_MALI_SEL>,
> + <&clkc_periphs CLKID_MALI>;
> + clock-names = "core", "bus";
> + resets = <&reset RESET_MALI_APB>, <&reset RESET_MALI>;
> + operating-points-v2 = <&gpu_opp_table>;
> + #cooling-cells = <2>;
> + status = "disabled";
> + };
> +
> gic: interrupt-controller@fff01000 {
> compatible = "arm,gic-400";
> #interrupt-cells = <3>;
> --
> 2.56.0
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
next prev parent reply other threads:[~2026-11-06 17:18 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-06 10:46 [PATCH 00/10] arm64: dts: amlogic: S4 SoC additions and the Amediatech X98Q christian.koever-draxl
2026-11-06 10:46 ` christian.koever-draxl
2026-11-06 10:46 ` [PATCH 01/10] dt-bindings: arm: amlogic: add " christian.koever-draxl
2026-11-06 10:46 ` christian.koever-draxl
2026-11-06 17:17 ` Conor Dooley
2026-11-06 17:17 ` Conor Dooley
2026-11-06 10:46 ` [PATCH 02/10] arm64: dts: amlogic: meson-s4: describe the CPU caches christian.koever-draxl
2026-11-06 10:46 ` christian.koever-draxl
2026-11-06 10:52 ` neil.armstrong
2026-11-06 10:52 ` neil.armstrong
2026-11-06 10:46 ` [PATCH 03/10] arm64: dts: amlogic: meson-s4: add the PSCI CPU idle state christian.koever-draxl
2026-11-06 10:46 ` christian.koever-draxl
2026-11-06 10:54 ` neil.armstrong
2026-11-06 10:54 ` neil.armstrong
2026-11-06 10:46 ` [PATCH 04/10] arm64: dts: amlogic: meson-s4: use the S4 secure monitor compatible christian.koever-draxl
2026-11-06 10:46 ` christian.koever-draxl
2026-11-06 10:54 ` sashiko-bot
2026-11-06 10:54 ` sashiko-bot
2026-11-06 10:46 ` [PATCH 05/10] arm64: dts: amlogic: meson-s4: add the Mali GPU christian.koever-draxl
2026-11-06 10:46 ` christian.koever-draxl
2026-11-06 17:18 ` Conor Dooley [this message]
2026-11-06 17:18 ` Conor Dooley
2026-11-06 10:46 ` [PATCH 06/10] arm64: dts: amlogic: meson-s4: add the CPU thermal sensor and zone christian.koever-draxl
2026-11-06 10:46 ` christian.koever-draxl
2026-11-06 10:53 ` sashiko-bot
2026-11-06 10:53 ` sashiko-bot
2026-11-06 10:46 ` [PATCH 07/10] arm64: dts: amlogic: meson-s4: add the GE2D christian.koever-draxl
2026-11-06 10:46 ` christian.koever-draxl
2026-11-06 10:53 ` sashiko-bot
2026-11-06 10:53 ` sashiko-bot
2026-11-06 10:46 ` [PATCH 08/10] arm64: dts: amlogic: meson-s4: add the USB host christian.koever-draxl
2026-11-06 10:46 ` christian.koever-draxl
2026-11-06 10:55 ` neil.armstrong
2026-11-06 10:55 ` neil.armstrong
2026-11-06 10:59 ` sashiko-bot
2026-11-06 10:59 ` sashiko-bot
2026-11-06 10:46 ` [PATCH 09/10] arm64: dts: amlogic: meson-s4: add the AO CEC controller christian.koever-draxl
2026-11-06 10:46 ` christian.koever-draxl
2026-11-06 10:55 ` neil.armstrong
2026-11-06 10:55 ` neil.armstrong
2026-11-06 17:19 ` Conor Dooley
2026-11-06 17:19 ` Conor Dooley
2026-11-06 10:46 ` [PATCH 10/10] arm64: dts: amlogic: add the Amediatech X98Q christian.koever-draxl
2026-11-06 10:46 ` christian.koever-draxl
2026-11-06 11:00 ` sashiko-bot
2026-11-06 11:00 ` sashiko-bot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20261106-tutor-multitude-5dc61fce86c7@spud \
--to=conor@kernel.org \
--cc=christian.koever-draxl@student.uibk.ac.at \
--cc=ckoever@outlook.de \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=jbrunet@baylibre.com \
--cc=khilman@baylibre.com \
--cc=krzk+dt@kernel.org \
--cc=linux-amlogic@lists.infradead.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=martin.blumenstingl@googlemail.com \
--cc=neil.armstrong@linaro.org \
--cc=robh@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.