From: Alexander Shishkin <alexander.shishkin@linux.intel.com>
To: Greg KH <greg@kroah.com>
Cc: Mathieu Poirier <mathieu.poirier@linaro.org>,
Chunyan Zhang <zhang.chunyan@linaro.org>,
linux-kernel@vger.kernel.org,
Alexander Shishkin <alexander.shishkin@linux.intel.com>
Subject: [GIT PULL 03/10] stm class: Make dummy's master/channel ranges configurable
Date: Thu, 29 Mar 2018 14:14:11 +0300 [thread overview]
Message-ID: <20180329111418.9416-4-alexander.shishkin@linux.intel.com> (raw)
In-Reply-To: <20180329111418.9416-1-alexander.shishkin@linux.intel.com>
To allow for more flexible testing of the stm class, make it possible
to specify the ranges of masters and channels that the dummy_stm devices
cover. This is done via module parameters.
Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
---
drivers/hwtracing/stm/dummy_stm.c | 24 +++++++++++++++++++++---
include/uapi/linux/stm.h | 4 ++++
2 files changed, 25 insertions(+), 3 deletions(-)
diff --git a/drivers/hwtracing/stm/dummy_stm.c b/drivers/hwtracing/stm/dummy_stm.c
index 63288020ea5b..38528ffdc0b3 100644
--- a/drivers/hwtracing/stm/dummy_stm.c
+++ b/drivers/hwtracing/stm/dummy_stm.c
@@ -12,6 +12,7 @@
#include <linux/module.h>
#include <linux/slab.h>
#include <linux/stm.h>
+#include <uapi/linux/stm.h>
static ssize_t notrace
dummy_stm_packet(struct stm_data *stm_data, unsigned int master,
@@ -44,6 +45,18 @@ static unsigned int fail_mode;
module_param(fail_mode, int, 0600);
+static unsigned int master_min;
+
+module_param(master_min, int, 0400);
+
+static unsigned int master_max = STP_MASTER_MAX;
+
+module_param(master_max, int, 0400);
+
+static unsigned int nr_channels = STP_CHANNEL_MAX;
+
+module_param(nr_channels, int, 0400);
+
static int dummy_stm_link(struct stm_data *data, unsigned int master,
unsigned int channel)
{
@@ -60,14 +73,19 @@ static int dummy_stm_init(void)
if (nr_dummies < 0 || nr_dummies > DUMMY_STM_MAX)
return -EINVAL;
+ if (master_min > master_max ||
+ master_max > STP_MASTER_MAX ||
+ nr_channels > STP_CHANNEL_MAX)
+ return -EINVAL;
+
for (i = 0; i < nr_dummies; i++) {
dummy_stm[i].name = kasprintf(GFP_KERNEL, "dummy_stm.%d", i);
if (!dummy_stm[i].name)
goto fail_unregister;
- dummy_stm[i].sw_start = 0x0000;
- dummy_stm[i].sw_end = 0xffff;
- dummy_stm[i].sw_nchannels = 0xffff;
+ dummy_stm[i].sw_start = master_min;
+ dummy_stm[i].sw_end = master_max;
+ dummy_stm[i].sw_nchannels = nr_channels;
dummy_stm[i].packet = dummy_stm_packet;
dummy_stm[i].link = dummy_stm_link;
diff --git a/include/uapi/linux/stm.h b/include/uapi/linux/stm.h
index 29c89be72275..7bac318b4440 100644
--- a/include/uapi/linux/stm.h
+++ b/include/uapi/linux/stm.h
@@ -12,6 +12,10 @@
#include <linux/types.h>
+/* Maximum allowed master and channel values */
+#define STP_MASTER_MAX 0xffff
+#define STP_CHANNEL_MAX 0xffff
+
/**
* struct stp_policy_id - identification for the STP policy
* @size: size of the structure including real id[] length
--
2.16.2
next prev parent reply other threads:[~2018-03-29 11:14 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-03-29 11:14 [GIT PULL 00/10] stm class/intel_th: Updates for v4.17 Alexander Shishkin
2018-03-29 11:14 ` [GIT PULL 01/10] MAINTAINERS: Bestow upon myself the care for drivers/hwtracing Alexander Shishkin
2018-03-29 11:14 ` [GIT PULL 02/10] stm class: Add SPDX GPL-2.0 header to replace GPLv2 boilerplate Alexander Shishkin
2018-03-29 11:14 ` Alexander Shishkin [this message]
2018-03-29 11:14 ` [GIT PULL 04/10] intel_th: " Alexander Shishkin
2018-03-29 11:14 ` [GIT PULL 05/10] intel_th: Use correct method of finding hub Alexander Shishkin
2018-03-29 11:14 ` [GIT PULL 06/10] intel_th: Don't touch switch routing in host mode Alexander Shishkin
2018-03-29 11:14 ` [GIT PULL 07/10] intel_th: Pick up irq number from resources Alexander Shishkin
2018-03-29 11:14 ` [GIT PULL 08/10] intel_th: Allow forcing host mode through drvdata Alexander Shishkin
2018-03-29 11:14 ` [GIT PULL 09/10] intel_th: Add ACPI glue layer Alexander Shishkin
2018-03-29 11:14 ` [GIT PULL 10/10] hwtracing: Add HW tracing support menu Alexander Shishkin
2018-03-29 16:40 ` [GIT PULL 00/10] stm class/intel_th: Updates for v4.17 Greg KH
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=20180329111418.9416-4-alexander.shishkin@linux.intel.com \
--to=alexander.shishkin@linux.intel.com \
--cc=greg@kroah.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mathieu.poirier@linaro.org \
--cc=zhang.chunyan@linaro.org \
/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®