Re: [PATCH v2 0/9] Exynos Adaptive Supply Voltage support

From: Viresh Kumar
Date: Wed Jul 24 2019 - 22:23:51 EST


On 24-07-19, 15:10, Marek Szyprowski wrote:
> Hi Viresh,
>
> On 2019-07-23 04:04, Viresh Kumar wrote:
> > On 18-07-19, 16:30, Sylwester Nawrocki wrote:
> >> This is second iteration of patch series adding ASV (Adaptive Supply
> >> Voltage) support for Exynos SoCs. The first one can be found at:
> >> https://lore.kernel.org/lkml/20190404171735.12815-1-s.nawrocki@xxxxxxxxxxx
> >>
> >> The main changes comparing to the first (RFC) version are:
> >> - moving ASV data tables from DT to the driver,
> >> - converting the chipid and the ASV drivers to use regmap,
> >> - converting the ASV driver to proper platform driver.
> >>
> >> I tried the opp-supported-hw bitmask approach as in the Qualcomm CPUFreq
> >> DT bindings but it resulted in too many OPPs and DT nodes, around 200
> >> per CPU cluster. So the ASV OPP tables are now in the ASV driver, as in
> >> downstream kernels.
> > Hmm. Can you explain why do you have so many OPPs? How many
> > frequencies do you actually support per cluster and what all varies
> > per frequency based on hw ? How many hw version do u have ?
>
> For big cores there are 20 frequencies (2100MHz .. 200MHz). Each SoC
> might belong to one of the 3 production 'sets' and each set contains 14
> so called 'asv groups', which assign the certain voltage values for each
> of those 20 frequencies (the lower asv group means lower voltage needed
> for given frequency).

There is another property which might be useful in this case:
"opp-microvolt-<name>" and then you can use API
dev_pm_opp_set_prop_name() to choose which voltage value to apply to
all OPPs.

opp-supported-hw property is more useful for the cases where only a
subset of frequencies will be supported for different versions of the
SoC. And what you need is a different voltage value for all
frequencies based on some h/w version.

--
viresh