On Mon, 2022-04-25 at 12:52 +0200, Krzysztof Kozlowski wrote: > 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://urldefense.com/v3/__https://elixir.bootlin.com/linux/latest/source/drivers/regulator/core.c*L3815__;Iw!!CTRNKA9wMg0ARbw!35L9ISPWDpbGPsLEc0935D2nWTLtaLSNfPipvteddPaxwO2i_KaN0wfWegpkyaPjjagW$ > > > > 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 Hello Krzysztof, Thanks for your review! I will send next version to modify the description of mediatek,cci when the driver part is explained clear. BRs, Rex