Re: [PATCH] arch: arm64: dts: apq8016-dbc: Add missing cpu opps

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Apr 22, 2020 at 09:55:06PM -0700, Bjorn Andersson wrote:
> > Based on the available downstream sources I guessed the defines to add
> > for MSM8916 to the rpmpd driver. Then I added the VDD_MX OPPs as
> > "required-opps" to the CPU OPP table so it would vote for the appopriate
> > corners (with the mapping you mentioned above).
> > 
> 
> I was not aware it was possible to describe the dependency between the
> CPU opp table and MX in this fashion. If that's the case then this looks
> really good and it should be straight forward to add MSM8916 support to
> the CPR driver as well.
> 
> > I haven't tested it yet, maybe I can get some feedback first if the code
> > seems reasonable or if I'm missing something obvious? :)
> > 
> 
> Have you tested this yet?
> 
> > Also: Is there a good way to validate these changes?
> > I suppose I could check the genpd state but that wouldn't tell me if the
> > corner was applied correctly. Maybe I can check the actual voltage
> > through the SPMI interface, hm...
> > 
> 
> Validating that S2 and VDD_MX changes appropriately in Linux would be a
> pretty good test.

Like Bjorn says,

Downstream CPR on MSM8916 controls 3 things; VDD_APC, VDD_MX and MEMACC.

On QCS404 we don't have to adjust VDD_MX, therefore this is no code for
this in the upstream CPR driver. It just scales VPP_APC and MEMACC.

I like Stephan's idea of scaling VDD_APC and VDD_MEM to the maximum
necessary for the selected CPU frequency, until there is full CPR
support for MSM8916 (if ever).


The patch suggested so far looks good, however, I'm slightly worried
that this might lead to unstable boards, since MEMACC is never scaled
in the suggested patch.

Perhaps someone could ask Qualcomm nicely if this is really required.
Last time I talked to a Qualcomm engineer, he claimed that it was
needed, but I remember that his response was a bit ambiguous.


Kind regards,
Niklas



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux