All of lore.kernel.org
 help / color / mirror / Atom feed
From: Borislav Petkov <bp@amd64.org>
To: Thomas Renninger <trenn@suse.de>
Cc: akpm@linux-foundation.org, davej@redhat.com,
	linux@dominikbrodowski.net, mingo@elte.hu, hpa@zytor.com,
	tglx@linutronix.de, cpufreq@vger.kernel.org, x86@kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH 3/5] cpufreq: Add APERF/MPERF support for AMD processors
Date: Thu, 25 Mar 2010 12:06:49 +0100	[thread overview]
Message-ID: <20100325110648.GA6060@aftab> (raw)
In-Reply-To: <201003251043.04867.trenn@suse.de>

From: Thomas Renninger <trenn@suse.de>
Date: Thu, Mar 25, 2010 at 10:43:04AM +0100

Hi Thomas,

> On Wednesday 24 March 2010 18:46:21 Borislav Petkov wrote:
> > From: Mark Langsdorf <mark.langsdorf@amd.com>
> > 
> > Starting with model 10 of Family 0x10, AMD processors may have
> > support for APERF/MPERF.  Add support for identifying it and using
> > it within cpufreq.  Move the APERF/MPERF functions out of the
> > acpi-cpufreq code and into their own file so they can easily be
> > shared.
> > 
> > Signed-off-by: Mark Langsdorf <mark.langsdorf@amd.com>
> > Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
> > ---
> >  arch/x86/kernel/cpu/amd.c                  |    6 +++
> >  arch/x86/kernel/cpu/cpufreq/Makefile       |    4 +-
> >  arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c |   44 +-----------------------
> >  arch/x86/kernel/cpu/cpufreq/mperf.c        |   50 ++++++++++++++++++++++++++++
> >  arch/x86/kernel/cpu/cpufreq/mperf.h        |    9 +++++
> >  arch/x86/kernel/cpu/cpufreq/powernow-k8.c  |    8 ++++
> >  6 files changed, 77 insertions(+), 44 deletions(-)
> >  create mode 100644 arch/x86/kernel/cpu/cpufreq/mperf.c
> >  create mode 100644 arch/x86/kernel/cpu/cpufreq/mperf.h
> > 
> > diff --git a/arch/x86/kernel/cpu/amd.c b/arch/x86/kernel/cpu/amd.c
> > index e485825..796f662 100644
> > --- a/arch/x86/kernel/cpu/amd.c
> > +++ b/arch/x86/kernel/cpu/amd.c
> > @@ -537,6 +537,12 @@ static void __cpuinit init_amd(struct cpuinfo_x86 *c)
> >  		set_cpu_cap(c, X86_FEATURE_MFENCE_RDTSC);
> >  	}
> >  
> > +	if (c->cpuid_level >= 6) {
> > +		unsigned ecx = cpuid_ecx(6);
> > +		if (ecx & 0x01)
> > +			set_cpu_cap(c, X86_FEATURE_APERFMPERF);
> > +	}
> > +
> Can you put this into:
> arch/x86/kernel/cpu/common.c (or wherever it fits in general x86 cpu init code)
> and remove this (arch/x86/kernel/cpu/intel.c):
>         if (c->cpuid_level > 6) {
>                 unsigned ecx = cpuid_ecx(6);
>                 if (ecx & 0x01)
>                         set_cpu_cap(c, X86_FEATURE_APERFMPERF);
>         }
> 
> an x86 maintainer might want to double check, but I expect this should work
> for all x86 machines?

Yes, it should. However, there's the remote, far-fetched possibility
that other x86 vendors besides AMD and Intel, might have/plan to have
CPUID, base function 6, ECX[1] defined as a completely different feature
flag. And then it becomes ugly.

Besides, this is, strictly speaking, not x86 generic code but AMD- and
Intel-generic (huh, is there something like that? :)) code.

So, IMO, this is a judgement call based on the current settings of the
duplication and bloating levels of the x86 maintainers' filters :)

Let's have some more opinions, please...

Thanks.

-- 
Regards/Gruss,
Boris.

--
Advanced Micro Devices, Inc.
Operating Systems Research Center

  reply	other threads:[~2010-03-25 11:06 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-24 17:46 [PATCH 0/5] powernow-k8: Core Performance Boost and effective frequency support Borislav Petkov
2010-03-24 17:46 ` [PATCH 1/5] x86, cpu: Add AMD core boosting feature flag to /proc/cpuinfo Borislav Petkov
2010-03-24 17:46 ` [PATCH 2/5] powernow-k8: Add core performance boost support Borislav Petkov
2010-03-24 17:46 ` [PATCH 3/5] cpufreq: Add APERF/MPERF support for AMD processors Borislav Petkov
2010-03-25  9:43   ` Thomas Renninger
2010-03-25 11:06     ` Borislav Petkov [this message]
2010-03-25 19:55     ` Valdis.Kletnieks
2010-03-25 20:59       ` Thomas Renninger
2010-03-25 22:16         ` Borislav Petkov
2010-03-24 17:46 ` [PATCH 4/5] powernow-k8: Fix frequency reporting Borislav Petkov
2010-03-24 17:46 ` [PATCH 5/5] cpufreq: Unify sysfs attribute definition macros Borislav Petkov
2010-03-25  9:50 ` [PATCH 0/5] powernow-k8: Core Performance Boost and effective frequency support Thomas Renninger
  -- strict thread matches above, loose matches on Subject: below --
2010-03-22 18:38 Borislav Petkov
2010-03-22 18:38 ` [PATCH 3/5] cpufreq: Add APERF/MPERF support for AMD processors Borislav Petkov
2010-03-23 11:26   ` Thomas Renninger
2010-03-23 11:59     ` Borislav Petkov

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=20100325110648.GA6060@aftab \
    --to=bp@amd64.org \
    --cc=akpm@linux-foundation.org \
    --cc=cpufreq@vger.kernel.org \
    --cc=davej@redhat.com \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@dominikbrodowski.net \
    --cc=mingo@elte.hu \
    --cc=tglx@linutronix.de \
    --cc=trenn@suse.de \
    --cc=x86@kernel.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.