From: Mika Westerberg <mika.westerberg@linux.intel.com>
To: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
"David S . Miller" <davem@davemloft.net>
Cc: Andreas Noever <andreas.noever@gmail.com>,
Michael Jamet <michael.jamet@intel.com>,
Yehezkel Bernat <yehezkel.bernat@intel.com>,
Amir Levy <amir.jer.levy@intel.com>,
Mario.Limonciello@dell.com, Lukas Wunner <lukas@wunner.de>,
Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
Mika Westerberg <mika.westerberg@linux.intel.com>,
linux-kernel@vger.kernel.org, netdev@vger.kernel.org
Subject: [PATCH 14/16] thunderbolt: Add function to retrieve DMA device for the ring
Date: Mon, 18 Sep 2017 18:30:47 +0300 [thread overview]
Message-ID: <20170918153049.44185-15-mika.westerberg@linux.intel.com> (raw)
In-Reply-To: <20170918153049.44185-1-mika.westerberg@linux.intel.com>
This is needed when Thunderbolt service drivers need to DMA map memory
before it is passed down to the ring.
Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Reviewed-by: Michael Jamet <michael.jamet@intel.com>
Reviewed-by: Yehezkel Bernat <yehezkel.bernat@intel.com>
---
include/linux/thunderbolt.h | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/include/linux/thunderbolt.h b/include/linux/thunderbolt.h
index 9a63210d5084..d479a9e508cd 100644
--- a/include/linux/thunderbolt.h
+++ b/include/linux/thunderbolt.h
@@ -19,6 +19,7 @@
#include <linux/list.h>
#include <linux/mutex.h>
#include <linux/mod_devicetable.h>
+#include <linux/pci.h>
#include <linux/uuid.h>
#include <linux/workqueue.h>
@@ -582,4 +583,16 @@ static inline int tb_ring_tx(struct tb_ring *ring, struct ring_frame *frame)
struct ring_frame *tb_ring_poll(struct tb_ring *ring);
void tb_ring_poll_complete(struct tb_ring *ring);
+/**
+ * tb_ring_dma_device() - Return device used for DMA mapping
+ * @ring: Ring whose DMA device is retrieved
+ *
+ * Use this function when you are mapping DMA for buffers that are
+ * passed to the ring for sending/receiving.
+ */
+static inline struct device *tb_ring_dma_device(struct tb_ring *ring)
+{
+ return &ring->nhi->pdev->dev;
+}
+
#endif /* THUNDERBOLT_H_ */
--
2.13.5
next prev parent reply other threads:[~2017-09-18 15:31 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-09-18 15:30 [PATCH 00/16] Thunderbolt networking Mika Westerberg
2017-09-18 15:30 ` [PATCH 01/16] byteorder: Move {cpu_to_be32,be32_to_cpu}_array() from Thunderbolt to core Mika Westerberg
2017-09-18 15:30 ` [PATCH 02/16] thunderbolt: Add support for XDomain properties Mika Westerberg
2017-09-18 15:30 ` [PATCH 03/16] thunderbolt: Move enum tb_cfg_pkg_type to thunderbolt.h Mika Westerberg
2017-09-18 15:30 ` [PATCH 04/16] thunderbolt: Move thunderbolt domain structure " Mika Westerberg
2017-09-18 15:30 ` [PATCH 05/16] thunderbolt: Move tb_switch_phy_port_from_link() " Mika Westerberg
2017-09-18 15:30 ` [PATCH 06/16] thunderbolt: Add support for XDomain discovery protocol Mika Westerberg
2017-09-18 16:12 ` Dan Williams
2017-09-18 16:15 ` Dan Williams
2017-09-19 7:40 ` Mika Westerberg
2017-09-18 15:30 ` [PATCH 07/16] thunderbolt: Configure interrupt throttling for all interrupts Mika Westerberg
2017-09-18 15:30 ` [PATCH 08/16] thunderbolt: Add support for frame mode Mika Westerberg
2017-09-18 15:30 ` [PATCH 09/16] thunderbolt: Export ring handling functions to modules Mika Westerberg
2017-09-18 15:30 ` [PATCH 10/16] thunderbolt: Move ring descriptor flags to thunderbolt.h Mika Westerberg
2017-09-18 15:30 ` [PATCH 11/16] thunderbolt: Use spinlock in ring serialization Mika Westerberg
2017-09-18 15:30 ` [PATCH 12/16] thunderbolt: Use spinlock in NHI serialization Mika Westerberg
2017-09-18 15:30 ` [PATCH 13/16] thunderbolt: Add polling mode for rings Mika Westerberg
2017-09-18 15:30 ` Mika Westerberg [this message]
2017-09-18 15:30 ` [PATCH 15/16] thunderbolt: Allocate ring HopID automatically if requested Mika Westerberg
2017-09-18 15:30 ` [PATCH 16/16] thunderbolt: Add support for networking over Thunderbolt cable Mika Westerberg
2017-09-18 23:21 ` Andrew Lunn
2017-09-19 7:12 ` 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=20170918153049.44185-15-mika.westerberg@linux.intel.com \
--to=mika.westerberg@linux.intel.com \
--cc=Mario.Limonciello@dell.com \
--cc=amir.jer.levy@intel.com \
--cc=andreas.noever@gmail.com \
--cc=andriy.shevchenko@linux.intel.com \
--cc=davem@davemloft.net \
--cc=gregkh@linuxfoundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lukas@wunner.de \
--cc=michael.jamet@intel.com \
--cc=netdev@vger.kernel.org \
--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