Re: [PATCH 5/5] arm64: dts: mediatek: mt8390-genio-700-evk: Enable Mali GPU

AngeloGioacchino Del Regno
2024-09-23T08:45:54Z

Il 20/09/24 15:41, Pablo Sun ha scritto:
> Configure GPU regulator supplies and enable GPU for GENIO 700 EVK.
>
> The GPU in MT8390 & MT8188 has two power inputs: "DVDD_GPU" and
> "DVDD_SRAM_GPU". In Genio 700 EVK, DVDD_GPU is supplied by
> mt6359_vproc2_buck_reg, and DVDD_SRAM_GPU is supplied by
> mt6359_vsram_others_ldo_reg.
>
> According to section 5.2 "Recommended Operating Conditions" in
> MT8390 IoT Application Processor Datasheet v1.9, The recommended
> operating voltage ranges are:
>
> - DVDD_GPU: min 0.55V, max 0.86V, typical 0.75V
> - DVDD_SRAM_GPU: min 0.71V, max 0.92V, typical 0.85V
>
> In this commit, we set DVDD_SRAM_GPU to typical 0.85V. It is possbile
> to couple it to the DVDD_GPU in future patches.
>
> Signed-off-by: Pablo Sun <pablo.sun@mediatek.com>

Is there any real difference between MT8390 and MT8188 in terms of the GPU OPPs?

I see that on MT8188, frequencies up to 880MHz want a DVDD_SRAM_GPU of 0.750V,
then 0.775/0.762/0.750 (bin1-4/5/6) on 915MHz, and 0.800/0.775/0.750 (bin1-4/5/6)
on 950MHz.

Those never call for 0.850V...! So is MT8188 (Chromebooks) wrong, or is MT8390
different in that?

Cheers,
Angelo

> ---
> .../dts/mediatek/mt8390-genio-700-evk.dts | 24 +++++++++++++++++++
> 1 file changed, 24 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/mediatek/mt8390-genio-700-evk.dts b/arch/arm64/boot/dts/mediatek/mt8390-genio-700-evk.dts
> index 1474bef7e754..a1d6f4cd4e5f 100644
> --- a/arch/arm64/boot/dts/mediatek/mt8390-genio-700-evk.dts
> +++ b/arch/arm64/boot/dts/mediatek/mt8390-genio-700-evk.dts
> @@ -190,6 +190,11 @@ usb_p2_vbus: regulator-10 {
> };
> };
>
> +&gpu {
> + mali-supply = <&mt6359_vproc2_buck_reg>;
> + status = "okay";
> +};
> +
> &i2c0 {
> pinctrl-names = "default";
> pinctrl-0 = <&i2c0_pins>;
> @@ -253,6 +258,14 @@ &i2c6 {
> status = "okay";
> };
>
> +&mfg0 {
> + domain-supply = <&mt6359_vproc2_buck_reg>;
> +};
> +
> +&mfg1 {
> + domain-supply = <&mt6359_vsram_others_ldo_reg>;
> +};
> +
> &mmc0 {
> status = "okay";
> pinctrl-names = "default", "state_uhs";
> @@ -314,6 +327,11 @@ &mt6359_vpa_buck_reg {
> regulator-max-microvolt = <3100000>;
> };
>
> +&mt6359_vproc2_buck_reg {
> + regulator-min-microvolt = <550000>;
> + regulator-max-microvolt = <860000>;
> +};
> +
> &mt6359_vpu_buck_reg {
> regulator-always-on;
> };
> @@ -326,6 +344,12 @@ &mt6359_vsim1_ldo_reg {
> regulator-enable-ramp-delay = <480>;
> };
>
> +/* for GPU SRAM */
> +&mt6359_vsram_others_ldo_reg {
> + regulator-min-microvolt = <850000>;
> + regulator-max-microvolt = <850000>;
> +};
> +
> &mt6359_vufs_ldo_reg {
> regulator-always-on;
> };