From: Mika Westerberg <mika.westerberg@linux.intel.com>
To: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Andreas Noever <andreas.noever@gmail.com>,
Michael Jamet <michael.jamet@intel.com>,
Yehezkel Bernat <yehezkel.bernat@intel.com>,
Lukas Wunner <lukas@wunner.de>,
Amir Levy <amir.jer.levy@intel.com>,
Andy Lutomirski <luto@kernel.org>,
Mario.Limonciello@dell.com, Jared.Dominguez@dell.com,
Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
Mika Westerberg <mika.westerberg@linux.intel.com>,
linux-kernel@vger.kernel.org
Subject: [PATCH v2 15/27] thunderbolt: Expose get_route() to other files
Date: Fri, 26 May 2017 19:09:24 +0300 [thread overview]
Message-ID: <20170526160936.54265-16-mika.westerberg@linux.intel.com> (raw)
In-Reply-To: <20170526160936.54265-1-mika.westerberg@linux.intel.com>
We are going to use it when we change the connection manager to handle
events itself. Also rename it to follow naming convention used in
functions exposed in ctl.h.
Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Reviewed-by: Yehezkel Bernat <yehezkel.bernat@intel.com>
Reviewed-by: Michael Jamet <michael.jamet@intel.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
drivers/thunderbolt/ctl.c | 19 +++++++------------
drivers/thunderbolt/ctl.h | 4 ++++
2 files changed, 11 insertions(+), 12 deletions(-)
diff --git a/drivers/thunderbolt/ctl.c b/drivers/thunderbolt/ctl.c
index 24118c60b062..8352ee8662aa 100644
--- a/drivers/thunderbolt/ctl.c
+++ b/drivers/thunderbolt/ctl.c
@@ -54,11 +54,6 @@ struct tb_ctl {
/* utility functions */
-static u64 get_route(struct tb_cfg_header header)
-{
- return (u64) header.route_hi << 32 | header.route_lo;
-}
-
static struct tb_cfg_header make_header(u64 route)
{
struct tb_cfg_header header = {
@@ -66,7 +61,7 @@ static struct tb_cfg_header make_header(u64 route)
.route_lo = route,
};
/* check for overflow, route_hi is not 32 bits! */
- WARN_ON(get_route(header) != route);
+ WARN_ON(tb_cfg_get_route(&header) != route);
return header;
}
@@ -91,9 +86,9 @@ static int check_header(struct ctl_pkg *pkg, u32 len, enum tb_cfg_pkg_type type,
if (WARN(header->unknown != 1 << 9,
"header->unknown is %#x\n", header->unknown))
return -EIO;
- if (WARN(route != get_route(*header),
+ if (WARN(route != tb_cfg_get_route(header),
"wrong route (expected %llx, got %llx)",
- route, get_route(*header)))
+ route, tb_cfg_get_route(header)))
return -EIO;
return 0;
}
@@ -126,10 +121,10 @@ static struct tb_cfg_result decode_error(struct ctl_pkg *response)
{
struct cfg_error_pkg *pkg = response->buffer;
struct tb_cfg_result res = { 0 };
- res.response_route = get_route(pkg->header);
+ res.response_route = tb_cfg_get_route(&pkg->header);
res.response_port = 0;
res.err = check_header(response, sizeof(*pkg), TB_CFG_PKG_ERROR,
- get_route(pkg->header));
+ tb_cfg_get_route(&pkg->header));
if (res.err)
return res;
@@ -153,7 +148,7 @@ static struct tb_cfg_result parse_header(struct ctl_pkg *pkg, u32 len,
return decode_error(pkg);
res.response_port = 0; /* will be updated later for cfg_read/write */
- res.response_route = get_route(*header);
+ res.response_route = tb_cfg_get_route(header);
res.err = check_header(pkg, len, type, route);
return res;
}
@@ -294,7 +289,7 @@ static void tb_ctl_handle_plug_event(struct tb_ctl *ctl,
struct ctl_pkg *response)
{
struct cfg_event_pkg *pkg = response->buffer;
- u64 route = get_route(pkg->header);
+ u64 route = tb_cfg_get_route(&pkg->header);
if (check_header(response, sizeof(*pkg), TB_CFG_PKG_EVENT, route)) {
tb_ctl_warn(ctl, "malformed TB_CFG_PKG_EVENT\n");
diff --git a/drivers/thunderbolt/ctl.h b/drivers/thunderbolt/ctl.h
index 610980e3232f..9812b1c86d4f 100644
--- a/drivers/thunderbolt/ctl.h
+++ b/drivers/thunderbolt/ctl.h
@@ -38,6 +38,10 @@ struct tb_cfg_result {
enum tb_cfg_error tb_error; /* valid if err == 1 */
};
+static inline u64 tb_cfg_get_route(const struct tb_cfg_header *header)
+{
+ return (u64) header->route_hi << 32 | header->route_lo;
+}
int tb_cfg_error(struct tb_ctl *ctl, u64 route, u32 port,
enum tb_cfg_error error);
--
2.11.0
next prev parent reply other threads:[~2017-05-26 16:16 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-05-26 16:09 [PATCH v2 00/27] Thunderbolt security levels and NVM firmware upgrade Mika Westerberg
2017-05-26 16:09 ` [PATCH v2 01/27] thunderbolt: Use const buffer pointer in write operations Mika Westerberg
2017-05-26 16:09 ` [PATCH v2 02/27] thunderbolt: No need to read UID of the root switch on resume Mika Westerberg
2017-05-26 16:09 ` [PATCH v2 03/27] thunderbolt: Do not try to read UID if DROM offset is read as 0 Mika Westerberg
2017-05-26 16:09 ` [PATCH v2 04/27] thunderbolt: Do not warn about newer DROM versions Mika Westerberg
2017-05-26 16:09 ` [PATCH v2 05/27] thunderbolt: Add MSI-X support Mika Westerberg
2017-05-26 16:09 ` [PATCH v2 06/27] thunderbolt: Rework capability handling Mika Westerberg
2017-05-26 16:09 ` [PATCH v2 07/27] thunderbolt: Allow passing NULL to tb_ctl_free() Mika Westerberg
2017-05-27 15:41 ` Andy Shevchenko
2017-05-28 8:13 ` Mika Westerberg
2017-05-29 12:14 ` Andy Shevchenko
2017-05-26 16:09 ` [PATCH v2 08/27] thunderbolt: Introduce thunderbolt bus and connection manager Mika Westerberg
2017-05-26 16:09 ` [PATCH v2 09/27] thunderbolt: Convert switch to a device Mika Westerberg
2017-05-27 15:45 ` Andy Shevchenko
2017-05-28 8:40 ` Mika Westerberg
2017-05-26 16:09 ` [PATCH v2 10/27] thunderbolt: Fail switch adding operation if reading DROM fails Mika Westerberg
2017-05-26 16:09 ` [PATCH v2 11/27] thunderbolt: Do not fail if DROM data CRC32 is invalid Mika Westerberg
2017-05-26 16:09 ` [PATCH v2 12/27] thunderbolt: Refactor and fix parsing of port drom entries Mika Westerberg
2017-05-27 15:46 ` Andy Shevchenko
2017-05-26 16:09 ` [PATCH v2 13/27] thunderbolt: Read vendor and device name from DROM Mika Westerberg
2017-05-27 15:57 ` Andy Shevchenko
2017-05-27 15:58 ` Andy Shevchenko
2017-05-28 8:45 ` Mika Westerberg
2017-05-26 16:09 ` [PATCH v2 14/27] thunderbolt: Move control channel messages to tb_msgs.h Mika Westerberg
2017-05-26 16:09 ` Mika Westerberg [this message]
2017-05-26 16:09 ` [PATCH v2 16/27] thunderbolt: Expose make_header() to other files Mika Westerberg
2017-05-26 16:09 ` [PATCH v2 17/27] thunderbolt: Let the connection manager handle all notifications Mika Westerberg
2017-05-26 16:09 ` [PATCH v2 18/27] thunderbolt: Rework control channel to be more reliable Mika Westerberg
2017-05-26 16:09 ` [PATCH v2 19/27] thunderbolt: Add new Thunderbolt PCI IDs Mika Westerberg
2017-05-26 16:09 ` [PATCH v2 20/27] thunderbolt: Add support for NHI mailbox Mika Westerberg
2017-05-26 16:09 ` [PATCH v2 21/27] thunderbolt: Store Thunderbolt generation in the switch structure Mika Westerberg
2017-05-27 16:03 ` Andy Shevchenko
2017-05-26 16:09 ` [PATCH v2 22/27] thunderbolt: Add support for DMA configuration based mailbox Mika Westerberg
2017-05-27 16:08 ` Andy Shevchenko
2017-05-28 9:10 ` Mika Westerberg
2017-05-26 16:09 ` [PATCH v2 23/27] thunderbolt: Do not touch the hardware if the NHI is gone on resume Mika Westerberg
2017-05-26 16:09 ` [PATCH v2 24/27] thunderbolt: Add support for Internal Connection Manager (ICM) Mika Westerberg
2017-05-27 20:45 ` Andy Shevchenko
2017-05-28 9:13 ` Mika Westerberg
2017-05-28 10:13 ` Andy Shevchenko
2017-05-26 16:09 ` [PATCH v2 25/27] thunderbolt: Add support for host and device NVM firmware upgrade Mika Westerberg
2017-05-26 16:09 ` [PATCH v2 26/27] thunderbolt: Add documentation how Thunderbolt bus can be used Mika Westerberg
2017-05-26 16:09 ` [PATCH v2 27/27] MAINTAINERS: Add maintainers for Thunderbolt driver Mika Westerberg
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=20170526160936.54265-16-mika.westerberg@linux.intel.com \
--to=mika.westerberg@linux.intel.com \
--cc=Jared.Dominguez@dell.com \
--cc=Mario.Limonciello@dell.com \
--cc=amir.jer.levy@intel.com \
--cc=andreas.noever@gmail.com \
--cc=andriy.shevchenko@linux.intel.com \
--cc=gregkh@linuxfoundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lukas@wunner.de \
--cc=luto@kernel.org \
--cc=michael.jamet@intel.com \
--cc=yehezkel.bernat@intel.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
Powered by JetHome