[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <75216e0c-9d36-7ada-1507-1bb4a91a3326@systemli.org>
Date: Fri, 2 Dec 2022 13:37:26 +0100
From: Nick <vincent@...temli.org>
To: AngeloGioacchino Del Regno
<angelogioacchino.delregno@...labora.com>, viresh.kumar@...aro.org
Cc: rafael@...nel.org, matthias.bgg@...il.com,
jia-wei.chang@...iatek.com, rex-bc.chen@...iatek.com,
linux-pm@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org,
linux-mediatek@...ts.infradead.org, frank-w@...lic-files.de,
daniel@...rotopia.org
Subject: Re: [PATCH] cpufreq: mediatek: Raise proc and sram max voltage for
MT7622/7623
It now starts, however, with a lot of those messages (I applied the
patch to linux/master and not to linux-next, because next is currently
not compiling anymore for me):
> [ 10.777041] cpufreq: __target_index: Failed to change cpu
> frequency: -22
> [ 10.791577] cpu cpu0: cpu0: failed to scale up voltage!
The complete log:
https://gist.githubusercontent.com/PolynomialDivision/267c83c7a21a359cbb4e8d99d0303201/raw/28d3568a26634bebef2d91ebe37fc5f76ae58add/mt7622-patch-cpufreq.log
Bests
Nick
On 12/2/22 10:52, AngeloGioacchino Del Regno wrote:
> During the addition of SRAM voltage tracking for CCI scaling, this
> driver got some voltage limits set for the vtrack algorithm: these
> were moved to platform data first, then enforced in a later commit
> 6a17b3876bc8 ("cpufreq: mediatek: Refine mtk_cpufreq_voltage_tracking()")
> using these as max values for the regulator_set_voltage() calls.
>
> In this case, the vsram/vproc constraints for MT7622 and MT7623
> were supposed to be the same as MT2701 (and a number of other SoCs),
> but that turned out to be a mistake because the aforementioned two
> SoCs' maximum voltage for both VPROC and VPROC_SRAM is 1.36V.
>
> Fix that by adding new platform data for MT7622/7623 declaring the
> right {proc,sram}_max_volt parameter.
>
> Fixes: ead858bd128d ("cpufreq: mediatek: Move voltage limits to platform data")
> Fixes: 6a17b3876bc8 ("cpufreq: mediatek: Refine mtk_cpufreq_voltage_tracking()")
> Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@...labora.com>
> ---
> drivers/cpufreq/mediatek-cpufreq.c | 13 +++++++++++--
> 1 file changed, 11 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/cpufreq/mediatek-cpufreq.c b/drivers/cpufreq/mediatek-cpufreq.c
> index 7f2680bc9a0f..f9a9f08c75c4 100644
> --- a/drivers/cpufreq/mediatek-cpufreq.c
> +++ b/drivers/cpufreq/mediatek-cpufreq.c
> @@ -695,6 +695,15 @@ static const struct mtk_cpufreq_platform_data mt2701_platform_data = {
> .ccifreq_supported = false,
> };
>
> +static const struct mtk_cpufreq_platform_data mt7622_platform_data = {
> + .min_volt_shift = 100000,
> + .max_volt_shift = 200000,
> + .proc_max_volt = 1360000,
> + .sram_min_volt = 0,
> + .sram_max_volt = 1360000,
> + .ccifreq_supported = false,
> +};
> +
> static const struct mtk_cpufreq_platform_data mt8183_platform_data = {
> .min_volt_shift = 100000,
> .max_volt_shift = 200000,
> @@ -717,8 +726,8 @@ static const struct mtk_cpufreq_platform_data mt8186_platform_data = {
> static const struct of_device_id mtk_cpufreq_machines[] __initconst = {
> { .compatible = "mediatek,mt2701", .data = &mt2701_platform_data },
> { .compatible = "mediatek,mt2712", .data = &mt2701_platform_data },
> - { .compatible = "mediatek,mt7622", .data = &mt2701_platform_data },
> - { .compatible = "mediatek,mt7623", .data = &mt2701_platform_data },
> + { .compatible = "mediatek,mt7622", .data = &mt7622_platform_data },
> + { .compatible = "mediatek,mt7623", .data = &mt7622_platform_data },
> { .compatible = "mediatek,mt8167", .data = &mt2701_platform_data },
> { .compatible = "mediatek,mt817x", .data = &mt2701_platform_data },
> { .compatible = "mediatek,mt8173", .data = &mt2701_platform_data },
Powered by blists - more mailing lists