[PATCH] ARM: test for PMU feature on v7 (v2 with typo fix)
Nicolas Pitre
nico at fluxnic.net
Fri Mar 30 13:40:59 EDT 2012
On Fri, 30 Mar 2012, Will Deacon wrote:
> Hi Nicolas,
>
> On Wed, Mar 28, 2012 at 03:17:29PM +0100, Nicolas Pitre wrote:
> > On Mon, 26 Mar 2012, Will Deacon wrote:
> >
> > > Now, if everything was device-tree based then we could simply use a
> > > different binding for each CPU but since we support perf on non-DT
> > > platforms, probing the CPU type is the best solution. I would like to avoid
> > > the probing code if we are initialised from DT, but I've not got round to it
> > > yet (this would be useful for big.LITTLE).
> >
> > Still... my opinion is that we should try to autodetect as much as
> > possible and avoid overstuffing the DT with content that can otherwise
> > be run-time probed. OK to use DT to override the probe for corner
> > cases, but IMHO the probe should be the default method of
> > initialization. The rational is that we want to spread knowledge about
> > part of the system and have it confined into respective drivers and
> > subsystems for easier maintenance. If the guy who has to maintain the
> > dts has to know all the details for everything then that won't scale and
> > the risk for discrepancies is increased.
>
> I agree that probing is preferable where possible but, since the PMUs are
> banked, we cannot reliably probe them on big.LITTLE platforms.
Are they tied to each cluster power domains? If so you'll have to
preserve/restore their state when clusters are suspended even if the
interface tries to present a consistent view to users. The probe can be
done there, and differences in capabilities adjusted dynamically.
Nicolas
More information about the linux-arm-kernel
mailing list