linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: Mike Leach <mike.leach@linaro.org>
To: linux-arm-kernel@lists.infradead.org, coresight@lists.linaro.org,
	linux-kernel@vger.kernel.org
Cc: mathieu.poirier@linaro.org, suzuki.poulose@arm.com,
	leo.yan@linaro.org, acme@kernel.org, james.clark@arm.com,
	Mike Leach <mike.leach@linaro.org>
Subject: [PATCH v4 0/7] coresight: syscfg: Extend configfs for config load
Date: Mon,  4 Jul 2022 16:42:42 +0100	[thread overview]
Message-ID: <20220704154249.11501-1-mike.leach@linaro.org> (raw)

This set extends the configfs support to allow loading and unloading of
configurations as binary files via configfs.

Additional attributes - load and unload are provided to in the
/config/cs-syscfg subsytem base group to implement the load functionality.

Routines to generate binary configuration files are supplied in
./tools/coresight.

Example generator and reader applications are provided.

Tools may be cross compiled or built for use on host system.

Documentation is updated to describe feature usage.

Changes since v3:
1) Rebase & tested on coresight/next - 5.19-rc3 - which includes the
fix patch for earlier configfs works.
2) Lockdep investigations resulted in re-design of some of the code
accessing configfs.
3) moved load and unload attributes to root of cs-syscfg. (Mathieu)
4) Additional minor fixes suggested by Mathieu.
5) Memory for configfs loaded and unloaded configurations is now
explicitly freed.
6) LOCKDEP nesting fix for configfs base code (fs/configfs/dir.c)

Changes since v2:
1) Rebased & tested on coresight/next - 5.18-rc2
2) Moved coresight config generator and reader programs from samples to
tools/coresight. Docs updated to match. (suggested by Mathieu)
3) userspace builds now use userspace headers from tools/...
4) Other minor fixes from Mathieu's review.

Changes since v1:
1) Rebased to coresight/next - 5.16-rc1 with previous coresight config
set applied.
2) Makefile.host fixed to default to all target.

Mike Leach (7):
  coresight: configfs: Update memory allocation / free for configfs
    elements
  coresight: configfs: Add in functionality for load via configfs
  coresight: configfs: Add in binary attributes to load files
  coresight: configfs: Modify config files to allow userspace use
  coresight: tools: Add config file write and reader tools
  Documentation: coresight: docs for config load via configfs
  configfs: Fix LOCKDEP nesting issues with fragment semaphores

 .../trace/coresight/coresight-config.rst      | 202 +++++-
 MAINTAINERS                                   |   1 +
 drivers/hwtracing/coresight/Makefile          |   2 +-
 .../coresight/coresight-config-file.c         | 583 ++++++++++++++++++
 .../coresight/coresight-config-file.h         | 139 +++++
 .../hwtracing/coresight/coresight-config.h    |  27 +
 .../coresight/coresight-syscfg-configfs.c     | 300 +++++++--
 .../coresight/coresight-syscfg-configfs.h     |   3 +
 .../hwtracing/coresight/coresight-syscfg.c    | 107 ++++
 .../hwtracing/coresight/coresight-syscfg.h    |   2 +
 fs/configfs/configfs_internal.h               |   3 +
 fs/configfs/dir.c                             |  45 ++
 tools/coresight/Makefile                      |  52 ++
 tools/coresight/coresight-cfg-bufw.c          | 309 ++++++++++
 tools/coresight/coresight-cfg-bufw.h          |  26 +
 tools/coresight/coresight-cfg-example1.c      |  62 ++
 tools/coresight/coresight-cfg-example2.c      |  95 +++
 tools/coresight/coresight-cfg-examples.h      |  22 +
 tools/coresight/coresight-cfg-file-gen.c      |  61 ++
 tools/coresight/coresight-cfg-file-read.c     | 227 +++++++
 tools/coresight/coresight-config-uapi.h       |  76 +++
 21 files changed, 2298 insertions(+), 46 deletions(-)
 create mode 100644 drivers/hwtracing/coresight/coresight-config-file.c
 create mode 100644 drivers/hwtracing/coresight/coresight-config-file.h
 create mode 100644 tools/coresight/Makefile
 create mode 100644 tools/coresight/coresight-cfg-bufw.c
 create mode 100644 tools/coresight/coresight-cfg-bufw.h
 create mode 100644 tools/coresight/coresight-cfg-example1.c
 create mode 100644 tools/coresight/coresight-cfg-example2.c
 create mode 100644 tools/coresight/coresight-cfg-examples.h
 create mode 100644 tools/coresight/coresight-cfg-file-gen.c
 create mode 100644 tools/coresight/coresight-cfg-file-read.c
 create mode 100644 tools/coresight/coresight-config-uapi.h

-- 
2.17.1


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

             reply	other threads:[~2022-07-04 15:44 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-04 15:42 Mike Leach [this message]
2022-07-04 15:42 ` [PATCH v4 1/7] coresight: configfs: Update memory allocation / free for configfs elements Mike Leach
2022-07-04 15:42 ` [PATCH v4 2/7] coresight: configfs: Add in functionality for load via configfs Mike Leach
2022-07-04 15:42 ` [PATCH v4 3/7] coresight: configfs: Add in binary attributes to load files Mike Leach
2022-07-04 15:42 ` [PATCH v4 4/7] coresight: configfs: Modify config files to allow userspace use Mike Leach
2022-07-04 15:42 ` [PATCH v4 5/7] coresight: tools: Add config file write and reader tools Mike Leach
2022-07-04 15:42 ` [PATCH v4 6/7] Documentation: coresight: docs for config load via configfs Mike Leach
2022-07-04 15:42 ` [PATCH v4 7/7] configfs: Fix LOCKDEP nesting issues with fragment semaphores Mike Leach
2022-07-06  7:19   ` Christoph Hellwig

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=20220704154249.11501-1-mike.leach@linaro.org \
    --to=mike.leach@linaro.org \
    --cc=acme@kernel.org \
    --cc=coresight@lists.linaro.org \
    --cc=james.clark@arm.com \
    --cc=leo.yan@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mathieu.poirier@linaro.org \
    --cc=suzuki.poulose@arm.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;
as well as URLs for NNTP newsgroup(s).