All of lore.kernel.org
 help / color / mirror / Atom feed
From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
To: Rex-BC Chen <rex-bc.chen@mediatek.com>,
	rafael@kernel.org, viresh.kumar@linaro.org, robh+dt@kernel.org,
	krzk+dt@kernel.org, matthias.bgg@gmail.com
Cc: jia-wei.chang@mediatek.com, roger.lu@mediatek.com,
	hsinyi@google.com, khilman@baylibre.com,
	angelogioacchino.delregno@collabora.com,
	linux-pm@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-mediatek@lists.infradead.org,
	Project_Global_Chrome_Upstream_Group@mediatek.com
Subject: Re: [PATCH V4 01/14] dt-bindings: cpufreq: mediatek: Add MediaTek CCI property
Date: Mon, 25 Apr 2022 12:52:55 +0200	[thread overview]
Message-ID: <9ff80bc2-d63b-14aa-5769-20bff6e3a21e@linaro.org> (raw)
In-Reply-To: <c1b910098a0a5cbe06ec971c1bf745ac37986274.camel@mediatek.com>

On 25/04/2022 12:20, Rex-BC Chen wrote:
>> However I am not sure if you solved your problem... see below:
>>
>>> For example:
>>> mediatek cci set 1.2V originally. When cpufreq want to adjust lower
>>> frequency adn set voltage to 1.0V.
>>> The framework will remain using 1.2V to prevent crash of mediatek
>>> cci.
>>
>> No, regulator_set_voltage() for proc_reg says:
>> "NOTE: If the regulator is shared between several devices then the
>> lowest
>>  request voltage that meets the system constraints will be used."
>>
>> Not the highest. So when your devfreq and cpufreq boots, calling
>> regulator_set_voltage will still cause high frequency and low
>> voltage.
>>
> 
> From the driver comment, I think it still needs to match "meets the
> system constraints".
> 
> From drivers, we can trace the driver and it finally to
> regulator_get_optimal_voltage().
> In [1], the framework will get max voltage while finding each device's
> voltage.
> 
> [1]: 
> https://elixir.bootlin.com/linux/latest/source/drivers/regulator/core.c#L3815

Right, actually in your case it's the regulator_check_consumers() above
that line, because you

I think it's quite generic problem, so would be worth solving for more
regulator consumers, but your approach is fine. At least I do not have
anything smarter, at the moment.

Best regards,
Krzysztof

WARNING: multiple messages have this Message-ID (diff)
From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
To: Rex-BC Chen <rex-bc.chen@mediatek.com>,
	rafael@kernel.org, viresh.kumar@linaro.org, robh+dt@kernel.org,
	krzk+dt@kernel.org, matthias.bgg@gmail.com
Cc: jia-wei.chang@mediatek.com, roger.lu@mediatek.com,
	hsinyi@google.com, khilman@baylibre.com,
	angelogioacchino.delregno@collabora.com,
	linux-pm@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-mediatek@lists.infradead.org,
	Project_Global_Chrome_Upstream_Group@mediatek.com
Subject: Re: [PATCH V4 01/14] dt-bindings: cpufreq: mediatek: Add MediaTek CCI property
Date: Mon, 25 Apr 2022 12:52:55 +0200	[thread overview]
Message-ID: <9ff80bc2-d63b-14aa-5769-20bff6e3a21e@linaro.org> (raw)
In-Reply-To: <c1b910098a0a5cbe06ec971c1bf745ac37986274.camel@mediatek.com>

On 25/04/2022 12:20, Rex-BC Chen wrote:
>> However I am not sure if you solved your problem... see below:
>>
>>> For example:
>>> mediatek cci set 1.2V originally. When cpufreq want to adjust lower
>>> frequency adn set voltage to 1.0V.
>>> The framework will remain using 1.2V to prevent crash of mediatek
>>> cci.
>>
>> No, regulator_set_voltage() for proc_reg says:
>> "NOTE: If the regulator is shared between several devices then the
>> lowest
>>  request voltage that meets the system constraints will be used."
>>
>> Not the highest. So when your devfreq and cpufreq boots, calling
>> regulator_set_voltage will still cause high frequency and low
>> voltage.
>>
> 
> From the driver comment, I think it still needs to match "meets the
> system constraints".
> 
> From drivers, we can trace the driver and it finally to
> regulator_get_optimal_voltage().
> In [1], the framework will get max voltage while finding each device's
> voltage.
> 
> [1]: 
> https://elixir.bootlin.com/linux/latest/source/drivers/regulator/core.c#L3815

Right, actually in your case it's the regulator_check_consumers() above
that line, because you

I think it's quite generic problem, so would be worth solving for more
regulator consumers, but your approach is fine. At least I do not have
anything smarter, at the moment.

Best regards,
Krzysztof

_______________________________________________
Linux-mediatek mailing list
Linux-mediatek@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-mediatek

WARNING: multiple messages have this Message-ID (diff)
From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
To: Rex-BC Chen <rex-bc.chen@mediatek.com>,
	rafael@kernel.org, viresh.kumar@linaro.org, robh+dt@kernel.org,
	krzk+dt@kernel.org, matthias.bgg@gmail.com
Cc: jia-wei.chang@mediatek.com, roger.lu@mediatek.com,
	hsinyi@google.com, khilman@baylibre.com,
	angelogioacchino.delregno@collabora.com,
	linux-pm@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-mediatek@lists.infradead.org,
	Project_Global_Chrome_Upstream_Group@mediatek.com
Subject: Re: [PATCH V4 01/14] dt-bindings: cpufreq: mediatek: Add MediaTek CCI property
Date: Mon, 25 Apr 2022 12:52:55 +0200	[thread overview]
Message-ID: <9ff80bc2-d63b-14aa-5769-20bff6e3a21e@linaro.org> (raw)
In-Reply-To: <c1b910098a0a5cbe06ec971c1bf745ac37986274.camel@mediatek.com>

On 25/04/2022 12:20, Rex-BC Chen wrote:
>> However I am not sure if you solved your problem... see below:
>>
>>> For example:
>>> mediatek cci set 1.2V originally. When cpufreq want to adjust lower
>>> frequency adn set voltage to 1.0V.
>>> The framework will remain using 1.2V to prevent crash of mediatek
>>> cci.
>>
>> No, regulator_set_voltage() for proc_reg says:
>> "NOTE: If the regulator is shared between several devices then the
>> lowest
>>  request voltage that meets the system constraints will be used."
>>
>> Not the highest. So when your devfreq and cpufreq boots, calling
>> regulator_set_voltage will still cause high frequency and low
>> voltage.
>>
> 
> From the driver comment, I think it still needs to match "meets the
> system constraints".
> 
> From drivers, we can trace the driver and it finally to
> regulator_get_optimal_voltage().
> In [1], the framework will get max voltage while finding each device's
> voltage.
> 
> [1]: 
> https://elixir.bootlin.com/linux/latest/source/drivers/regulator/core.c#L3815

Right, actually in your case it's the regulator_check_consumers() above
that line, because you

I think it's quite generic problem, so would be worth solving for more
regulator consumers, but your approach is fine. At least I do not have
anything smarter, at the moment.

Best regards,
Krzysztof

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2022-04-25 10:53 UTC|newest]

Thread overview: 141+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-04-22  7:52 [PATCH V4 00/14] cpufreq: mediatek: Cleanup and support MT8183 and MT8186 Rex-BC Chen
2022-04-22  7:52 ` Rex-BC Chen
2022-04-22  7:52 ` Rex-BC Chen
2022-04-22  7:52 ` [PATCH V4 01/14] dt-bindings: cpufreq: mediatek: Add MediaTek CCI property Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-22  8:21   ` AngeloGioacchino Del Regno
2022-04-22  8:21     ` AngeloGioacchino Del Regno
2022-04-22  8:21     ` AngeloGioacchino Del Regno
2022-04-22 17:26   ` Krzysztof Kozlowski
2022-04-22 17:26     ` Krzysztof Kozlowski
2022-04-22 17:26     ` Krzysztof Kozlowski
2022-04-22 17:34     ` Krzysztof Kozlowski
2022-04-22 17:34       ` Krzysztof Kozlowski
2022-04-22 17:34       ` Krzysztof Kozlowski
2022-04-25  6:19       ` Rex-BC Chen
2022-04-25  6:19         ` Rex-BC Chen
2022-04-25  6:19         ` Rex-BC Chen
2022-04-25  8:55         ` Krzysztof Kozlowski
2022-04-25  8:55           ` Krzysztof Kozlowski
2022-04-25  8:55           ` Krzysztof Kozlowski
2022-04-25 10:20           ` Rex-BC Chen
2022-04-25 10:20             ` Rex-BC Chen
2022-04-25 10:20             ` Rex-BC Chen
2022-04-25 10:52             ` Krzysztof Kozlowski [this message]
2022-04-25 10:52               ` Krzysztof Kozlowski
2022-04-25 10:52               ` Krzysztof Kozlowski
2022-04-26  8:26               ` Rex-BC Chen
2022-04-26  8:26                 ` Rex-BC Chen
2022-04-26  8:26                 ` Rex-BC Chen
2022-04-22  7:52 ` [PATCH V4 02/14] cpufreq: mediatek: Use device print to show logs Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-25  5:10   ` Viresh Kumar
2022-04-25  5:10     ` Viresh Kumar
2022-04-25  5:10     ` Viresh Kumar
2022-04-22  7:52 ` [PATCH V4 03/14] cpufreq: mediatek: Replace old_* with pre_* Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-25  5:11   ` Viresh Kumar
2022-04-25  5:11     ` Viresh Kumar
2022-04-25  5:11     ` Viresh Kumar
2022-04-22  7:52 ` [PATCH V4 04/14] cpufreq: mediatek: Record previous target vproc value Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-22  8:21   ` AngeloGioacchino Del Regno
2022-04-22  8:21     ` AngeloGioacchino Del Regno
2022-04-22  8:21     ` AngeloGioacchino Del Regno
2022-04-25  5:12     ` Viresh Kumar
2022-04-25  5:12       ` Viresh Kumar
2022-04-25  5:12       ` Viresh Kumar
2022-04-22  7:52 ` [PATCH V4 05/14] cpufreq: mediatek: Add opp notification support Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-25  5:20   ` Viresh Kumar
2022-04-25  5:20     ` Viresh Kumar
2022-04-25  5:20     ` Viresh Kumar
2022-04-25  7:28     ` Rex-BC Chen
2022-04-25  7:28       ` Rex-BC Chen
2022-04-25 10:38     ` Rex-BC Chen
2022-04-25 10:38       ` Rex-BC Chen
2022-04-22  7:52 ` [PATCH V4 06/14] cpufreq: mediatek: Move voltage limits to platform data Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-22  7:52 ` [PATCH V4 07/14] cpufreq: mediatek: Add .get function Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-22  8:21   ` AngeloGioacchino Del Regno
2022-04-22  8:21     ` AngeloGioacchino Del Regno
2022-04-22  8:21     ` AngeloGioacchino Del Regno
2022-04-25  5:35   ` Viresh Kumar
2022-04-25  5:35     ` Viresh Kumar
2022-04-25  5:35     ` Viresh Kumar
2022-04-25  9:34     ` Rex-BC Chen
2022-04-25  9:34       ` Rex-BC Chen
2022-04-25  9:34       ` Rex-BC Chen
2022-04-25 10:00       ` Viresh Kumar
2022-04-25 10:00         ` Viresh Kumar
2022-04-25 10:00         ` Viresh Kumar
2022-04-26 11:13         ` Rex-BC Chen
2022-04-26 11:13           ` Rex-BC Chen
2022-04-26 11:13           ` Rex-BC Chen
2022-04-27  3:11           ` Viresh Kumar
2022-04-27  3:11             ` Viresh Kumar
2022-04-27  3:11             ` Viresh Kumar
2022-04-28 11:16             ` Rex-BC Chen
2022-04-28 11:16               ` Rex-BC Chen
2022-04-28 11:16               ` Rex-BC Chen
2022-04-28 11:48               ` Viresh Kumar
2022-04-28 11:48                 ` Viresh Kumar
2022-04-28 11:48                 ` Viresh Kumar
2022-05-03 11:33                 ` Rex-BC Chen
2022-05-03 11:33                   ` Rex-BC Chen
2022-05-03 11:33                   ` Rex-BC Chen
2022-05-04  8:22                   ` Viresh Kumar
2022-05-04  8:22                     ` Viresh Kumar
2022-05-04  8:22                     ` Viresh Kumar
2022-05-04 11:57                     ` Rex-BC Chen
2022-05-04 11:57                       ` Rex-BC Chen
2022-05-04 11:57                       ` Rex-BC Chen
2022-05-04 11:58                       ` Viresh Kumar
2022-05-04 11:58                         ` Viresh Kumar
2022-05-04 11:58                         ` Viresh Kumar
2022-05-04 12:03                         ` Rex-BC Chen
2022-05-04 12:03                           ` Rex-BC Chen
2022-05-04 12:03                           ` Rex-BC Chen
2022-04-22  7:52 ` [PATCH V4 08/14] cpufreq: mediatek: Make sram regulator optional Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-25  5:36   ` Viresh Kumar
2022-04-25  5:36     ` Viresh Kumar
2022-04-25  5:36     ` Viresh Kumar
2022-04-22  7:52 ` [PATCH V4 09/14] cpufreq: mediatek: Refine mtk_cpufreq_voltage_tracking() Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-22  8:20   ` AngeloGioacchino Del Regno
2022-04-22  8:20     ` AngeloGioacchino Del Regno
2022-04-22  8:20     ` AngeloGioacchino Del Regno
2022-04-22  7:52 ` [PATCH V4 10/14] cpufreq: mediatek: Link CCI device to CPU Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-22  7:52 ` [PATCH V4 11/14] cpufreq: mediatek: Add support for MT8186 Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-22  7:52 ` [PATCH V4 12/14] arm64: dts: mediatek: Add opp table and clock property for MT8183 cpufreq Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-22  8:20   ` AngeloGioacchino Del Regno
2022-04-22  8:20     ` AngeloGioacchino Del Regno
2022-04-22  8:20     ` AngeloGioacchino Del Regno
2022-04-22  7:52 ` [PATCH V4 13/14] arm64: dts: mediatek: Add MediaTek CCI node for MT8183 Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-22  7:52 ` [PATCH V4 14/14] arm64: dts: mediatek: Add mediatek,cci property for MT8183 cpufreq Rex-BC Chen
2022-04-22  7:52   ` [PATCH V4 14/14] arm64: dts: mediatek: Add mediatek, cci " Rex-BC Chen
2022-04-22  7:52   ` Rex-BC Chen
2022-04-22 17:23 ` [PATCH V4 00/14] cpufreq: mediatek: Cleanup and support MT8183 and MT8186 Krzysztof Kozlowski
2022-04-22 17:23   ` Krzysztof Kozlowski
2022-04-22 17:23   ` Krzysztof Kozlowski
2022-04-25  6:20   ` Rex-BC Chen
2022-04-25  6:20     ` Rex-BC Chen
2022-04-25  6:20     ` Rex-BC Chen

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=9ff80bc2-d63b-14aa-5769-20bff6e3a21e@linaro.org \
    --to=krzysztof.kozlowski@linaro.org \
    --cc=Project_Global_Chrome_Upstream_Group@mediatek.com \
    --cc=angelogioacchino.delregno@collabora.com \
    --cc=devicetree@vger.kernel.org \
    --cc=hsinyi@google.com \
    --cc=jia-wei.chang@mediatek.com \
    --cc=khilman@baylibre.com \
    --cc=krzk+dt@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mediatek@lists.infradead.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=matthias.bgg@gmail.com \
    --cc=rafael@kernel.org \
    --cc=rex-bc.chen@mediatek.com \
    --cc=robh+dt@kernel.org \
    --cc=roger.lu@mediatek.com \
    --cc=viresh.kumar@linaro.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.