[PATCH 3/7] ARM: perf_event: Add basic support for Krait CPU PMUs

Will Deacon will.deacon at arm.com
Thu Jan 9 06:04:40 EST 2014


On Wed, Jan 08, 2014 at 10:59:40PM +0000, Stephen Boyd wrote:
> Add basic support for the Krait CPU PMU. This allows us to use
> the architected functionality of the PMU.
> 
> This is based on code originally written by Ashwin Chaugule and
> Neil Leeder [1].
> 
> [1] https://www.codeaurora.org/cgit/quic/la/kernel/msm/tree/arch/arm/kernel/perf_event_msm_krait.c?h=msm-3.4
> 
> Cc: Neil Leeder <nleeder at codeaurora.org>
> Cc: Ashwin Chaugule <ashwinc at codeaurora.org>
> Signed-off-by: Stephen Boyd <sboyd at codeaurora.org>
> ---
>  arch/arm/kernel/perf_event_cpu.c |   1 +
>  arch/arm/kernel/perf_event_v7.c  | 165 +++++++++++++++++++++++++++++++++++++++
>  2 files changed, 166 insertions(+)

[...]

> +static int krait_pmu_init(struct arm_pmu *cpu_pmu)
> +{
> +	u32 id = read_cpuid_id() & 0xffffff00;
> +
> +	armv7pmu_init(cpu_pmu);
> +	cpu_pmu->name		= "ARMv7 Krait";
> +	/* Some early versions of Krait don't support PC write events */
> +	if (id == 0x511f0400 || id == 0x510f0600)
> +		cpu_pmu->map_event	= krait_map_event_no_branch;

Hmm, I'd really rather this information came via the DT. In fact, you could
just drop the branch event from your main map_event_function and keep things
simple. It depends how badly you want to advertise it in perf list :)

Will



More information about the linux-arm-kernel mailing list