[RFC PATCH 0/8] coresight: syscfg: dynamic load, resource management

Mike Leach mike.leach at linaro.org
Thu May 13 09:53:36 PDT 2021


Hi Mathieu,

On Thu, 13 May 2021 at 16:56, Mathieu Poirier
<mathieu.poirier at linaro.org> wrote:
>
> Hey Mike,
>
> On Wed, May 12, 2021 at 10:17:44PM +0100, Mike Leach wrote:
> > This patchset represents the second phase of CoreSight configuration
> > management.
> >
> > 1) API updated to allow dynamic load and unload of configurations and
> > features. Dependency management between loaded sets is added.
> >
> > 2) New configuration and feature sets can be added using a loadable module.
> > An example in /samples/coresight is provided to demonstrate this.
> >
>
> I tried to compile the sample module and I get:
>
> samples/coresight/coresight-cfg-sample.c:7:10: fatal error: coresight-config.h: No such file or directory
>  #include "coresight-config.h"
>           ^~~~~~~~~~~~~~~~~~~~
> compilation terminated.
>
> Can you reproduce on your side?
>

No problem here. I cleaned and rechecked I had the sample selected in
my  .config (CONFIG_SAMPLE_CORESIGHT_SYSCFG=m) and it built just fine.

Regards

Mike



> Thanks,
> Mathieu
>
> > 3) Resource management API is added. This allows the system to ensure that
> > loaded configurations and features are only loaded onto devices that can
> > support them.
> >
> > Further - it ensures that configurations with multiple features cannot over
> > allocate resources.
> >
> > 4) configfs can be used to activate a configuration which will then be used
> > when controlling tracing using sysfs.
> >
> > 5) Resource management is added to ETMv4 configurations. This allows current
> > and future features and configurations to be defined in terms of resources
> > used as well as registers to be programmed.
> >
> > Defining features in this way allows the resource management to operate
> > correctly.
> >
> > The perf event parsing is also adjusted to allow the ETM resources requested
> > on the command line (e.g. address filters, etc) to be correctly handled
> > using resoruce management alongside the complex configurations such as
> > autofdo.
> >
> > Applies to coresight/next - which is 5.13-rc1 + initial Coresight configuration
> > patchset.
> >
> > To follow in future revisions / sets:-
> > a) load of additional config and features by configfs
> > b) ECT and CTI and other Coresight components support for configuration and
> > features.
> >
> >
> > Mike Leach (8):
> >   coresight: syscfg: Update API to allow dynamic load and unload
> >   coresight: syscfg: Update load API for config loadable modules
> >   coresight: syscfg: Example CoreSight configuration loadable module
> >   coresight: configfs: Allow configfs to activate configuration.
> >   coresight: syscfg: Add API to check and validate device resources.
> >   coresight: etm4x: syscfg: Add resource management to etm4x.
> >   coresight: etm4x: Update perf event resource handling.
> >   coresight: etm4x: Update configuration example.
> >
> >  MAINTAINERS                                   |   1 +
> >  .../hwtracing/coresight/coresight-cfg-afdo.c  |  38 +-
> >  .../coresight/coresight-cfg-preload.c         |   9 +-
> >  .../hwtracing/coresight/coresight-config.c    |  71 ++-
> >  .../hwtracing/coresight/coresight-config.h    |  45 +-
> >  .../hwtracing/coresight/coresight-etm4x-cfg.c | 533 ++++++++++++++++++
> >  .../hwtracing/coresight/coresight-etm4x-cfg.h | 196 ++++++-
> >  .../coresight/coresight-etm4x-core.c          | 250 +++-----
> >  .../coresight/coresight-syscfg-configfs.c     |  87 +++
> >  .../coresight/coresight-syscfg-configfs.h     |   4 +
> >  .../hwtracing/coresight/coresight-syscfg.c    | 390 +++++++++++--
> >  .../hwtracing/coresight/coresight-syscfg.h    |  38 +-
> >  include/linux/coresight.h                     |   2 +
> >  samples/Kconfig                               |   9 +
> >  samples/Makefile                              |   1 +
> >  samples/coresight/Makefile                    |   4 +
> >  samples/coresight/coresight-cfg-sample.c      |  73 +++
> >  17 files changed, 1511 insertions(+), 240 deletions(-)
> >  create mode 100644 samples/coresight/Makefile
> >  create mode 100644 samples/coresight/coresight-cfg-sample.c
> >
> > --
> > 2.17.1
> >



-- 
Mike Leach
Principal Engineer, ARM Ltd.
Manchester Design Centre. UK



More information about the linux-arm-kernel mailing list