From: Michael Ellerman <mpe@ellerman.id.au>
To: Anju T Sudhakar <anju@linux.vnet.ibm.com>
Cc: linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org,
ego@linux.vnet.ibm.com, bsingharora@gmail.com, anton@samba.org,
sukadev@linux.vnet.ibm.com, mikey@neuling.org,
stewart@linux.vnet.ibm.com, dja@axtens.net, eranian@google.com,
hemant@linux.vnet.ibm.com, maddy@linux.vnet.ibm.com,
anju@linux.vnet.ibm.com
Subject: Re: [PATCH v12 01/10] powerpc/powernv: Data structure and macros definitions for IMC
Date: Fri, 07 Jul 2017 19:26:50 +1000 [thread overview]
Message-ID: <87h8yo8un9.fsf@concordia.ellerman.id.au> (raw)
In-Reply-To: <1499074673-30576-2-git-send-email-anju@linux.vnet.ibm.com>
Hi Maddy/Anju,
Anju T Sudhakar <anju@linux.vnet.ibm.com> writes:
> From: Madhavan Srinivasan <maddy@linux.vnet.ibm.com>
>
> Create a new header file to add the data structures and
> macros needed for In-Memory Collection (IMC) counter support.
>
> Signed-off-by: Anju T Sudhakar <anju@linux.vnet.ibm.com>
> Signed-off-by: Hemant Kumar <hemant@linux.vnet.ibm.com>
> Signed-off-by: Madhavan Srinivasan <maddy@linux.vnet.ibm.com>
> ---
> arch/powerpc/include/asm/imc-pmu.h | 99 ++++++++++++++++++++++++++++++++++++++
> 1 file changed, 99 insertions(+)
> create mode 100644 arch/powerpc/include/asm/imc-pmu.h
>
> diff --git a/arch/powerpc/include/asm/imc-pmu.h b/arch/powerpc/include/asm/imc-pmu.h
> new file mode 100644
> index 000000000000..ffaea0b9c13e
> --- /dev/null
> +++ b/arch/powerpc/include/asm/imc-pmu.h
> @@ -0,0 +1,99 @@
> +#ifndef PPC_POWERNV_IMC_PMU_DEF_H
> +#define PPC_POWERNV_IMC_PMU_DEF_H
> +
> +/*
> + * IMC Nest Performance Monitor counter support.
> + *
> + * Copyright (C) 2017 Madhavan Srinivasan, IBM Corporation.
> + * (C) 2017 Anju T Sudhakar, IBM Corporation.
> + * (C) 2017 Hemant K Shaw, IBM Corporation.
> + *
> + * This program is free software; you can redistribute it and/or
> + * modify it under the terms of the GNU General Public License
> + * as published by the Free Software Foundation; either version
> + * 2 of the License, or later version.
> + */
> +
> +#include <linux/perf_event.h>
> +#include <linux/slab.h>
> +#include <linux/of.h>
> +#include <linux/io.h>
> +#include <asm/opal.h>
> +
> +/*
> + * For static allocation of some of the structures.
> + */
> +#define IMC_MAX_PMUS 32
> +
> +/*
> + * This macro is used for memory buffer allocation of
> + * event names and event string
> + */
> +#define IMC_MAX_NAME_VAL_LEN 96
> +
> +/*
> + * Currently Microcode supports a max of 256KB of counter memory
> + * in the reserved memory region. Max pages to mmap (considering 4K PAGESIZE).
> + */
> +#define IMC_MAX_PAGES 64
Ideally that sort of detail comes from the device tree. Otherwise old
kernels will be unable to run on new hardware which supports more memory.
Actually looking at where we use it, it seems like we don't it to come
from the device tree.
Seems core IMC only ever uses one page.
Thread IMC gets the size indirectly via the device tree:
if (of_property_read_u32(parent, "size", &pmu_ptr->counter_mem_size))
So we should be able to dynamically size vbase.
> +/*
> + *Compatbility macros for IMC devices
> + */
> +#define IMC_DTB_COMPAT "ibm,opal-in-memory-counters"
> +#define IMC_DTB_UNIT_COMPAT "ibm,imc-counters"
> +
> +/*
> + * Structure to hold memory address information for imc units.
> + */
> +struct imc_mem_info {
> + u32 id;
> + u64 *vbase[IMC_MAX_PAGES];
> +};
cheers
next prev parent reply other threads:[~2017-07-07 9:27 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-07-03 9:37 [PATCH v12 00/10] IMC Instrumentation Support Anju T Sudhakar
2017-07-03 9:37 ` [PATCH v12 01/10] powerpc/powernv: Data structure and macros definitions for IMC Anju T Sudhakar
2017-07-07 9:26 ` Michael Ellerman [this message]
2017-07-03 9:37 ` [PATCH v12 02/10] powerpc/powernv: Autoload IMC device driver module Anju T Sudhakar
2017-07-07 6:53 ` Michael Ellerman
2017-07-03 9:37 ` [PATCH v12 03/10] powerpc/powernv: Detect supported IMC units and its events Anju T Sudhakar
2017-07-06 13:48 ` Michael Ellerman
2017-07-03 9:37 ` [PATCH v12 04/10] powerpc/perf: Add generic IMC pmu group and event functions Anju T Sudhakar
2017-07-03 9:37 ` [PATCH v12 06/10] powerpc/powernv: Core IMC events detection Anju T Sudhakar
2017-07-03 9:37 ` [PATCH v12 08/10] powerpc/powernv: Thread " Anju T Sudhakar
2017-07-03 9:37 ` [PATCH v12 09/10] powerpc/perf: Thread IMC PMU functions Anju T Sudhakar
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=87h8yo8un9.fsf@concordia.ellerman.id.au \
--to=mpe@ellerman.id.au \
--cc=anju@linux.vnet.ibm.com \
--cc=anton@samba.org \
--cc=bsingharora@gmail.com \
--cc=dja@axtens.net \
--cc=ego@linux.vnet.ibm.com \
--cc=eranian@google.com \
--cc=hemant@linux.vnet.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=maddy@linux.vnet.ibm.com \
--cc=mikey@neuling.org \
--cc=stewart@linux.vnet.ibm.com \
--cc=sukadev@linux.vnet.ibm.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®