linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: Tingwei Zhang <tingwei@codeaurora.org>
To: Mathieu Poirier <mathieu.poirier@linaro.org>,
	Suzuki K Poulose <suzuki.poulose@arm.com>,
	Alexander Shishkin <alexander.shishkin@linux.intel.com>,
	Mike Leach <mike.leach@linaro.org>
Cc: tsoni@codeaurora.org,
	Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>,
	Kim Phillips <kim.phillips@arm.com>,
	Mao Jinlong <jinlmao@codeaurora.org>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	coresight@lists.linaro.org, Randy Dunlap <rdunlap@infradead.org>,
	Mian Yousaf Kaukab <ykaukab@suse.de>,
	Russell King <linux@armlinux.org.uk>,
	linux-kernel@vger.kernel.org,
	Tingwei Zhang <tingwei@codeaurora.org>,
	Leo Yan <leo.yan@linaro.org>,
	linux-arm-kernel@lists.infradead.org
Subject: [PATCH v11 00/24] coresight: allow to build coresight as modules
Date: Tue, 15 Sep 2020 18:40:52 +0800	[thread overview]
Message-ID: <20200915104116.16789-1-tingwei@codeaurora.org> (raw)

Allow to build coresight as modules. This gives developers the feasibility to
test their code without reboot.

This series is based on below two series.

 - "coresight: allow to build components as modules"
   https://lkml.org/lkml/2018/6/5/989
 - "coresight: make drivers modular"
   https://lkml.org/lkml/2020/1/17/468

Change from v10:
Rebase to latest coresight-next
Protect etmdrvdata[] by modifying it on relevant CPU for ETM3. (Mathieu and Suzuki)
 -It's not tested.
Refine the alignment in coresight makefile. (Mathieu)
Add reason for cti_remove_conn_xrefs change. (Mathieu)
Set owner for static funnel driver. (Suzuki)

Change from v9:
Fix warning reported by kernel test robot <lkp@intel.com>
Rebase to coresight-next

Change from v8:
Protect etmdrvdata[] by modifying it on relevant CPU  (Mathieu and Suzuki)
Grab the device before allocating memory for the node (Mathieu)
Add author of coresight core driver (Mathieu)

Change from v7:
Depends on below change for ETM hotplug (Sai)
https://lore.kernel.org/linux-arm-kernel/20200729051310.18436-1-saiprakash.ranjan@codeaurora.org/
Add mutex lock to protect etmdrvdata[] (Suzuki)
Add helper function coresight_get_ref()	(Suzuki)
Reorg replicator and funnel change. Use two patches to support these
two drivers. (Suzuki)
Add fix tag to "coresight: etm: perf: Fix warning caused by etm_setup_aux
failure" (Suzuki)
Update author of "coresight: cti: Fix bug clearing sysfs links on callback"

Change from v6:
Correct module description for CATU (Mike)
Check ect_ret equals 0 and set ect_enabled flag (Mike)
Add Tested-by and Reviewed-by from Mike

Change from v5:
Add below CTI clean up change from Mike into series
 -https://lists.linaro.org/pipermail/coresight/2020-July/004349.html
Increase module reference count when enabling CTI device (Mike)

Change from v4:
Fix error handling in coresight_grab_devicei() (Greg)
Add coresight: cti: Fix remove sysfs link error from Mike
 -https://lists.linaro.org/pipermail/coresight/2020-July/004275.html
Move cti_remove_conn_xrefs() into cti_remove() (Mike)
Align patch subject to coresight: <component>: <description> (Mike)

Change from v3:
Rebase to coresight-next (Mike and Mathieu)
Reorder try_get_module() (Suzuki)
Clean up etmdrvdata[] in device remote path (Mike)
Move cti_remove_conn_xrefs to cti_remove (Mike)

Change from v2:
Rebase to 5.8-rc5. Export coresight_add_sysfs_link and
coresight_remove_sysfs_link
Fix one cut and paste error on MODULE_DESCRIPTION of CTI

Change from v1:
Use try_module_get() to avoid module to be unloaded when device is used
in active trace session. (Mathieu P)

Change from above two series.
This series adds the support to dynamically remove module when the device in
that module is enabled and used by some trace path. It disables all trace
paths with that device and release the trace path.

Kim Phillips (8):
  coresight: use IS_ENABLED for CONFIGs that may be modules
  coresight: etm3x: allow etm3x to be built as a module
  coresight: etm4x: allow etm4x to be built as a module
  coresight: etb: allow etb to be built as a module
  coresight: tpiu: allow tpiu to be built as a module
  coresight: tmc: allow tmc to be built as a module
  coresight: allow funnel driver to be built as module
  coresight: allow replicator driver to be built as module

Mian Yousaf Kaukab (2):
  coresight: export global symbols
  coresight: tmc-etr: add function to register catu ops

Mike Leach (2):
  coresight: cti: Fix remove sysfs link error
  coresight: cti: Fix bug clearing sysfs links on callback

Tingwei Zhang (12):
  coresight: cpu_debug: add module name in Kconfig
  coresight: cpu_debug: define MODULE_DEVICE_TABLE
  coresight: add coresight prefix to barrier_pkt
  coresight: add try_get_module() in coresight_grab_device()
  coresight: stm: allow to build coresight-stm as a module
  coresight: etm: perf: Fix warning caused by etm_setup_aux failure
  coresight: cti: add function to register cti associate ops
  coresight: cti: don't disable ect device if it's not enabled
  coresight: cti: increase reference count when enabling cti
  coresight: cti: allow cti to be built as a module
  coresight: catu: allow catu drivers to be built as modules
  coresight: allow the coresight core driver to be built as a module

 drivers/hwtracing/coresight/Kconfig           |  54 ++++--
 drivers/hwtracing/coresight/Makefile          |  26 +--
 drivers/hwtracing/coresight/coresight-catu.c  |  37 ++++-
 drivers/hwtracing/coresight/coresight-catu.h  |   2 -
 .../{coresight.c => coresight-core.c}         | 154 +++++++++++++++---
 .../hwtracing/coresight/coresight-cpu-debug.c |   2 +
 .../{coresight-cti.c => coresight-cti-core.c} |  67 ++++++--
 drivers/hwtracing/coresight/coresight-etb10.c |  28 +++-
 .../hwtracing/coresight/coresight-etm-perf.c  |  13 +-
 .../hwtracing/coresight/coresight-etm-perf.h  |   5 +-
 ...resight-etm3x.c => coresight-etm3x-core.c} | 148 +++++++++++++----
 ...resight-etm4x.c => coresight-etm4x-core.c} |  84 +++++++---
 .../hwtracing/coresight/coresight-funnel.c    |  65 +++++++-
 .../hwtracing/coresight/coresight-platform.c  |   1 +
 drivers/hwtracing/coresight/coresight-priv.h  |  23 ++-
 .../coresight/coresight-replicator.c          |  65 +++++++-
 drivers/hwtracing/coresight/coresight-stm.c   |  20 ++-
 drivers/hwtracing/coresight/coresight-sysfs.c |   2 +
 .../{coresight-tmc.c => coresight-tmc-core.c} |  25 ++-
 .../hwtracing/coresight/coresight-tmc-etf.c   |   2 +-
 .../hwtracing/coresight/coresight-tmc-etr.c   |  21 ++-
 drivers/hwtracing/coresight/coresight-tmc.h   |   3 +
 drivers/hwtracing/coresight/coresight-tpiu.c  |  20 ++-
 include/linux/coresight.h                     |   3 +-
 24 files changed, 726 insertions(+), 144 deletions(-)
 rename drivers/hwtracing/coresight/{coresight.c => coresight-core.c} (92%)
 rename drivers/hwtracing/coresight/{coresight-cti.c => coresight-cti-core.c} (94%)
 rename drivers/hwtracing/coresight/{coresight-etm3x.c => coresight-etm3x-core.c} (90%)
 rename drivers/hwtracing/coresight/{coresight-etm4x.c => coresight-etm4x-core.c} (96%)
 rename drivers/hwtracing/coresight/{coresight-tmc.c => coresight-tmc-core.c} (95%)

-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project


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

             reply	other threads:[~2020-09-15 10:44 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-15 10:40 Tingwei Zhang [this message]
2020-09-15 10:40 ` [PATCH v11 01/24] coresight: cpu_debug: add module name in Kconfig Tingwei Zhang
2020-09-15 10:40 ` [PATCH v11 02/24] coresight: cpu_debug: define MODULE_DEVICE_TABLE Tingwei Zhang
2020-09-15 10:40 ` [PATCH v11 03/24] coresight: use IS_ENABLED for CONFIGs that may be modules Tingwei Zhang
2020-09-15 10:40 ` [PATCH v11 04/24] coresight: add coresight prefix to barrier_pkt Tingwei Zhang
2020-09-15 10:40 ` [PATCH v11 05/24] coresight: export global symbols Tingwei Zhang
2020-09-15 10:40 ` [PATCH v11 06/24] coresight: add try_get_module() in coresight_grab_device() Tingwei Zhang
2020-09-15 11:08   ` Suzuki K Poulose
2020-09-15 10:40 ` [PATCH v11 07/24] coresight: stm: allow to build coresight-stm as a module Tingwei Zhang
2020-09-15 10:41 ` [PATCH v11 08/24] coresight: etm: perf: Fix warning caused by etm_setup_aux failure Tingwei Zhang
2020-09-15 10:41 ` [PATCH v11 09/24] coresight: etm3x: allow etm3x to be built as a module Tingwei Zhang
2020-09-15 18:09   ` Mathieu Poirier
2020-09-22 21:42     ` Mathieu Poirier
2020-09-23  0:23       ` Tingwei Zhang
2020-09-15 10:41 ` [PATCH v11 10/24] coresight: etm4x: allow etm4x " Tingwei Zhang
2020-09-15 10:41 ` [PATCH v11 11/24] coresight: etb: allow etb " Tingwei Zhang
2020-09-15 10:41 ` [PATCH v11 12/24] coresight: tpiu: allow tpiu " Tingwei Zhang
2020-09-15 10:41 ` [PATCH v11 13/24] coresight: tmc: allow tmc " Tingwei Zhang
2020-09-15 10:41 ` [PATCH v11 14/24] coresight: allow funnel driver to be built as module Tingwei Zhang
2020-09-15 10:41 ` [PATCH v11 15/24] coresight: allow replicator " Tingwei Zhang
2020-09-15 11:25   ` Suzuki K Poulose
2020-09-15 10:41 ` [PATCH v11 16/24] coresight: cti: add function to register cti associate ops Tingwei Zhang
2020-09-15 10:41 ` [PATCH v11 17/24] coresight: cti: Fix remove sysfs link error Tingwei Zhang
2020-09-15 10:41 ` [PATCH v11 18/24] coresight: cti: Fix bug clearing sysfs links on callback Tingwei Zhang
2020-09-15 10:41 ` [PATCH v11 19/24] coresight: cti: don't disable ect device if it's not enabled Tingwei Zhang
2020-09-15 10:41 ` [PATCH v11 20/24] coresight: cti: increase reference count when enabling cti Tingwei Zhang
2020-09-15 10:41 ` [PATCH v11 21/24] coresight: cti: allow cti to be built as a module Tingwei Zhang
2020-09-15 10:41 ` [PATCH v11 22/24] coresight: tmc-etr: add function to register catu ops Tingwei Zhang
2020-09-15 10:41 ` [PATCH v11 23/24] coresight: catu: allow catu drivers to be built as modules Tingwei Zhang
2020-09-15 10:41 ` [PATCH v11 24/24] coresight: allow the coresight core driver to be built as a module Tingwei Zhang

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=20200915104116.16789-1-tingwei@codeaurora.org \
    --to=tingwei@codeaurora.org \
    --cc=alexander.shishkin@linux.intel.com \
    --cc=coresight@lists.linaro.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=jinlmao@codeaurora.org \
    --cc=kim.phillips@arm.com \
    --cc=leo.yan@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=mathieu.poirier@linaro.org \
    --cc=mike.leach@linaro.org \
    --cc=rdunlap@infradead.org \
    --cc=saiprakash.ranjan@codeaurora.org \
    --cc=suzuki.poulose@arm.com \
    --cc=tsoni@codeaurora.org \
    --cc=ykaukab@suse.de \
    /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).